Hyperledger Fabric 開發(fā)鏈碼,一般都是測試網(wǎng)絡開發(fā),然后部署到生產(chǎn)網(wǎng)絡。
下面介紹測試網(wǎng)絡、生產(chǎn)網(wǎng)絡的一點理解。
1 測試網(wǎng)絡
使用cryptogen等工具建立測試網(wǎng)絡,開發(fā)環(huán)境使用。
這里以https://github.com/hyperledger/fabric-samples 2022.2.12的代碼為例進行說明。
目錄:fabric-samples/test-network/organizations/fabric-ca/
從上面的目錄可以看到,測試網(wǎng)絡包括:
1) 2個組織。每個組織有1個peer節(jié)點;
2) 1個order組織。組織有1個order節(jié)點;
端口分配情況:
ordererOrg 排序組織 7050端口
org1 組織 7051端口
Org2 組織 9051端口
1.1 配置文件
目錄:/fabric-samples/config/
包括:
core.yaml : 創(chuàng)建Peer節(jié)點的配置文件;
orderer.yaml :Orderer節(jié)點示例配置文件;
configtx.yaml:組織結(jié)構(gòu)配置文件。
主要用來配置fabric的組織結(jié)構(gòu),通道及錨節(jié)點的配置。它主要完成以下幾個功能
1)生成啟動 Orderer 需要的創(chuàng)世區(qū)塊orderer.block(genesis.block)
2)創(chuàng)建應用通道所需的配置交易文件
3)生成組織錨節(jié)點更新配置交易文件
目錄:/fabric-samples/test-network/configtx/
生產(chǎn)創(chuàng)世區(qū)塊(GenesisBlock)與通道(Channel)所需配置文件。如指定orderer服務的相關(guān)配置,以及當前的聯(lián)盟信息、聯(lián)盟中所屬包含的組織信息,這些信息的配置被定義在該文件中。
目錄:fabric-samples/test-network/organizations/cryptogen/
生產(chǎn)組織結(jié)構(gòu)及身份認證所需的配置文件。
crypto-config-orderer.yaml
crypto-config-org1.yaml
crypto-config-org2.yaml
目錄:fabric-samples/test-network/compose/docker/
實現(xiàn)節(jié)點容器的管理。
1.2 啟動流程
啟動網(wǎng)絡:
./network.sh up
下面的說明都以當前目錄:fabric-samples/test-network/
啟動網(wǎng)絡前的準備:
1)為2個peer節(jié)點和1個order節(jié)點創(chuàng)建證書和密鑰。
cryptogen工具會利用在organizations/cryptogen文件夾下的配置文件生成節(jié)點證書和密鑰??聪聢D多了peerOrganizations、ordererOrganizations 2個文件夾。
2)創(chuàng)建系統(tǒng)的創(chuàng)世塊。
configtxgen工具使用configtx/configtx.yaml文件來創(chuàng)建創(chuàng)世塊,并存儲在system-genesis-block文件夾中。
當上述兩步完成之后,./network.sh會啟動測試網(wǎng)絡:
啟動測試網(wǎng)絡的步驟:
1)腳本利用在compose/docker/文件夾下的docker-compose-test-net.yaml文件創(chuàng)建peer和orderer節(jié)點。
2)運行./network.sh createChannel
子命令,腳本還會運行script文件夾下的createChannel.sh腳本來創(chuàng)建所需要的channel,腳本會用peer命令來創(chuàng)建channel,加入兩個組織。
3)運行./network.sh deployCC
命令,腳本會在所有peers上運行script下的deployCC.sh腳本來安裝chaincode,在chaincode的定義被提交到channel。
4)最后,peer
命令會調(diào)用init函數(shù)來初始化chaincode,并將所需的數(shù)據(jù)放入chaincode中。
2 生產(chǎn)網(wǎng)絡
使用認證機構(gòu)建立網(wǎng)絡,設置生產(chǎn)組件和生產(chǎn)網(wǎng)絡。
具體步驟:
步驟1:選定你的網(wǎng)絡配置;
步驟2:為資源設置一個集群;
步驟3:設置 CA節(jié)點
步驟4:用 CA 來創(chuàng)建身份和 MSP
步驟5:部署節(jié)點;創(chuàng)建1個 peer 節(jié)點、創(chuàng)建1個order節(jié)點
步驟6:節(jié)點加入組織,并加入通道。鏈碼就可以安裝在節(jié)點。文章來源:http://www.zghlxwxcb.cn/news/detail-606685.html
小結(jié):
如果我們只是開發(fā)鏈碼(智能合約),測試環(huán)境就足夠了。
如果線上部署,涉及了多節(jié)點,需要了解和運用kafka、Kubernetes、zookeeper等各種分布式技術(shù)和框架。文章來源地址http://www.zghlxwxcb.cn/news/detail-606685.html
到了這里,關(guān)于Hyperledger Fabric 網(wǎng)絡環(huán)境的一點理解的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!