Fabric1.4.1 etcdraft模式部署


Fabric etcdraft模式部署

配置要求

以下信息僅供參考

  1. 系統環境(Centos 7.5)
  2. Docker版本(19.03.12)
  3. Docker-compose版本(1.24.0)
  4. Fabric版本(1.4.1): Source code(zip)
  5. Fabric工具版本: hyperledger-fabric-linux-amd64-1.4.1
  6. 私有域名服務器(如果沒有的話則需要在節點啟動配置中添加extra_hosts)搭建可參考https://www.cnblogs.com/jockming/p/12970343.html
  7. 私有域名服務器添加解析記錄(a記錄)的客戶端程序: minidns
  8. 需要項目部署文件請進群(537487044)@群主

PS:注意要修改免密腳本中的服務器ip和密碼

准備工作(所有主機)

# 進入home目錄,沒有就自行創建
cd /home

# 1. 各個節點安裝zip解壓工具
yum install -y unzip zip

# 2. 安裝dos2unix格式轉換工具(因為windows下的換行符與linux下的換行符不同)
yum install -y dos2unix

# 3. 安裝文件上傳工具
yum install -y lrzsz

# 4. 添加域名服務器地址(域名私服--目前只解析a記錄)
vim /etc/resolv.conf
#雲主機里面原本的域名服務器地址不要動,直接換行新增下面的這兩條記錄
#主DNS服務器
nameserver 192.168.1.110
#備DNS服務器(國內的)
nameserver 114.114.114.114
# 重啟網絡管理器來刷新配置
systemctl restart NetworkManager

# PS:注意.env文件(環境變量配置)etcdraft模式下必須開啟tls

防火牆設置(可選操作,方便手動修改防火牆)

# 單獨添加
firewall-cmd --zone=public --permanent --add-port=22/tcp 

# 防火牆設置(根據實際情況修改端口)
firewall-cmd --zone=public --permanent --add-port=7050/tcp --add-port=7051/tcp --add-port=7053/tcp --add-port=8050/tcp --add-port=9050/tcp

# 重新載入
firewall-cmd --reload

# 查看所有開放的端口
firewall-cmd --zone=public --list-ports

# 開啟開機啟動
systemctl enable firewalld

# 防火牆狀態
systemctl status firewalld

# 啟動防火牆
systemctl start firewalld

# 重啟防火牆
systemctl restart firewalld

# 關閉防火牆
systemctl stop firewalld

在fabric1上執行的操作 --- 192.168.1.111

# 1. 使用rz命令上傳部署文件或者使用Filezilla客戶端上傳文件
rz

# 2. 解壓腳本並移除zip包
unzip fabric-etcdraft_1.4.1_Release.zip && rm -rf fabric-etcdraft_1.4.1_Release.zip

# 3. 可執行文件賦權和腳本格式轉換
chmod +x ./bin/* && chmod +x ./*.sh
dos2unix ./*.sh

# 4. 執行初始化環境的腳本(如果拉取鏡像失敗請單獨執行腳本[./docker_pull_fabric_images.sh])
./init_fabric_environment.sh

# 5. 執行免密登陸腳本(節點配置在腳本中)
./passwordless.sh

# 6. 執行配置生成腳本(成員證書,創世區塊,通道配置,錨節點更新文件)
./generate_config.sh

# 7. 返回到home目錄
cd /home

# 8. 壓縮配置准備分發到其他節點(如果使用tar的話:tar -cvf fabric-etcdraft.tar ./fabric-etcdraft/)
zip -r fabric-etcdraft_1.4.1_Release.zip ./fabric-etcdraft_1.4.1_Release/

# 9. 分發配置(由於前面執行了免密腳本,這里不用輸入密碼)
scp -r fabric-etcdraft_1.4.1_Release.zip root@192.168.1.112:/home
scp -r fabric-etcdraft_1.4.1_Release.zip root@192.168.1.113:/home

# 10. 啟動orderer0
docker-compose -f ./docker-compose-tld-orderer.yaml  up  -d orderer0.example.com

# 11. 啟動ca-org1
docker-compose -f ./docker-compose-tld-ca.yaml  up -d ca-org1

在fabric2上執行操作 --- 192.168.1.112

# 1. 進入home
cd /home

# 2. 解壓腳本並移除zip包
unzip fabric-etcdraft_1.4.1_Release.zip && rm -rf fabric-etcdraft_1.4.1_Release.zip

# 3. 可執行文件賦權和腳本格式轉換
chmod +x ./bin/* && chmod +x ./*.sh
dos2unix ./*.sh

# 4. 執行初始化環境的腳本(如果拉取鏡像失敗請單獨執行腳本[./docker_pull_fabric_images.sh])
./init_fabric_environment.sh

# 5. 啟動orderer1
docker-compose -f ./docker-compose-tld-orderer.yaml  up -d orderer1.example.com

# 6. 啟動peer0org1
docker-compose -f ./docker-compose-tld-peer.yaml  up -d peer0.org1.example.com

在fabric3上執行操作 --- 192.168.1.113

# 1. 進入home
cd /home

# 2. 解壓腳本並移除zip包
unzip fabric-etcdraft_1.4.1_Release.zip && rm -rf fabric-etcdraft_1.4.1_Release.zip

# 3. 可執行文件賦權和腳本格式轉換
chmod +x ./bin/* && chmod +x ./*.sh
dos2unix ./*.sh

# 4. 執行初始化環境的腳本(如果拉取鏡像失敗請單獨執行腳本[./docker_pull_fabric_images.sh])
./init_fabric_environment.sh

# 5. 啟動orderer2
docker-compose -f ./docker-compose-tld-orderer.yaml  up -d orderer2.example.com

# 6. 啟動peer1org1
docker-compose -f ./docker-compose-tld-peer.yaml  up -d peer1.org1.example.com

sdk交互

1. 將crypto-config目錄和channel-artifacts目錄打包下載到sdk的目錄中

2. 創建通道(節點加入通道,更新錨節點配置<可選>)

3. 節點安裝鏈碼和實例化鏈碼

4. 調用鏈碼


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM