文章目錄
- 下載解壓
- 創建data和logs
- 配置文件
- 1)創建目錄并且編輯 zoo.cfg
- 2)接下來將 node01 的 ZooKeeper 所有文件拷貝至 node02 和 node03。推薦從 node02 和 node03 拷貝
- 4)最后 vim /etc/profile 配置環境變量,環境搭建結束。配完環境變量后 source /etc/profile 重新加載環境變量。
- 啟動
- 啟動腳本
下載解壓
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.6.3/apache-zookeeper-3.6.3-bin.tar.gz
tar -zxvf zookeeper-3.6.3-bin.tar.gz -C XXXX
創建data和logs
cd XXXX
mkdir data logs
配置文件
1)創建目錄并且編輯 zoo.cfg
[root@node01 apache-zookeeper-3.6.3-bin]# cp conf/zoo_sample.cfg conf/zoo.cfg
[root@node01 apache-zookeeper-3.6.3-bin]# vim conf/zoo.cfg# 修改以下內容 (旁邊的數字是行號)
dataDir=XXXX/data
dataLogDir=XXXX/logs
clientPort=2181
server.1=node01:2888:3888
server.2=node02:2888:3888
server.3=node03:2888:3888
2)接下來將 node01 的 ZooKeeper 所有文件拷貝至 node02 和 node03。推薦從 node02 和 node03 拷貝
[root@node01 ~]# scp -r /opt/yjx/apache-zookeeper-3.6.3-bin/ node02:$PWD
[root@node01 ~]# scp -r /opt/yjx/apache-zookeeper-3.6.3-bin/ node03:$PWD
3)在三臺節點 /var/yjx/zookeeper/data 目錄下分別創建 myid 文件,內容分別為 1,2,3。
node01`在這里插入代碼片`
[root@node01 ~]# echo 1 > /var/yjx/zookeeper/data/myidnode02
[root@node02 ~]# mkdir -p /var/yjx/zookeeper/data
[root@node02 ~]# echo 2 > /var/yjx/zookeeper/data/myidnode03
[root@node03 ~]# mkdir -p /var/yjx/zookeeper/data
[root@node03 ~]# echo 3 > /var/yjx/zookeeper/data/myid#!注意 確定每一個myid只有一行并且沒有多余空格
4)最后 vim /etc/profile 配置環境變量,環境搭建結束。配完環境變量后 source /etc/profile 重新加載環境變量。
[root@node01 ~]# vim /etc/profileexport ZOOKEEPER_HOME=/opt/yjx/apache-zookeeper-3.6.3-bin
export PATH=$ZOOKEEPER_HOME/bin:$PATH[root@node01 ~]# source /etc/profile
啟動
[root@node01 ~]# zkServer.sh start
[root@node02 ~]# zkServer.sh start
[root@node03 ~]# zkServer.sh start
啟動腳本
# 在 /usr/local/bin 目錄下創建對應服務的腳本:
[root@node01 ~]# cd ~
[root@node01 ~]# vim zookeeper..............................................................
#!/bin/bashuser=$(whoami)
case $1 in"start")for i in node01 node02 node03doecho -e "\e[1;34m==================== $i ZooKeeper 啟動 ====================\e[0m"sleep 3ssh $user@$i "/opt/yjx/apache-zookeeper-3.6.3-bin/bin/zkServer.sh start"done;;"stop")for i in node01 node02 node03doecho -e "\e[1;34m==================== $i ZooKeeper 停止 ====================\e[0m"ssh $user@$i "/opt/yjx/apache-zookeeper-3.6.3-bin/bin/zkServer.sh stop"done;;"status")for i in node01 node01 node03doecho -e "\e[1;34m==================== $i ZooKeeper 狀態 ====================\e[0m"ssh $user@$i "/opt/yjx/apache-zookeeper-3.6.3-bin/bin/zkServer.sh status"done;;"restart")for i in node01 node02 node03doecho -e "\e[1;34m==================== $i ZooKeeper 重啟 ====================\e[0m"ssh $user@$i "/opt/yjx/apache-zookeeper-3.6.3-bin/bin/zkServer.sh restart"done;;
esac
..............................................................[root@node01 ~]# chmod 750 zookeeper