我正在尝试修改Hyperledger结构v1.0的the Getting Started example。 源代码位于examples/e2e_cli目录中。如何在2个实例上拆分hyperledger fabcic对等体?
原始场景是4个同伴,1个订购服务和1个cli服务。
我想在一个云实例(实例A)和另一个实例(实例B)上的一个对等体上实现3个对等体,1个订购服务和1个cli服务。
由于区块链是分布式分类账,我想在多个实例上进行测试。
我所做的是......
开始3名同行和1个CLI和1级排序上的实例A.我注释掉等方2泊坞窗,compose.yaml的部分。
开始1对在实例B.我复制泊坞窗,compose.yaml的对等体2段和执行的码头工人,组成-f只-peer2.yaml了
按照指令,“手动执行交易“,来创建和实例化一个频道,并尝试让这些节点加入该频道。
下面是我在cli上尝试的代码,让实例B的对等体加入该通道。在实例B
等方2加入频道:
CORE_PEER_MSPCONFIGPATH=$GOPATH/src/github.com/hyperledger/fabric/peer/crypto/peer/peer2/localMspConfig
CORE_PEER_ADDRESS=<IP address of instance B>:9051
CORE_PEER_LOCALMSPID="Org0MSP"
CORE_PEER_TLS_ROOTCERT_FILE=$GOPATH/src/github.com/hyperledger/fabric/peer/crypto/peer/peer2/localMspConfig/cacerts/peerOrg1.pem
peer channel join -b mychannel.block
我只是改变等方2到实例b的IP地址。
但我得到了错误,我不能让实例B上的peer2加入该频道。
这里是错误信息。
实例A(CLI):
Error: Error getting endorser client channel: PEER_CONNECTIONERROR - Error trying to connect to local peer: grpc: timed out when dialing
实例B(对等方2):
peer2 | 2017/04/01 22:56:32 grpc: Server.Serve failed to complete security handshake from "<IP address of instance A>:1177": EOF
peer2 | 2017/04/01 22:56:34 grpc: Server.Serve failed to complete security handshake from "<IP address of instance A>:1178": read tcp 172.19.0.2:7051->52.183.102.216:1178: read: connection reset by peer
由于我是新来blockchain和Hyperledger一般,我可能不理解基本的身份验证机制。但我认为以2个实例作为例子是很好的起点。
因为我可以顺利通过原始方案没有任何错误(其中只使用1个实例),我的服务器设置应该没关系......
请给我提示。
谢谢!
根据Using CouchDB部分修改examples/e2e_cli/docker-compose.yaml后,我运行'peer channel join -b mychannel.block'命令时发生了同样的错误(取消了全部注释有关CouchDB容器和对等容器使用CouchDB的评论声明)。 – mathsyouth