Hyperledger Fabric:当机器关闭时网络 运行,对等节点无法使用 byfn 脚本重新启动

Hyperledger Fabric: Peer nodes fail to restart with byfn script when machine is shut down while network is running

我在使用默认 byfn 脚本的单个 AWS 实例上有一个 hyperledger fabric 网络 运行。

错误:订购者、cli、CA docker 容器显示 "Up" 状态。同行显示 "Exited" 状态。

错误发生在:

  1. Byfn 网络 运行,机器重新启动(不在我的控制之下,但由于某些外部原因)。
  2. 网络在 运行 过夜而不关闭机器。第二天早上显示相同的状态。

显示的错误:

docker ps -a

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES b0523a7b1730 hyperledger/fabric-tools:latest "/bin/bash" 23 seconds ago Up 21 seconds cli bfab227eb4df hyperledger/fabric-peer:latest "peer node start" 28 seconds ago Exited (2) 23 seconds ago peer1.org1.example.com 6fd7e818fab3 hyperledger/fabric-peer:latest "peer node start" 28 seconds ago Exited (2) 19 seconds ago peer1.org2.example.com 1287b6d93a23 hyperledger/fabric-peer:latest "peer node start" 28 seconds ago Exited (2) 22 seconds ago peer0.org2.example.com 2684fc905258 hyperledger/fabric-orderer:latest "orderer" 28 seconds ago Up 26 seconds 0.0.0.0:7050->7050/tcp orderer.example.com 93d33b51d352 hyperledger/fabric-peer:latest "peer node start" 28 seconds ago Exited (2) 25 seconds ago peer0.org1.example.com

Attaching docker log: https://hastebin.com/ahuyihubup.cs

只有对等方无法启动。 Steps 我已尝试解决问题:

  1. docker 启动 $(docker ps -aq) 或手动启动单个对等点。
  2. byfn 向下,生成然后再次向上。显示与上面相同的结果。
  3. 回滚到以前版本的结构二进制文件。 1.1、1.2 和 1.4 的结果相同。在较旧的二进制文件中,如果网络离开 运行 过夜,则不会重复错误,但会在机器重新启动时重复。
  4. 使用较旧的 docker 图像,例如 1.1 和 1.2。
  5. 尝试只启动一个节点、排序节点和客户端。
  6. 更改了网络名称和域名。
  7. 已卸载 docker,docker-compose 并重新安装。
  8. 更改了所有节点的端口号。
  9. 尝试在不安装任何卷的情况下重新启动。

唯一可行的方法是重新格式化 AWS 实例并从头开始重新安装所有内容。另外,我没有使用 AWS 区块链模板。 任何帮助,将不胜感激。我已经被这个问题困了一个月了。

通过向 peer-base.yaml 添加以下行解决了错误:

GODEBUG=netdns=go
dns_search: .

感谢@gari-singh 的回答: