1. 克隆三台空虛擬機(含有jdk和lrzsz),修改網絡ip,並關閉虛擬機的防火牆 臨時關閉:service iptables stop 永久關閉:chkconfig iptables off
2. 安裝和配置jdk(克隆的母機中安裝配置過jdk,此步可省)
3. 安裝和配置zookeeper cd /usr/soft 使用rz命令將zookeeper-3.4.7.tar.gz上傳到虛擬機的/usr/soft
[root@localhost conf]# tar –zxvf /usr/soft/zookeeper-3.4.7.tar.gz
[root@localhost conf]# cp zoo_sample.cfg zoo.cfg
4.配置zoo.cfg
配置說明:
tickTime=2000 心跳間隔周期 毫秒。
initLimit=10初始連接超時閾值=10*tickTime。指的是follower初始連接leader的超時時間。 如果網絡環境不好,適當調大。
syncLimit=5連接超時閾值=syncLimit*tickTime。指的是follower和leader做數據交互的超 時時間。如果網絡環境不好,適當調大。
dataDir=/usr/soft/zookeeper-3.4.7/tmp dataDir數據目錄指的是zookeeper znode樹的 持久化目錄,
clientPort=2181:配置的是客戶端連接zk服務器的端口號
server.1=192.168.80.94:2888:3888
server.2=192.168.80.95:2888:3888
server.3=192.168.80.96:2888:3888
server后的數字是選舉id,在選舉過程中會用到。注意:數字一定要能比較出大小。
2888 端口原子廣播端口,可以自定義 3888 端口選舉端口,可以自定義 在zk安裝目錄下創建tmp文件,創建myid文件(名字固定),
並編輯當前虛擬機的選舉id Mkdir /usr/soft/zookeeper-3.4.7/tmp tmp#vim myid (內容為1)
遠程拷貝zk的安裝目錄到zk2、zk3上
[root@localhost software]# scp -r zookeeper-3.4.7/ root@192.168.80.95:/home/software
[root@localhost software]# scp -r zookeeper-3.4.7/ root@192.168.80.96:/home/software
分別修改myid,zk2->2,zk3->3 如果拷貝不過去或者拷貝太慢,
可以先打包並壓縮:
[root@localhost software]# tar -zcvf zk.tar.gz zookeeper-3.4.7/
然后在scp 然后在解壓:
[root@localhost home]# tar -zxvf zk.tar.gz
5.啟動zk集群測試 分別啟動zk
[root@localhost bin]# ls
README.txt zkCli.cmd zkEnv.cmd zkServer.cmd zkCleanup.sh zkCli.sh zkEnv.sh zkServer.sh
[root@localhost bin]# ./zkServer.sh start
ZooKeeper JMX enabled by default Using config: /usr/soft/zookeeper-3.4.7/bin/../conf/zoo.cfg Starting zookeeper ... STARTED
[root@localhost bin]# jps
3490 Jps
3464 QuorumPeerMain
[root@localhost bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default Using config: /usr/soft/zookeeper-3.4.7/bin/../conf/zoo.cfg
Mode: follower
如果啟動順序為zk1->zk2->zk3,通常zk2為leader。