2017-04-01 98 views
2

我正在嘗試修改Hyperledger結構v1.0的the Getting Started example。 源代碼位於examples/e2e_cli目錄中。如何在2個實例上拆分hyperledger fabcic對等體?

原始場景是4個同伴,1個訂購服務和1個cli服務。

我想在一個雲實例(實例A)和另一個實例(實例B)上的一個對等體上實現3個對等體,1個訂購服務和1個cli服務。

由於區塊鏈是分佈式分類賬,我想在多個實例上進行測試。

我所做的是......

  1. 開始3名同行和1個CLI和1級排序上的實例A.我註釋掉等方2泊塢窗,compose.yaml的部分。

  2. 開始1對在實例B.我複製泊塢窗,compose.yaml的對等體2段和執行的碼頭工人,組成-f只-peer2.yaml了

  3. 按照指令,「手動執行交易「,來創建和實例化一個頻道,並嘗試讓這些節點加入該頻道。

下面是我在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個實例),我的服務器設置應該沒關係......

請給我提示。

謝謝!

+0

根據Using CouchDB部分修改examples/e2e_cli/docker-compose.yaml後,我運行'peer channel join -b mychannel.block'命令時發生了同樣的錯誤(取消了全部註釋有關CouchDB容器和對等容器使用CouchDB的評論聲明)。 – mathsyouth

回答

1

這個問題有點過時,因爲它指的是1.0.0-alpha版本的入門示例。但是,確實有資源在多個主機上設置網絡。

This one利用Ansible,OpenStack和Kubernetes,並正在合併到Hyperledger Cello的過程中。 This one會將節點部署到預先配置的VM。可能還有其他例子。

相關問題