`
小码哥BASE64
  • 浏览: 123576 次
社区版块
存档分类
最新评论

zooKeeper在weblogic下的bug

阅读更多

因为项目中需要使用分布式配置管理,所以使用了ZooKeeper,ZooKeeper的客户端使用的是zookeeper-3.4.5.jar原来使用的2.3.3版本,后来升级到了2.4.5升级版本,在本地调试总是正确的,但是放置到weblogic下就不行了,发现在weblogic10下竟然无法使用一直报错:

 01/08 10:41:21 [WARN] ClientCnxn: Session 0x0 for server null, unexpected error, closing socket connection and attempting reconnect
java.lang.IllegalArgumentException: No Configuration was registered that can handle the configuration named Client
 at com.bea.common.security.jdkutils.JAASConfiguration.getAppConfigurationEntry(JAASConfiguration.java:130)
 at org.apache.zookeeper.client.ZooKeeperSaslClient.<init>(ZooKeeperSaslClient.java:97)
 at org.apache.zookeeper.ClientCnxn$SendThread.startConnect(ClientCnxn.java:943)
 at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:993)

 

觉得很奇怪,最后找到了源代码,发现原来是因为ZooKeeper客户端 默认使用JAAS方式认证,即使你不配置认证,客户端也会去首先尝试使用认证方式连接,抛错拦截后再使用非认证的方式去连接。

但是ZooKeeper 认证这段代码抛出的异常类型是SecurityException,而weblogic下的JAAS的认证抛出的却是RuntimeException ,所以捕获不到,所以会一直报错,无法连接。

 

解决办法:1 修改ZooKeeperSaslClient 类的代码,将抛出的异常类型改为RuntimeException 。

                  2 升级到2.4.6 或者回退到较早的版本。

 关于该问题已经有人上报了问题,相信在新版本,apache应该会尽快解决。

https://issues.apache.org/jira/i#browse/ZOOKEEPER-1696

分享到:
评论

相关推荐

    zookeeper-3.4.6中zkfuse的bug修复

    1. **文件读写延迟**:在某些情况下,用户可能会遇到文件读取或写入的延迟,这通常是由于ZkFuse在处理数据变更通知时的同步机制问题。当Zookeeper节点发生变化时,ZkFuse可能无法及时更新文件系统的状态,导致数据不...

    zookeeper-3.4.6_zookeeper_

    在Zookeeper-3.4.6版本中,可能包含了一些性能优化、bug修复和新的特性的引入。例如,可能会改进了客户端API的易用性,增强了系统的稳定性和容错性,或者增加了对更大规模集群的支持。不过,具体改动需要查看官方...

    Linux下Zookeeper集群的安装

    通常,可以在Zookeeper的bin目录下找到启动脚本,例如`zkServer.sh start`。 6. **验证集群状态** 使用`zkServer.sh status`命令检查Zookeeper服务的状态,确认集群正常运行。 通过以上步骤,可以在Linux环境下...

    linux下的zookeeper压缩包和Windows下的zookeeper查看工具

    这个压缩包包含了在Linux环境中运行的Zookeeper以及Windows平台下用于查看和管理Zookeeper状态的工具。 在Linux环境下安装Zookeeper首先需要下载对应的压缩包。这个压缩包可能包含`zookeeper-x.x.x-bin.tar.gz`文件...

    zookeeper linux版本

    在本场景中,我们关注的是ZooKeeper在Linux环境下的使用。 标题“Zookeeper Linux版本”指的是适用于Linux操作系统的ZooKeeper软件包。ZooKeeper通常在分布式系统中用于命名服务、配置管理、集群同步、分布式锁等...

    zookeeper在centosx下的详细安装

    zookeeper在centosx下的详细安装,一共部署三台机器,每台机器启动一个zookeeper进程

    zookeeper linux集群搭建流程

    在选举模式下,ZooKeeper 节点之间不能相互通信,需要选举出一个 leader 节点来恢复集群。 ZooKeeper 应用场景 ZooKeeper 广泛应用于分布式系统中,例如分布式配置管理、分布式锁、分布式队列等。ZooKeeper 的高...

    Zookeeper_安装和配置

    在实际生产环境中,Zookeeper 通常运行在真正的集群模式下,这意味着每个服务器节点都参与集群工作,共同维护整个系统的状态。集群模式提供了更高的可用性和容错性,当某台服务器出现故障时,其他服务器能够接管其...

    zookeeper增加权限登录验证

    2.然后,在 ZooKeeper 的 bin 目录下执行以下命令,创建一个名为 `extends` 的节点:`./zkCli.sh -server &lt;ip&gt; create /zookeeper/extends 1` 3.接着,创建一个名为 `skip_limited_ip` 的节点:`./zkCli.sh -server ...

    zookeeper-3.4.6.rar

    ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步合理操作。最终将简单易用的接口和性能高效、功能稳定的系统提供给用户。...

    zookeeper限制ip版

    在默认情况下,Zookeeper允许任何IP地址进行连接。为了提高系统的安全性,我们需要实现对客户端IP的过滤,允许指定的IP(白名单)或者禁止特定IP(黑名单)访问。这可以通过在Zookeeper服务器端增加配置,对连接...

    zookeeper-3.4.12版本

    Zookeeper是Apache软件基金会的一个开源...无论是数据一致性、服务发现还是分布式锁,都能在Zookeeper的帮助下轻松实现。对于Java开发者而言,理解并掌握Zookeeper的使用和原理,对于构建可靠的分布式系统至关重要。

    zookeeper可视化工具

    在运维和开发过程中,为了更方便地管理和监控Zookeeper,出现了许多可视化工具。这些工具通过图形用户界面(GUI)提供对Zookeeper状态的直观展示,帮助用户查看节点信息、操作数据、监控集群状态以及进行故障排查。 ...

    centos8安装zookeeper3.8.0详细步骤

    在 `/tmp/zookeeper/data` 目录下创建 `myid` 文件,并编辑该文件,输入对应的编号。 7.3. 修改 B 服务器 7.3.1. 修改 `zoo.cfg` 文件 7.3.2. 修改 `myid` 文件 7.4. 修改 C 服务器 7.4.1. 修改 `zoo.cfg` 文件 ...

    dubbo2.6.0 + Zookeeper3.4.9 + Zookeeper3.8.0 + Zookeeper3.7.1

    Dubbo是一个高性能、轻量级的Java服务治理框架,而Zookeeper则是一个分布式的、开放源码的分布式应用程序协调服务,它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步合理操作。...

    Zookeeper在windows搭建伪集群

    Zookeeper在Windows搭建伪集群 Zookeeper是一种常用的分布式协调服务,能够提供配置管理、命名服务、分布式锁和 leader 选举等功能。下面是关于在Windows上搭建Zookeeper伪集群的知识点总结: Zookeeper基本概念 ...

    ZooKeeper 原理及其在 Hadoop 和 HBase 中的应用

    选举算法基于ZAB协议,确保集群能够在短时间内选举出Leader,即使在网络分区或节点故障的情况下也能保持一致性。 2. **事务日志和快照**:为了保证数据的一致性,ZooKeeper采用了事务日志和快照两种存储机制。事务...

    基于Zookeeper集群环境下的数据发布订阅代码

    在IT行业中,Zookeeper是一个广泛使用的分布式协调服务,由Apache软件基金会开发。它提供了一种高效、可靠的机制来管理分布式应用程序的数据,包括配置管理、命名服务、组服务、领导者选举等。在这个基于Zookeeper...

    zookeeper感知服务器上下线demo

    在这个“zookeeper感知服务器上下线demo”中,我们将探讨如何利用ZooKeeper实现对服务器动态上下线的监控。 首先,让我们了解ZooKeeper的基本概念。ZooKeeper是一个基于分布式数据一致性模型的高可用服务,它通过...

Global site tag (gtag.js) - Google Analytics