配置Zookeeper Docker集群涉及幾個關鍵步驟,包括環境準備、Docker Compose配置、以及集群的啟動和驗證。下面是詳細的配置指南:
確保你已經安裝了Docker和Docker Compose。在CentOS 7上,你可以通過以下命令安裝Docker和Docker Compose:
sudo yum install -y docker
sudo systemctl enable docker
sudo systemctl start docker
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
創建一個zk-docker-compose.yml文件,內容如下:
version: '3.4'
services:
zoo1:
image: zookeeper:3.6.2
container_name: zoo1
ports:
- "2181:2181"
- "2888:2888"
- "3888:3888"
volumes:
- "/opt/zookeeper/zkcluster/zoo1/data:/data"
- "/opt/zookeeper/zkcluster/zoo1/datalog:/datalog"
- "/opt/zookeeper/zkcluster/zoo1/logs:/logs"
environment:
ZOO_MY_ID: 1
ZOO_SERVERS: server.1 172.18.0.2:2888:3888;server.2 172.18.0.3:2888:3888;server.3 172.18.0.4:2888:3888
networks:
- zookeeper
zoo2:
image: zookeeper:3.6.2
container_name: zoo2
ports:
- "2182:2181"
- "2889:2888"
- "3889:3888"
volumes:
- "/opt/zookeeper/zkcluster/zoo2/data:/data"
- "/opt/zookeeper/zkcluster/zoo2/datalog:/datalog"
- "/opt/zookeeper/zkcluster/zoo2/logs:/logs"
environment:
ZOO_MY_ID: 2
ZOO_SERVERS: server.1 172.18.0.2:2888:3888;server.2 172.18.0.3:2888:3888;server.3 172.18.0.4:2888:3888
networks:
- zookeeper
zoo3:
image: zookeeper:3.6.2
container_name: zoo3
ports:
- "2183:2181"
- "2890:2888"
- "3890:3888"
volumes:
- "/opt/zookeeper/zkcluster/zoo3/data:/data"
- "/opt/zookeeper/zkcluster/zoo3/datalog:/datalog"
- "/opt/zookeeper/zkcluster/zoo3/logs:/logs"
environment:
ZOO_MY_ID: 3
ZOO_SERVERS: server.1 172.18.0.2:2888:3888;server.2 172.18.0.3:2888:3888;server.3 172.18.0.4:2888:3888
networks:
- zookeeper
networks:
zookeeper:
driver: bridge
在包含zk-docker-compose.yml文件的目錄中,運行以下命令啟動集群:
docker-compose -f zk-docker-compose.yml up -d
啟動集群后,你可以使用Zookeeper客戶端工具連接到任意一個節點,使用命令ls /查看集群狀態。
通過以上步驟,你應該能夠成功配置并運行一個Zookeeper Docker集群。記得根據實際情況調整配置文件中的IP地址和端口映射。