前提條件
1. 1臺Linux環境機器
2. Linux環境下安裝好jdk
目標
用1臺Linux環境機器,安裝zookeeper偽分布式環境,
操作步驟
下載:
點擊如下鏈接下載zookeeper安裝包,這里使用的版本為3.4.13
Index of /dist/zookeeper
解壓:
tar -zxvf zookeeper-3.4.13.tar.gz
重命名:
mv zookeeper-3.4.13 zookeeper-3.4.13-pseudo
進入zookeeper解壓目錄下的配置目錄conf:
hadoop@node1:~/soft$ cd zookeeper-3.4.13-pseudo/conf/
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo/conf$ ls
configuration.xsl log4j.properties zoo_sample.cfg
復制模板檔案,得到zoo1.cfg:
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo/conf$ cp zoo_sample.cfg zoo1.cfg
編輯zoo1.cfg,最終內容如下:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/hadoop/soft/zookeeper-3.4.13-pseudo/data_1
dataLogDir=/home/hadoop/soft/zookeeper-3.4.13-pseudo/logs_1
clientPort=2181
server.1=node1:2888:3888
server.2=node1:2889:3889
server.3=node1:2890:3890
注意:
1. dataDir為zookeeper的資料目錄,建議放在zookeeper解壓后的目錄下,目錄注意按實際修改;
2.dataLogDir為zookeeper的資料目錄,建議放在zookeeper解壓后的目錄下,目錄注意按實際修改,
3.server.x表示第幾臺zookeeper機器,x與后面的myid里的數字一致
4.node1表示Linux機器的主機名,也可以寫Linux機器的ip地址,
5.偽分布只有1臺機器,通過配置不同埠來區別不同的zookeeper服務
同樣的,在與zoo1.cfg相同目錄下,創建zoo2.cfg和zoo3.cfg,
創建zoo2.cfg,內容如下:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/hadoop/soft/zookeeper-3.4.13-pseudo/data_2
dataLogDir=/home/hadoop/soft/zookeeper-3.4.13-pseudo/logs_2
clientPort=2182
server.1=node1:2888:3888
server.2=node1:2889:3889
server.3=node1:2890:3890
創建zoo3.cfg,內容如下:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/hadoop/soft/zookeeper-3.4.13-pseudo/data_3
dataLogDir=/home/hadoop/soft/zookeeper-3.4.13-pseudo/logs_3
clientPort=2183
server.1=node1:2888:3888
server.2=node1:2889:3889
server.3=node1:2890:3890
創建3個myid檔案:
進入zookeeper解壓目錄后,因為dataDir不存在,需要先執行創建資料檔案夾,并在每個資料目錄下創建一個myid檔案,寫入對應的id,命令如下:
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ mkdir data_1
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ mkdir data_2
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ mkdir data_3
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ echo 1 > data_1/myid
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ echo 2 > data_2/myid
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ echo 3 > data_3/myid
啟動zookeeper:
分別按3個配置啟動zookeeper
$ bin/zkServer.sh start conf/zoo1.cfg
$ bin/zkServer.sh start conf/zoo2.cfg
$ bin/zkServer.sh start conf/zoo3.cfg
具體執行程序如下:
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ bin/zkServer.sh start conf/zoo1.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo1.cfg
Starting zookeeper ... STARTED
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ bin/zkServer.sh start conf/zoo2.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo2.cfg
Starting zookeeper ... STARTED
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ bin/zkServer.sh start conf/zoo3.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo3.cfg
Starting zookeeper ... STARTED
查看zookeeper狀態:
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ bin/zkServer.sh status conf/zoo1.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo1.cfg
Mode: follower
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ bin/zkServer.sh status conf/zoo2.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo2.cfg
Mode: leader
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ bin/zkServer.sh status conf/zoo3.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo3.cfg
Mode: follower
可看到zoo2.cfg配置的zk為leader,另外兩個配置的zk為follower,
至此,zookeeper偽分布式配置成功,
完成!enjoy it!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/439234.html
標籤:其他
