【发布时间】:2026-01-08 01:15:01
【问题描述】:
我在使用 Hyperledger Fabric v1.4.4 在 Docker Swarm 上部署一个非常简单的区块链网络时遇到了这个特殊问题。它有 2 个组织(每个 2 个 peer)、5 个 orderers(Raft 共识)、2 个 CA(每个组织一个)和 4 个 couchDB(每个 peer 1 个)。
当我尝试将对等方加入我刚刚创建的频道时,就会出现问题。终端上显示的消息:
错误:获取通道的背书客户端时出错:背书客户端无法连接到 peer0org1:7051:无法创建新连接:超出上下文截止日期
当我浏览该对等方的日志时,我看到一条消息引起了我的注意:
createTransport -> DEBU 13c grpc: addrConn.createTransport 无法连接到 {peer1car1:8051 0 }。错误:连接错误:desc =“传输:身份验证握手失败:x509:证书对 peer1.org1、peer1、而不是 peer1org1 有效”。正在重新连接...
还有一个实际的错误消息:
UTC [core.comm] ServerHandshake -> ERRO 1b9 TLS 握手失败,出现错误远程错误:tls: bad certificate server=PeerServer remoteaddress=10.0.2.7:50504
然后我开始查看 crypto-config.yaml 文件和用于部署我的堆栈的 docker-compose.yaml。在 crypto-config.yaml 文件中,我将 de Domain 密钥声明为“org1”,正如您在日志中看到的,证书对 peer1org1 有效。但问题是,当我声明服务名称“peer0.org1”时,我从 Swarm 收到一个错误,说它是一个无效名称。
我知道,我知道。日志中的消息是针对另一个对等方的,但是与我遇到的这个问题有关吗?关于如何解决它的任何想法?
关于另一个主题:我是容器或探索世界的新手,想知道您的意见。你会使用 Kubernetes 还是 Swarm 在生产环境中部署 Hyperledger Fabric 区块链网络?
【问题讨论】:
标签: ssl certificate hyperledger-fabric docker-swarm