实验环境
主机名 | IP |
---|---|
master | 10.30.59.130 |
slave1 | 10.30.59.131 |
slave2 | 10.30.59.133 |
软件要求
软件名称 | 软件版本 |
---|---|
JDK | 8u77 |
Zookeeper | 3.4.5 |
先决条件
- 各个主机已完成 主机名-IP 映射
- 各个主机已完成ssh免密登录
搭建步骤
一、解压文件
[root@master ~]# cd /opt
[root@master opt]# tar -zxf /opt/soft/zookeeper-3.4.10.tar.gz -C /opt/
[root@master opt]# mv /opt/zookeeper-3.4.10 /opt/zookeeper
二、配置环境变量并令其立即生效
- hadoop-etc.sh文件新增两条
[root@master opt]# vi /etc/profile.d/hadoop-etc.sh
export ZOOKEEPER_HOME=/opt/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin
[root@master opt]# source /etc/profile.d/hadoop-etc.sh
三、填写配置文件
- 打开/opt/zookeeper/conf
[root@master conf]# cp zoo_sample.cfg zoo.cfg
[root@master conf]# vi zoo.cfg
//把dataDir改成如下
dataDir=/opt/zookeeper/tmp
//在底部添加
server.101=lky01:2888:3888
server.102=lky02:2888:3888
server.103=lky03:2888:3888
- 打开/opt/zookeeper/
[root@master zookeeper]# mkdir tmp
vi tmp/myid
//然后在myid文件中写入对应机器的id
//master为101
四、同步两台slave节点的配置并令其环境变量立即生效
[root@master opt]# scp -r zookeeper slave1:/opt
[root@master opt]# scp -r zookeeper slave2:/opt
[root@master opt]# scp /etc/profile.d/hadoop-etc.sh slave1:/etc/profile.d
[root@master opt]# scp /etc/profile.d/hadoop-etc.sh slave2:/etc/profile.d
- 在slave节点上令其环境变量立即生效
[root@slave1 ~]# source /etc/profile.d/hadoop-etc.sh
[root@slave2 ~]# source /etc/profile.d/hadoop-etc.sh
五、修改两台slave节点的myid
非常重要:在其基础之上进行修改---------------->
保持myid文件中的内容和zoo.cfg中的配置一致
slave1—>102
slave2—>103
六、启动服务
[root@master ~]# zkServer.sh start//可在任意目录启动
[root@slave1 ~]# zkServer.sh start
[root@slave2 ~]# zkServer.sh start
七、启动检验
通过zkServer.sh status可以观察到每一台zk的角色,其中两台follower,一台leader