【问题标题】:Unable to join peers to channel in Hyperledger First Network setup无法在 Hyperledger First Network 设置中将节点加入通道
【发布时间】:2019-02-24 23:07:22
【问题描述】:

我正在关注the Hyperledger fabric site 上的教程,在 Linux 18.04 安装上安装了所有 perquisites(最新版本)后,我遇到了错误。

我正在尝试运行给定的 ./byfn 脚本来“构建您的第一个网络”。全新安装后,我运行以下命令:

./byfn generate
./byfn up

此时一切都按预期执行,直到连续发生 5 次以下错误(之后运行以错误退出):

+ peer channel join -b mychannel.block
+ res=1
+ set +x
Error: error getting endorser client for channel: endorser client failed to connect to peer0.org1.example.com:7051: failed to create new connection: context deadline exceeded
peer0.org1 failed to join the channel, Retry after 3 seconds

我尝试过各种方法,例如:

  • 增加超时以允许更长的连接时间
  • 我已关闭网络并再次打开它
  • 完全重新安装所需的软件包和织物样品
  • 删除了所有 docker 卷/图像/容器

我发现一些消息来源提到这可能与对等方无法相互连接有关。我试图通过手动将每个对等方连接到 byfn docker 网络来修复,但没有成功。我可以看到 orderer 正在运行,但尝试加入网络的 peer 退出并出现错误:

docker container ls -a
CONTAINER ID        IMAGE                               COMMAND             CREATED             STATUS                      PORTS                    NAMES
99570e191542        hyperledger/fabric-tools:latest     "/bin/bash"         24 seconds ago      Up 23 seconds                                        cli
340d1225a913        hyperledger/fabric-peer:latest      "peer node start"   30 seconds ago      Exited (2) 24 seconds ago                            peer0.org1.example.com
fabe017751a0        hyperledger/fabric-peer:latest      "peer node start"   30 seconds ago      Exited (2) 25 seconds ago                            peer1.org2.example.com
f81a639f29f6        hyperledger/fabric-peer:latest      "peer node start"   30 seconds ago      Exited (2) 26 seconds ago                            peer1.org1.example.com
0f91080db681        hyperledger/fabric-peer:latest      "peer node start"   30 seconds ago      Exited (2) 27 seconds ago                            peer0.org2.example.com
c491adc91320        hyperledger/fabric-orderer:latest   "orderer"           30 seconds ago      Up 28 seconds               0.0.0.0:7050->7050/tcp   orderer.example.com

这表明节点以错误代码退出,它们看起来都一样,请在下面查看对等节点的docker日志。

所以我的最后一个问题是:如何让“第一网络”Hyperledger 示例节点成功加入频道?

提前致谢!

更新 1

我选择了错误的代码转储!请使用这些链接获取日志/输出。

更新 2

所以我一直在尝试各种事情,这似乎不是与 go 相关的错误,而只是一个“连接”错误,即 go 在尝试将对等点连接到通道时崩溃。所以手头的主要问题是:为什么我的 docker 实例没有正确连接到通道?

更新 3

我使用 Amazon Web Services 启动了一个 Linux 实例,并在这个“新”实例上重新创建了所有安装步骤。一切都在第一时间进行(双关语)。因此,我必须得出结论,这与我的网络设置或个人设置有关,因为这些是唯一更改的参数。

因为现在这对我有用,所以我会使用它。我仍然愿意接受建议,并将密切关注这篇文章!

软件包版本

  • Hyperledger Fabric 1.4.0

  • Docker 版本 18.09.2,内部版本 6247962

  • docker-compose 版本 1.13.0,构建 1719ceb

  • go 版本 go1.11 linux/amd64

  • npm: '6.4.1',

  • 节点-v:v8.15.0

【问题讨论】:

  • 发布对等日志:docker container logs peer0.org1.example.com:7051
  • 你能检查一下 pr-requisities 的版本吗?
  • 我已将工作链接添加到日志中。
  • 我也加了具体的版本

标签: docker go docker-compose hyperledger-fabric hyperledger


【解决方案1】:

我建议你检查两件事:可用内存和“first-network”目录中的权限。

【讨论】:

  • 感谢您的建议,我已经备份了我的示例文件夹并 chmod -R 将其更改为 777 以进行测试(我知道这是可怕的安全风险!)。没有改变。至于内存,我在运行 docker 的 Linux 分区上有 20 GB 可用空间(应该足够了吧?我从来没有发现运行 Fabric 需要任何内存,所有 docker 映像的总和约为 2.5 GB。)
  • 所以内存和权限没问题,很好。
  • 正如你所指出的,go版本(go1.10.4)很奇怪,也许你安装了另一个版本?如果是这样,也许应该将其删除并重新安装 Fabric?
  • 我发现我的 gopath 设置不正确。从那以后,我删除了所有其他安装的 go 并重新安装了 1.11。我随后设置了正确的 gopath 和 path 变量。在第一个网络文件夹中运行go version 时,我现在得到了正确的版本!但是问题仍然存在,我会相应地更新问题。
猜你喜欢
  • 1970-01-01
  • 2018-12-02
  • 2019-09-15
  • 1970-01-01
  • 2022-11-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-08
相关资源
最近更新 更多