Zookeeper入门-Linux环境下异常ConnectionLossException解决
来源:互联网 发布:搜索番号的软件 编辑:程序博客网 时间:2024/06/05 03:36
实际项目开发中,用的是Linux环境。
中午突然断电,死活连不上Zookeeper,最终发现是需要关闭防火墙。
看日志,报错如下:
Exception in thread "main" org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /test
at org.apache.zookeeper.KeeperException.create(KeeperException.java:99)
at org.apache.zookeeper.KeeperException.create(KeeperException.java:51)
at org.apache.zookeeper.ZooKeeper.exists(ZooKeeper.java:1501)
at org.apache.zookeeper.ZooKeeper.exists(ZooKeeper.java:1529)
at com.jiq.test.ZooKeeperTest.main(ZooKeeperTest.java:12)
经过实践,最终发现是“防火墙”的原因。
主要参考了网上的一篇文章。
不正确的解决办法:
“上网一查,全是说什么到Zookeeper服务的连接未完成,说是加下面这段代码就好了:
CountDownLatch connectedLatch = new CountDownLatch(1);
if (States.CONNECTING == zk.getState()) {
try {
connectedLatch.await();
} catch (InterruptedException e) {
throw new IllegalStateException(e);
}
}
我觉得这有点扯淡,首先官网没有任何提到要加这样的代码来等待连接准备好的话语,其次为什么本机可以,远端就不行,难道天生本机就一定能够快速建立好连接,远端就要等一等么?
于是我决定自己思考,想了一天才觉得可能是防火墙问题,于是把windwos server 2008防火墙关闭,OK了,把CentOS防火墙关闭,也OK了,哎!”
看了这个哥们的描述,我深以为然啊。
我也尝试过,加一些乱七八糟的代码,发现都不能解决问题。
最终,尝试了这个哥们的“关闭防火墙”的解决办法。
但是,这篇文章中,永久关闭防火墙的那种方式,是不对的,只要使用了,Zookeeper就连接不上。
“CentOS关闭防火墙命令:
CentOS Linux开启和关闭防火墙命令有两种,一种是临时的,重启即复原;另外一种是永久xìng的,重启不会复原。
1) 临时生效,重启后复原
开启: service iptables start
关闭: service iptables stop
2) 永久xìng生效,重启后不会复原
开启: chkconfig iptables on
关闭: chkconfig iptables off
我执行的是永久修改的命令,执行完了也可以不重启电脑,重启防火墙服务即可: service iptables restart ”
实际中,我用的是临时的关闭防火墙的办法,这样,如果服务器再次断电重启,还需要手动关闭。
这个哥们貌似是“永久关闭防火墙”,反正我也试了,永久关闭,总是不行,可能是我的问题。
这个哥们说,不用重启服务器,反正我没有重启,不知道重启了效果会如何。
一点感想
自己遇到的很多问题,网上基本都有答案了。
优先用别人的解决办法,是非常合适的,比较迅速,很快提升自己解决问题的能力。
技术框架之类的,主要还是别人生成,在水平不够之前,“拿来主义”是不错的。
随便一个工具框架,自己去搞,至少得个把月上年吧~
整理自己的技术体系,管理自己遇到的问题,很有必要。
一句话:建立健全自己的技术体系和社会生存能力体系。(怎么感觉像是官方文件呢~)
最近,抽空,分享下自己的浏览器收藏夹,和一些知识管理的心得体会~
参考资料
Zookeeper异常ConnectionLossException解决
http://www.sjsjw.com/kf_cloud/article/022572ABA018042.asp
1 0
- Zookeeper入门-Linux环境下异常ConnectionLossException解决
- Zookeeper异常ConnectionLossException解决
- Zookeeper异常ConnectionLossException解决
- zookeeper异常ConnectionLossException的解决办法
- Linux环境下安装Zookeeper
- Linux下的ZooKeeper安装(单机环境和集群以及启动时出现的异常)
- Linux下kafka和zookeeper环境搭配
- Zookeeper基础知识和Linux环境下搭建
- linux环境下zookeeper集群搭建
- Linux环境下安装Zookeeper (单机模式)
- zookeeper的配置(Windows环境和Linux环境下)常见问题(zookeeper_server.pid: No such file or directory)解决
- java.io.IOException: org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode =
- org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /
- Linux环境zookeeper安装
- 解决linux下root运行Elasticsearch异常
- 解决linux下root运行Elasticsearch异常
- linux CentOS 7下zookeeper集群环境搭建
- Mac下ZooKeeper环境部署,Linux方法相同
- 集合之hashCode()方法
- 因果关系的倒置(1)
- CF 600E(Lomsat gelral-dfs)
- activity 跳转 动画
- objc 中的 block
- Zookeeper入门-Linux环境下异常ConnectionLossException解决
- The processing instruction target matching "[xX][mM][lL]" is not allowed
- spring4 入门教程
- MD5摘要算法
- Hibernate:主键生成策略
- Intellij idea 导出可运行jar
- 获取手机和内存卡可用空间
- MyEclipse10 手动安装SVN插件和Jad反编译
- 1064. Complete Binary Search Tree