重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
今天用HBase客户端链接HBase时出错,错误有两个如下:
专注于为中小企业提供成都网站制作、成都网站建设、外贸营销网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业吴桥免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了1000多家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
1、org.apache.zookeeper.client.ZooKeeperSaslClient: SecurityException: java.lang.SecurityException
2、
Call to sun/192.168.0.20:60020 failed on local exception
第一个问题一开始以为是自己ZooKeeper配置有问题呢,然后从新配置了一下还是出问题,忽然想到之前用DataNucleus插件链接HBase时ZooKeeper就没有出错,这应该可以排除是配置问题,随后就找资料,有人说是jar包的问题,然后我检查了下程序中的jar包和HBase中的jar包果然不一样,我HBase中lib文件中的jar包是zookeeper-3.3.2的,而程序中的jar包是zookeeper-3.4.3,把程序中的jar包替换成HBase中lib中的jar包之后第一个错误就消失了。
经过第一个问题的解决方法之后第二个问题我猜想估计也是jar问题,就检查jar包,检查的主要对象是HBase相关的jar包。检查完发现HBase的jar包是hbase-0.92.1.jar,而我的HBase版本稍微低一点,是hbase-0.90.3.jar ,还是上面的步骤把jar包替换之后,第二个错误也解决了。
看来jar的兼容问题确实值得注意,之前用java写程序就有这种情况,在hadoop下这种问题肯定更多,以后要多加注意。