fabric多服务器集群部署
系统环境:
centos 7.3
服务器地址列表:
A:10.36.8.106 peer0.org1.example.com
B: 10.36.8.107 peer1.org1.example.com
C: 10.36.8.108 peer0.org2.example.com
D: 10.36.8.109 peer1.org2.example.com
E: 10.36.8.222 orderer.example.com
软件环境:
每台服务器都得进行单服务器多节点测试通过(见上篇)
镜像下载过程可以优化,只下载一台然后拷贝到其它机器
docker save docker images | awk 'NR>1{print $1}'
-o images
scp images hosts:/tmp
其它机器加载docker镜像
docker load -i images
单服务器测试通过后必须关掉所有的容器,执行此命令即可
./network_setup.sh down
多服务器开始配置:
A:
1 修改 /etc/hosts,添加路由映射
10.36.8.222 orderer.example.com
2 修改docker-compose-cli.yaml(目录/opt/gopath/src/github.com/hyperledger/fabric/examples/e2e_cli)
在默认的情况下,docker-compose-cli.yaml会启动6个service(容器),它们分别为 peer0.org1.example.com、 peer1.org1.example.com、 peer0.org2.example.com、
peer1.org2.example.com、 orderer.example.com 和 cli,因为每台机器只运行与之对应的一个节点,因此需要注释掉无需启动的 service。
2.1
除 peer0.org1.example.com 和 cli service 外,其他 service 全部注释。
2.2
在 cli 的 volumes 中加入映射关系如下(添加这个的目的主要是后面会产生一个链的认证文件在peer目录下,方便获取):
- ./peer/:/opt/gopath/src/github.com/hyperledger/fabric/peer/
- /etc/hosts:/etc/hosts
2.3
注释 cli 中的 depends_on 和 command :
depends_on:
#- orderer.example.com
- peer0.org1.example.com
#- peer1.org1.example.com
#- peer0.org2.example.com
#- peer1.org2.example.com
#command: /bin/bash -c ‘./scripts/script.sh CHANNELNAME;sleepTIMEOUT’
3 修改 base/peer-base.yaml