Zookeeper集群搭建(配置详解)
生活随笔
收集整理的這篇文章主要介紹了
Zookeeper集群搭建(配置详解)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
軟件環境準備:
- Linux服務器一臺、三臺、五臺(2*n+1臺);
- Java jdk 1.7;
- zookeeper 3.4.6版;
軟件安裝:
查看到錯誤記錄:
2016-04-21 06:56:56,242 [myid:1] – WARN ?[QuorumPeer[myid=1]/0:0:0:0:0:0:0:0:2181:Follower@89] – Exception when following the leader
java.net.NoRouteToHostException: No route to host
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:579)
at org.apache.zookeeper.server.quorum.Learner.connectToLeader(Learner.java:225)
at org.apache.zookeeper.server.quorum.Follower.followLeader(Follower.java:71)
at org.apache.zookeeper.server.quorum.QuorumPeer.run(QuorumPeer.java:786)
配置說明:
作用: leader:從客戶端接收讀寫請求,響應讀寫請求,向slaver發送數據 slaver:從leader同步數據,當leader失敗時,從新投票選舉新的leader配置詳解: myid:位于快照目錄,是用來標識本臺機器在集群中的唯一標識 zoo.cfg:tickTime:是initLimit 和 syncLimit的時間單位(毫秒)initLimit:集群機器之間的同步時間,比如啟動m1,s1在這個時間段內必須都起來syncLimit:leader與follower之間的通信時間(心跳),超時則說明follower失敗#快照日志的存儲路徑 dataDir=/usr/local/program/zk/zkdata #zk事物日志存儲目錄 (如果不配置zkdataLog那么快照日志和事務日志都將寫到dataDir中,嚴重影響性能) dataLogDir=/usr/local/program/zk/zkdataLog # the port at which the clients will connect #本臺機器的端口,默認為2181 clientPort=12181 log4j.properties:日志文件,zookeeper.out位置bin下面,可以更改注意:需要定期清理事務日志文件,否則會造成性能下降(crontab) crontab -l查看當前用戶定時任務 crontab -e編輯定時任務 (例:0 0 * * 0 sh /usr/local/program/zk/cleanup.sh) 另外2臺機器執行同樣的操作#server.1標識本臺機器,通過myid文件指定id=1;ip:機器之間通信端口(默認為2888):leader選舉端口(默認為3888) server.1=192.168.0.102:12888:13888 創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎
總結
以上是生活随笔為你收集整理的Zookeeper集群搭建(配置详解)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 什么是租赁服务器(科学检测行业分析仪器租
- 下一篇: Hadoop入门(Hadoop2.7.2