centos7下手工啟動(dòng)fabric1.0網(wǎng)絡(luò)

centos7下源代碼方式安裝fabric1.0

http://www.itdecent.cn/p/f94a49984e99

生成組織關(guān)系和身份證書

cat crypto-config.yaml
OrdererOrgs:
 - Name: Orderer
  Domain: example.com
  Specs:
   - Hostname: orderer
PeerOrgs:
 - Name: Org1
  Domain: org1.example.com
  Template:
   Count: 2
  Users:
   Count: 1
 - Name: Org2
  Domain: org2.example.com
  Template:
   Count: 2
  Users:
   Count: 1
cd $GOPATH/src/github.com/hyperledger/fabric/examples/e2e_cli
cryptogen generate --config=./crypto-config.yaml --output ./crypto-config
yum -y install tree
tree -L 4 crypto-config
對于Orderer節(jié)點(diǎn):需將crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/拷貝至Orderer節(jié)點(diǎn)的/etc/hyperledger/fabric下
對于Peer節(jié)點(diǎn):需將crypto-config/peerOrganizations/org1.example.com/拷貝至Peer節(jié)點(diǎn)的/etc/hyperledger/fabric下
對于客戶端節(jié)點(diǎn):需將crypto-config完整目錄拷貝至/etc/hyperledger/fabric下

生成Ordering服務(wù)啟動(dòng)初始區(qū)塊

cat configtx.yaml
Profiles:
  TwoOrgsOrdererGenesis:
    Orderer:
      <<: *OrdererDefaults
      Organizations:
        - *OrdererOrg
    Consortiums:
      SampleConsortium:
        Organizations:
          - *Org1
          - *Org2
  TwoOrgsChannel:
    Consortium: SampleConsortium
    Application:
      <<: *ApplicationDefaults
      Organizations:
        - *Org1
        - *Org2
Organizations:
  - &OrdererOrg
    Name: OrdererOrg
    ID: OrdererMSP
    MSPDir: crypto-config/ordererOrganizations/example.com/msp
  - &Org1
    Name: Org1MSP
    ID: Org1MSP
    MSPDir: crypto-config/peerOrganizations/org1.example.com/msp
    AnchorPeers:
      - Host: peer0.org1.example.com
       Port: 7051
  - &Org2
    Name: Org2MSP
    ID: Org2MSP
    MSPDir: crypto-config/peerOrganizations/org2.example.com/msp
    AnchorPeers:
      - Host: peer0.org2.example.com
       Port: 7051
Orderer: &OrdererDefaults
  OrdererType: solo
  Addresses:
    - orderer.example.com:7050
  BatchTimeout: 2s
  BatchSize:
    MaxMessageCount: 10
    AbsoluteMaxBytes: 98 MB
    PreferredMaxBytes: 512 KB
Kafka:
    Brokers:
      - 127.0.0.1:9092
  Organizations:
Application: &ApplicationDefaults
  Organizations:
該配置文件定義了兩個(gè)模板:TwoOrgsOrdererGenesis和TwoOrgsChannel,其中TwoOrgsOrdererGenesis用來生成Ordering服務(wù)的初始區(qū)塊文件
configtxgen -profile TwoOrgsOrdererGenesis -outputBlock ./orderer.genesis.block
所生成的orderer.genesis.block需拷貝至Orderer節(jié)點(diǎn)/etc/hyperledger/fabric下

生成新建應(yīng)用通道的配置交易

CHANNEL_NAME=businesschannel
configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./businesschannel.tx -channelID ${CHANNEL_NAME}
所生成的配置交易文件會(huì)在后續(xù)步驟被客戶端使用,因此可放在客戶端節(jié)點(diǎn)上

生成錨節(jié)點(diǎn)配置更新文件

錨節(jié)點(diǎn)配置更新文件用于對組織的錨節(jié)點(diǎn)進(jìn)行配置
configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./Org1MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org1MSP
configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./Org2MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org2MSP
所生成的錨節(jié)點(diǎn)配置更新文件會(huì)在后續(xù)步驟中被客戶端使用,因此可放在客戶端節(jié)點(diǎn)上

啟動(dòng)Orderer節(jié)點(diǎn)

檢查啟動(dòng)節(jié)點(diǎn)所有配置是否就緒
/etc/hyperledger/fabric下orderer.yaml(可參考sampleconfig/orderer.yaml)
/etc/hyperledger/fabric下msp和tls目錄
/etc/hyperledger/fabric下orderer.genesis.block
啟動(dòng)Orderer節(jié)點(diǎn):orderer start

啟動(dòng)Peer節(jié)點(diǎn)

檢查啟動(dòng)Peer節(jié)點(diǎn)所有配置是否就緒
/etc/hyperledger/fabric下core.yaml(可參考sampleconfig/core.yaml)
/etc/hyperledger/fabric下msp和tls目錄
啟動(dòng)Peer節(jié)點(diǎn):peer node start

操作網(wǎng)絡(luò)(暫未驗(yàn)證)

在客戶端進(jìn)行相關(guān)操作
創(chuàng)建通道:peer channel create
  通道創(chuàng)建成功后,會(huì)自動(dòng)在本地生成該應(yīng)用通道同名的初始區(qū)塊文件,只有擁有該文件才可以加入創(chuàng)建的應(yīng)用通道中
加入通道:peer channel join
  所操作的Peer連接到該應(yīng)用通道的Ordering服務(wù)上,開始接收區(qū)塊信息
更新錨節(jié)點(diǎn)配置:錨節(jié)點(diǎn)負(fù)責(zé)代表組織與其他組織中的節(jié)點(diǎn)進(jìn)行Gossip通信
  peer channel update
測試鏈碼:
  安裝鏈碼:peer chaincode install
  鏈碼容器實(shí)例化:peer chaincode instantiate
  用戶調(diào)用鏈碼發(fā)起交易:peer chaincode invoke
  查詢鏈碼調(diào)用后結(jié)果:peer chaincode query
監(jiān)聽事件:block-listener

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容