安裝zookeeper軟件
1.上傳軟件
使用CRT等客戶端遠程上傳 zookeeper-3.4.6.tar.gz 文件到/export/software目錄下
2.解壓軟件
[root@node1 ~]# cd /export/software/ [root@node1 software]# tar -xzvf zookeeper-3.4.6.tar.gz -C /export/server/ [root@node1 software]# cd /export/server/ [root@node1 server]# ln -s zookeeper-3.4.6/ zookeeper
3.添加環境變量
[root@node1 server]# vim /etc/profile
# 把如下內容復制到profile文件的最后,注意:記得保存并退出wq # 小技巧 : 按G + o快速到文件末尾 export ZOOKEEPER_HOME=/export/server/zookeeper export PATH=$PATH:$ZOOKEEPER_HOME/bin
-
修改完后重啟生效
[root@node1 server]# source /etc/profile
4.創建數據目錄添加myid值為1
[root@node1 server]# mkdir -p /export/server/zookeeper/zkdatas/ [root@node1 server]# echo 1 > /export/server/zookeeper/zkdatas/myid
5.修改配置文件
[root@node1 server]# cd /export/server/zookeeper/conf/ [root@node1 conf]# cp zoo_sample.cfg zoo.cfg [root@node1 conf]# vim zoo.cfg
# 修改數據存放目錄 dataDir=/export/server/zookeeper/zkdatas # 添加集群中服務地址 server.1=node1:2888:3888 server.2=node2:2888:3888 server.3=node3:2888:3888
6.拷貝到軟件到其他機器
-
nod1主機上拷貝到node2和node3中各一份
scp遠程服務器拷貝文件。server cp
語法:
scp -r 本地服務器的文件/文件夾路徑 遠程服務的ip地址/主機名:遠程服務器的存放絕對路徑
[root@node1 conf]# cd /export/server/ [root@node1 server]# scp -r /export/server/zookeeper/ node2:/export/server/ [root@node1 server]# scp -r /export/server/zookeeper/ node3:/export/server/
-
node2上修改myid值并且添加環境變量
[root@node2 server]# ln -s zookeeper-3.4.6/ zookeeper [root@node2 ~]# echo 2 > /export/server/zookeeper/zkdatas/myid # 配置環境變量 [root@node2 ~]# echo 'export ZOOKEEPER_HOME=/export/server/zookeeper' >> /etc/profile [root@node2 ~]# echo 'export PATH=$PATH:$ZOOKEEPER_HOME/bin' >> /etc/profile [root@node2 ~]# source /etc/profile
-
node3上修改myid值并且添加環境變量
[root@node3 server]# ln -s zookeeper-3.4.6/ zookeeper [root@node3 ~]# echo 3 > /export/server/zookeeper/zkdatas/myid # 配置環境變量 [root@node3 ~]# echo 'export ZOOKEEPER_HOME=/export/server/zookeeper' >> /etc/profile [root@node3 ~]# echo 'export PATH=$PATH:$ZOOKEEPER_HOME/bin' >> /etc/profile [root@node3 ~]# source /etc/profile
7.zookeeper服務啟動[重點]
如下命令三臺服務器均可操作: stop:停止 start:開啟 status:狀態
可以使用crt發送交互到所有會話
# 啟動服務 [root@node123 bin]# zkServer.sh start ? # 查看狀態(leader或者follower或者observer) [root@node123 bin]# zkServer.sh status ? # 如果想關閉可以使用stop [root@node123 bin]# zkServer.sh stop
8.命令jps查看進程
jps是jdk提供的一個查看當前java進程的小工具, 全稱是JavaVirtual Machine Process Status Tool
[root@node1 ~]# jps [root@node2 ~]# jps [root@node3 ~]# jps
zookeeper shell基礎命令
-
進入命令行工具: zkCli.sh -server 主機地址
# 方式1:直接連接本地 [root@node1 ~]# zkCli.sh ? # 方式2:連接其他節點 [root@node1 ~]# zkCli.sh -server node2
-
查看zk shell命令: help
[zk: node1(CONNECTED) 0] help
-
創建節點: create [-e] [-s] path data acl 解釋:默認持久節點,-e表示臨時節點,-s表示序列化節點, acl用來進行權限控制
# 創建節點 [zk: node1(CONNECTED) 1] create /a 111111 [zk: node1(CONNECTED) 2] create -e /b 222222 [zk: node1(CONNECTED) 3] create -s /aa 333333 [zk: node1(CONNECTED) 4] create -e -s /bb 444444 # 查看節點 [zk: node1(CONNECTED) 5] ls / [a, b, bb0000000004, aa0000000003, zookeeper] [zk: node1(CONNECTED) 6] quit # 再次登錄后查看節點 [zk: node1(CONNECTED) 0] ls / [a, aa0000000003, zookeeper] # 刪除節點 [zk: node1(CONNECTED) 1] rmr /a [zk: node1(CONNECTED) 2] rmr /aa0000000003 # 歷史命令 [zk: node1(CONNECTED) 3] history