我正在嘗試修改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