《HyperLedger Fabric 实战》—— 十三、升级 Fabric 1.2 —— 2、Zookeeper 集群部署
1、编写 docker-zookeeper.yaml 配置文件
提取docker-compose-e2e.yaml
文件中 zookeeper 信息,分别写入 201 ~ 203 三台机器的 ~/fabric/aberic/docker-zookeeper.yaml
文件中。文件名可都一样,重点是配置中的container_name
、hostname
、ZOO_MY_ID
等内容,各机要区分开。以 201 机器为例,它应该是如下样子。
# Copyright IBM Corp. All Rights Reserved.
#
# SPDX-License-Identifier: Apache-2.0
#
version: '2'
services:
zookeeper1:
container_name: zookeeper1
hostname: zookeeper1
extends:
file: base/docker-compose-base.yaml
service: zookeeper
environment:
- ZOO_MY_ID=1
2、防火墙设置
在 201 ~ 203 机器上全部执行一次下面命令,以开放防火墙限制。
firewall-cmd --add-port=2181/tcp --add-port=2888/tcp --add-port=3888/tcp
3、启动 Zookeeper 集群
分别在 201 ~ 203 上执行:
docker-compose -f docker-zookeeper.yaml up
查看状态,请自行修改 zookeeper1 ~ 3:
docker exec -it zookeeper1 bash
./bin/zkServer.sh status
若找到某台 zk 含 Mode: leader
,说明 Zookeeper 集群启动成功:
root@38435812f0b5:/zookeeper-3.4.9# ./bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /conf/zoo.cfg
Mode: leader
root@38435812f0b5:/zookeeper-3.4.9#