章节内容
上一节我们完成了:
ZooKeeper 的简介
ZooKeeper 的下载安装
ZooKeeper 的单机配置和启动
背景介绍
这里是三台公网云服务器,每台 2C4G,搭建一个Hadoop的学习环境,供我学习。
之前已经在 VM 虚拟机上搭建过一次,但是没留下笔记,这次趁着前几天薅羊毛的3台机器,赶紧尝试在公网上搭建体验一下。
2C4G 编号 h121
2C4G 编号 h122
2C2G 编号 h123
集群配置
上节我们是单机启动的,现在我们要启动三台:
H121
H122
H123
解压安装
查看上一节过程,对ZooKeeper下载和解压安装。
你也可以使用之前封装好的 rsync-script 工具来完成 ZooKeeper 的分发。
环境变量
确保你的三台节点都配置对了环境变量
# zookeeper export ZOOKEEPER_HOME=/opt/servers/apache-zookeeper-3.8.4-bin export PATH=$PATH:$ZOOKEEPER_HOME/bin
zk配置
确保你的zk配置是正确的,且一致的
cd /opt/servers/apache-zookeeper-3.8.4-bin/conf mv zoo_sample.cfg zoo.cfg vim zoo.cfg
# 数据和日志文件夹 dataDir=/opt/servers/apache-zookeeper-3.8.4-bin/data dataLogDir=/opt/servers/apache-zookeeper-3.8.4-bin/logs # 集群地址 server.1=h121.wzk.icu:2888:3888 server.2=h122.wzk.icu:2888:3888 server.3=h123.wzk.icu:2888:3888 # 清理日志 1小时 autopurge.purgeInterval=1
myid(重要)
这里我们单节点启动的时候,配置的是:
cd /opt/servers/apache-zookeeper-3.8.4-bin/data echo 1 > myid
但是在其他节点上,我们需要写成2、3
比如 h122节点,应该写成:
cd /opt/servers/apache-zookeeper-3.8.4-bin/data echo 2 > myid
比如h123节点,应该写成:
cd /opt/servers/apache-zookeeper-3.8.4-bin/data echo 3 > myid
集群启动
- h121 执行:zkServer.sh start
- h122 执行:zkServer.sh start
- h123 执行:zkServer.sh start
h121
h122
h123
查看日志
cd /opt/servers/apache-zookeeper-3.8.4-bin/logs tail -f zookeeper-root-server-h121.wzk.icu.out • 1 • 2
集群查看
h121
zkServer.sh status • 1
我们观察到 h121 是 Follower 追随者
h122
zkServer.sh status • 1
我们观察到 h122 是 Leader 领导者
h123
zkServer.sh status • 1
我们观察到 h123 是 Follower 追随者