docker-compose搭建zookeeper集羣

創建zookeeper集羣數據掛載目錄

mkdir -p /opt/compose-volumes/zk-volumes/zoo{1,2,3}
ls -l /opt/compose-volumes/zk-volumes/
total 12
drwxr-xr-x 5 root root 4096 Mar  2 15:12 zoo1
drwxr-xr-x 5 root root 4096 Mar  2 15:12 zoo2
drwxr-xr-x 5 root root 4096 Mar  2 15:12 zoo3

創建存放docker-compose文件目錄

mkdir -p /opt/software/docker-compose/zookeeper
cd  /opt/software/docker-compose/zookeeper

編寫docker-compose

vim docker-compose.yml
version: '3.1'

services:
  zoo1:
    image: zookeeper
    restart: always
    hostname: zoo1
    ports:
      - 2181:2181
    environment:
      ZOO_MY_ID: 1
      ZOO_SERVERS: server.1=0.0.0.0:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=zoo3:2888:3888;2181
    volumes:
      - /opt/compose-volumes/zk-volumes/zoo1/data:/data
      - /opt/compose-volumes/zk-volumes/zoo1/datalog:/datalog
      - /opt/compose-volumes/zk-volumes/zoo1/conf:/conf
  zoo2:
    image: zookeeper
    restart: always
    hostname: zoo2
    ports:
      - 2182:2181
    environment:
      ZOO_MY_ID: 2
      ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=0.0.0.0:2888:3888;2181 server.3=zoo3:2888:3888;2181
    volumes:
      - /opt/compose-volumes/zk-volumes/zoo2/data:/data
      - /opt/compose-volumes/zk-volumes/zoo2/datalog:/datalog
      - /opt/compose-volumes/zk-volumes/zoo2/conf:/conf
  zoo3:
    image: zookeeper
    restart: always
    hostname: zoo3
    ports:
      - 2183:2181
    environment:
      ZOO_MY_ID: 3
      ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=0.0.0.0:2888:3888;2181
    volumes:
      - /opt/compose-volumes/zk-volumes/zoo3/data:/data
      - /opt/compose-volumes/zk-volumes/zoo3/datalog:/datalog
      - /opt/compose-volumes/zk-volumes/zoo3/conf:/conf

啓動zookeeper集羣

docker-compose up -d

驗證

  • 進入容器查看節點狀態
root@zoo2:/apache-zookeeper-3.5.5-bin/bin# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /conf/zoo.cfg
Client port found: 2181. Client address: localhost.
Mode: leader

檢查數據是否掛載成功

[root@instance-i91s0r82 zk-volumes]# tree
.
├── zoo1
│   ├── conf
│   │   ├── zoo.cfg
│   │   └── zoo.cfg.dynamic.next
│   ├── data
│   │   ├── myid
│   │   └── version-2
│   │       ├── acceptedEpoch
│   │       ├── currentEpoch
│   │       └── snapshot.0
│   └── datalog
│       └── version-2
│           └── log.200000001
├── zoo2
│   ├── conf
│   │   ├── zoo.cfg
│   │   └── zoo.cfg.dynamic.next
│   ├── data
│   │   ├── myid
│   │   └── version-2
│   │       ├── acceptedEpoch
│   │       ├── currentEpoch
│   │       ├── snapshot.0
│   │       └── snapshot.200000001
│   └── datalog
│       └── version-2
│           └── log.200000001
└── zoo3
    ├── conf
    │   └── zoo.cfg
    ├── data
    │   ├── myid
    │   └── version-2
    │       ├── acceptedEpoch
    │       ├── currentEpoch
    │       └── snapshot.0
    └── datalog
        └── version-2
            └── log.200000001
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章