环境概览
IP | zok的ID |
---|---|
192.168.35.71 | 1 |
192.168.35.72 | 2 |
192.168.35.73 | 3 |
配置文件目录——/opt/zookeeper/conf/
数据目录——/opt/zookeeper/data/
日志目录——/opt/zookeeper/logs/
提示:每个zk节点的配置zoo.cfg文件都是相同的,data目录下的myid文件的内容不同。
部署步骤
步骤1:在192.168.35.71执行:
mkdir -p /opt/zookeeper/{conf,data,logs}
cat > /opt/zookeeper/conf/zoo.cfg << EOF
tickTime=2000
initLimit=5
syncLimit=2
dataDir=/opt/zookeeper/data
clientPort=2181
server.1=192.168.35.71:2888:3888
server.2=192.168.35.72:2888:3888
server.3=192.168.35.73:2888:3888
EOF
cat > /opt/zookeeper/data/myid << EOF
1
EOF
docker run -d --restart=always --net=host --name=zk1 \
-v /opt/zookeeper/data:/opt/zookeeper/data \
-v /opt/zookeeper/logs:/opt/zookeeper/logs \
-v /opt/zookeeper/conf:/opt/zookeeper/conf \
jplock/zookeeper:3.4.13
步骤2:在192.168.35.72执行:
mkdir -p /opt/zookeeper/{conf,data,logs}
cat > /opt/zookeeper/conf/zoo.cfg << EOF
tickTime=2000
initLimit=5
syncLimit=2
dataDir=/opt/zookeeper/data
clientPort=2181
server.1=192.168.35.71:2888:3888
server.2=192.168.35.72:2888:3888
server.3=192.168.35.73:2888:3888
EOF
cat > /opt/zookeeper/data/myid << EOF
2
EOF
docker run -d --restart=always --net=host --name=zk2 \
-v /opt/zookeeper/data:/opt/zookeeper/data \
-v /opt/zookeeper/logs:/opt/zookeeper/logs \
-v /opt/zookeeper/conf:/opt/zookeeper/conf \
jplock/zookeeper:3.4.13
步骤3:在192.168.35.73执行:
mkdir -p /opt/zookeeper/{conf,data,logs}
cat > /opt/zookeeper/conf/zoo.cfg << EOF
tickTime=2000
initLimit=5
syncLimit=2
dataDir=/opt/zookeeper/data
clientPort=2181
server.1=192.168.35.71:2888:3888
server.2=192.168.35.72:2888:3888
server.3=192.168.35.73:2888:3888
EOF
cat > /opt/zookeeper/data/myid << EOF
3
EOF
docker run -d --restart=always --net=host --name=zk3 \
-v /opt/zookeeper/data:/opt/zookeeper/data \
-v /opt/zookeeper/logs:/opt/zookeeper/logs \
-v /opt/zookeeper/conf:/opt/zookeeper/conf \
jplock/zookeeper:3.4.13
测试zk集群
1)在192.168.35.71执行:
[root@breakfast ~]# echo stat | nc 127.0.0.1 2181
Zookeeper version: 3.4.13-2d71af4dbe22557fda74f9a9b4309b15a7487f03, built on 06/29/2018 04:05 GMT
Clients:
/127.0.0.1:359700
Latency min/avg/max: 0/0/0
Received: 142
Sent: 141
Connections: 1
Outstanding: 0
Zxid: 0x0
Mode: follower
#发现这是一个follower节点。
2)在192.168.35.72执行:
-bash-4.2# echo stat | nc 127.0.0.1 2181
Zookeeper version: 3.4.13-2d71af4dbe22557fda74f9a9b4309b15a7487f03, built on 06/29/2018 04:05 GMT
Clients:
/127.0.0.1:346340
Latency min/avg/max: 0/0/0
Received: 142
Sent: 141
Connections: 1
Outstanding: 0
Zxid: 0x100000000
Mode: leader
Proposal sizes last/min/max: -1/-1/-1
#发现这是一个leader节点。
3)在192.168.35.73执行:
-bash-4.2# echo stat | nc 127.0.0.1 2181
Zookeeper version: 3.4.13-2d71af4dbe22557fda74f9a9b4309b15a7487f03, built on 06/29/2018 04:05 GMT
Clients:
/127.0.0.1:449640
Latency min/avg/max: 0/0/0
Received: 142
Sent: 141
Connections: 1
Outstanding: 0
Zxid: 0x100000000
Mode: follower
#发现这是一个follower节点。