1. zookeeper集群的安装
注意事项:三台机器一定要保证时钟同步
1.1 下载zookeeper的压缩包
-
我使用的zk版本为apache-zookeeper-3.6.2
-
下载完成之后,上传到我们的node01的/kkb/soft路径下准备进行安装
1.2 解压
- node01执行以下命令解压zookeeper的压缩包到node01服务器的/kkb/install路径下去,然后准备进行安装
cd /kkb/soft
tar -zxvf apache-zookeeper-3.6.2-bin.tar.gz -C /kkb/install/
1.3 修改配置文件
- 第一台机器修改配置文件
cd /kkb/install/apache-zookeeper-3.6.2-bin/conf
mkdir -p /kkb/install/apache-zookeeper-3.6.2-bin/zkdatas
cp zoo_sample.cfg zoo.cfg
- 用
vim zoo.cfg
修改文件,修改如下属性值
dataDir=/kkb/install/apache-zookeeper-3.6.2-bin/zkdatas
autopurge.snapRetainCount=3
autopurge.purgeInterval=1
#文件末尾增加如下三行
server.1=node01:2888:3888
server.2=node02:2888:3888
server.3=node03:2888:3888
1.4 添加myid配置
- 在第一台机器的/kkb/install/apache-zookeeper-3.6.2-bin/zkdatas/这个路径下创建一个文件,文件名为myid ,文件内容为1
echo 1 > /kkb/install/apache-zookeeper-3.6.2-bin/zkdatas/myid
1.5 安装包分发并修改myid的值
- 第一台机器上面执行以下两个命令
scp -r /kkb/install/apache-zookeeper-3.6.2-bin/ node02:/kkb/install/
scp -r /kkb/install/apache-zookeeper-3.6.2-bin/ node03:/kkb/install/
- 第二台机器上修改myid的值为2;直接在第二台机器任意路径执行以下命令
echo 2 > /kkb/install/apache-zookeeper-3.6.2-bin/zkdatas/myid
- 第三台机器上修改myid的值为3;直接在第三台机器任意路径执行以下命令
echo 3 > /kkb/install/apache-zookeeper-3.6.2-bin/zkdatas/myid
1.6 配置环境变量
- 三台节点都配置/etc/profile文件
sudo vim /etc/profile
export ZK_HOME=/kkb/install/apache-zookeeper-3.6.2-bin
export PATH=$PATH:$ZK_HOME/bin
- 三台节点,让新添环境变量生效(hadoop用户下执行)
source /etc/profile
1.7 三台机器启动zookeeper服务
- 三台机器启动zookeeper服务;这个命令三台机器都要执行
zkServer.sh start
- 查看启动状态
zkServer.sh status
一个zkServer的状态要么是follower,要么是leader
三个节点中,一个节点为leader,另外两个为follower,类似下图
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IdDKJL34-1630218021230)(assets/Image201910221141.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2ZPBW8a1-1630218021231)(assets/Image201910221141 (2)].png)
- jps每个服务器上有一个QuorumPeerMain进程
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SOzbn3Uw-1630218021232)(assets/Image201911010943.png)]
1.8 如何关闭zookeeper集群
- 三个节点运行
zkServer.sh stop
提醒:如果要关闭电脑时,清一定要按照以下顺序操作,否则集群可能会出问题
-
关闭zookeeper集群
-
关闭虚拟机
-
关闭电脑