多台服務器Docker-compose 安裝zookeeper集群
安裝docker-compose
• 安裝docker:sudo apt-get install docker.io
• 開機啟動docker sudo systemctl enable docker.service
• 安裝docker-compose
-
sudo curl -L "https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
-
sudo chmod +x /usr/local/bin/docker-compose
zookeeper安裝與配置
假定zookeeper安裝在三台機器:10.1.2.101、10.1.2.102、10.1.2.103
設置固定格式的docker-compose 目錄方便查找
mkdir -p ~/docker-compose-file/zookeeper
vim docker-compose.yml
#以10.1.2.101為例
version: '2'
services:
zookeeper:
image: 'zookeeper:latest'
restart: always
environment:
ZOO_MY_ID: 1
volumes:
- /data/docker-container-configs/zookeeper/zoo.cfg:/conf/zoo.cfg
#也可以掛載到主機,新建myid文件- /data/zookeeper:/data
#也可以掛載到主機- /data/docker-container-logs/zookeeper:/datalog
ports:
- 2181:2181
container_name: 'zookeeper101'
network_mode: "host"
保存docker-compose.yml
設置固定格式的config目錄,方便查找
mkdir -p /data/docker-container-configs/zookeeper
vim zoo.cfg
寫配置文件
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data
dataLogDir=/data
clientPort=2181
server.1=0.0.0.0:2888:3888
server.2=10.1.2.102:2888:3888
server.3=10.1.2.103:2888:3888
保存 zoo.cfg
#啟動 一定要到docker-compose.yml文件所在目錄執行
cd ~/docker-compose-file/zookeeper
sudo docker-compose up -d
依次配置啟動三台服務器的zookeeper
檢查集群
docker exec -ti [你的zookeeper container id] zkServer.sh status
- 1
顯示Mode:follower或者leader 就說明集群配置成功了
ZooKeeper JMX enabled by default
Using config: /conf/zoo.cfg
Mode: follower