一、规划集群节点
集群节点规划,使用三个节点搭建一个zookeeper集群
bigdata01
bigdata02
bigdata03
注意:这里提前安装好jdk环境,jdk安装见:
Linux03:CentOS7.5安装jdk1.8
二、安装包下载
百度网盘的地址:
链接:https://pan.baidu.com/s/1uIUiqq1hLY0B7xZY33OjFQ?pwd=sf3k
提取码:sf3k
三、进行安装
1、bigdata01配置
首先在bigdata01节点上配置zookeeper,上传安装包到/data/soft目录。
(1)解压
tar -zxvf apache-zookeeper-3.5.8-bin.tar.gz
(2)修改配置
将zoo_sample.cfg重命名为zoo.cfg
然后修改zoo.cfg中的dataDir参数的值,dataDir指向的目录存储的是zookeeper的核心数据,所以这个目录不能使用tmp目录,然后增加server.0、server.1、server.2这三行内容
cd apache-zookeeper-3.5.8-bin/conf/
mv zoo_sample.cfg zoo.cfg
vi zoo.cfg
新增修改如下:
dataDir=/data/soft/apache-zookeeper-3.5.8-bin/data
server.0=bigdata01:2888:3888
server.1=bigdata02:2888:3888
server.2=bigdata03:2888:3888
(3)创建myid文件
创建目录保存myid文件,并且向myid文件中写入内容
myid中的值其实是和zoo.cfg中server后面指定的编号是一一对应的
编号0对应的是bigdata01这台机器,所以在这里指定0
在这里使用echo 和 重定向 实现数据写入。
cd /data/soft/apache-zookeeper-3.5.8-bin
mkdir data
cd data
echo 0 > myid
2、拷贝文件到其他2个节点
把修改好配置的zookeeper拷贝到其它两个节点
scp -rq apache-zookeeper-3.5.8-bin bigdata02:/data/soft/
scp -rq apache-zookeeper-3.5.8-bin bigdata03:/data/soft/
3、修改bigdata02和bigdata03上zookeeper中myid文件的内容
(1)首先修改bigdata02节点上的myid文件
cd /data/soft/apache-zookeeper-3.5.8-bin/data/
echo 1 > myid
(2)修改bigdata03节点上的myid文件
cd /data/soft/apache-zookeeper-3.5.8-bin/data/
echo 2 > myid
4、启动zookeeper集群
分别在bigdata01、bigdata02、bigdata03上启动zookeeper进程
(1)在bigdata01上启动
zkServer.sh start
(2)在bigdata02上启动
zkServer.sh start
(3)在bigdata03上启动
zkServer.sh start
四、验证
分别在bigdata01、bigdata02、bigdata03上执行jps命令验证是否有QuorumPeerMain进程。
如果都有就说明zookeeper集群启动正常了。
如果没有就到对应的节点的logs目录下查看zookeeper*-*.out日志文件。
执行bin/zkServer.sh status 命令会发现有一个节点显示为leader,其他两个节点为follower
1、bigdata01
[root@bigdata01 apache-zookeeper-3.5.8-bin]# bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /data/soft/apache-zookeeper-3.5.8-bin/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost.
Mode: follower
2、bigdata02
[root@bigdata02 apache-zookeeper-3.5.8-bin]# bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /data/soft/apache-zookeeper-3.5.8-bin/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost.
Mode: leader
3、bigdata03
[root@bigdata03 apache-zookeeper-3.5.8-bin]# bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /data/soft/apache-zookeeper-3.5.8-bin/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost.
Mode: follower
五、操作zookeeper
和单机的操作方式一样
六、停止zookeeper集群
在bigdata01、bigdata02、bigdata03三台机器上分别执行bin/zkServer.sh stop命令
zkServer.sh stop