发布于 

Zookeeper安装文档

  1. 关闭防火墙
1
2
3
4
5
6
7
8
# 禁用防火墙
systemctl disable firewalld

# 关闭防火墙
systemctl stop firewalld

# 再次查看防火墙状态
systemctl status firewalld
  1. 查看主机名称
1
hostname
  1. 解压zookeeper
1
2
3
tar -xvzf /opt/software/zookeeper-3.4.5.tar.gz -C /opt/module

mv /opt/module/zookeeper-3.4.5 /opt/module/zookeeper
  1. 修改zookeeper配置文件
1
2
3
cp /opt/module/zookeeper/conf/zoo_simple.cfg /opt/module/zookeeper/conf/zoo.cfg

vi /opt/module/zookeeper/conf/zoo.cfg

修改以下内容:

1
2
3
4
5
6
7
# 修改 dataDir 路径
dataDir=/opt/module/zookeeper/zkdata

# 文件末尾添加服务器
server.1=master:2888:3888
server.2=slave1:2888:3888
server.3=slave2:2888:3888
  1. 创建 dataDir 设置的目录和 myid 文件
1
2
3
4
5
mkdir /opt/module/zookeeper/zkdata

cat > /opt/module/zookeeper/zkdata/myid << EOF
1
EOF
  1. 配置环境变量
1
vi /root/.bash_profile

文件结尾插入以下内容:

1
2
export ZK_HOME=/opt/module/zookeeper
export PATH=$PATH:$ZK_HOME/bin

刷新文件生效:

1
source /root/.bash_profile
  1. 分发 zookeeper 相关文件和环境变量到slave1 slave2
1
2
3
4
scp -r /opt/module/zookeeper slave1:/opt/module
scp -r /opt/module/zookeeper slave2:/opt/module
scp -r /root/.bash_profile slave1:/root
scp -r /root/.bash_profile slave2:/root

在其他节点shell终端上刷新环境变量以生效

1
source /.bash_profile
  1. 更改 slave1 和 slave2 的 myid 文件内容为 2 和 3
1
2
3
cat > /opt/module/zookeeper/zkdata/myid << EOF
2
EOF
1
2
3
cat > /opt/module/zookeeper/zkdata/myid << EOF
3
EOF
  1. 分别在三台机子上启动 zookeeper
1
zkServer.sh start
  1. 查看启动状态
1
zkServer.sh status

输出类似下方内容即为启动正常

1
2
3
JMX enabled by default
Using config: /usr/local/src/zookeeper/bin/../conf/zoo.cfg
Mode: follower
  1. 进入 zkshell
1
zkCli.sh -server localhost:2181
  1. 退出
1
quit
  1. 停止 zk 服务
1
zkServer.sh stop