這篇文章主要介紹Fabric2.0啟動網(wǎng)絡腳本配置的示例分析,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
網(wǎng)站建設哪家好,找成都創(chuàng)新互聯(lián)!專注于網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、成都小程序開發(fā)、集團企業(yè)網(wǎng)站建設等服務項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了什邡免費建站歡迎大家使用!
查看byfn.sh找到up模式主要做了什么,如下圖可見,執(zhí)行networkUp這個function來實現(xiàn)fabric網(wǎng)絡啟動。

接下來進入networkUp詳細閱讀:
networkUp這個function里面核心腳本主要為以上紅色框住的部分,分別為: 1. 檢查二進制文件是否可用以及對應版本docker鏡像是否存在。 2. 假如當前sh所在父目錄不存在crypto-config目錄就執(zhí)行生成區(qū)塊、通道以及證書腳本,詳情請查看Fabric2.0 first-network 生成配置說明 3. 使用docker-compose命令啟動fabric網(wǎng)絡。 4. 加載go合約依賴包 5. 使用cli客戶端執(zhí)行腳本操作
其中在默認條件下啟動yaml文件包括: docker-compose-cli.yaml docker-compose-etcdraft2.yaml
為了看清楚docker-compose-cli.yaml具體啟動了什么,我們將文件拆分執(zhí)行 首先打開控制臺,輸入以下命令
cd first-network docker-compose -f docker-compose-cli.yaml up -d 2>&1
執(zhí)行結(jié)果如下圖所示:
總共啟動了6個容器分別是: 5個排序節(jié)點中的其中一個節(jié)點 orderer.example.com
兩個組織org1、org2的節(jié)點 - peer0.org1.example.com- peer1.org1.example.com- peer0.org2.example.com- peer1.org2.example.com
fabric客戶端 cli
orderer.example.com 從排序節(jié)點入手: 一般來說,我會從啟動日志入手,先看結(jié)果再看配置,打開控制臺,輸入以下命令
docker logs -f orderer.example.com --tail=300
控制臺輸出了orderer.example.com的啟動日志如下
由于太長我分開幾個部分來說
(1)排序節(jié)點配置項輸出: 排序節(jié)點啟動的時候,會根據(jù)環(huán)境變量輸出相應的配置,包括證書配置、監(jiān)聽端口配置等,
而這些配置對應就是docker-compose-cli.yaml的以下配置:
我們繼續(xù)追蹤base/docker-compose-base.yaml,找到orderer.example.com服務
從上圖來看,orderer的配置還是引入peer-base.yaml中的orderer-base服務

從上圖來看與日志輸出配置匹配,就是yaml里面加了ORDERER_前綴,其余配置的修改也可通過這種方式。詳細排序節(jié)點配置說明,晚點補充。
(2)加載創(chuàng)始區(qū)塊,啟動排序節(jié)點。
好的系統(tǒng)的一個好的日志輸出,fabric的日志輸出還是很優(yōu)秀的,從日志輸出可以跟蹤排序節(jié)點啟動究竟干了什么,通過上圖日志輸出,可以讀到:
1.根據(jù)1的配置初始化排序節(jié)點 2. 創(chuàng)建本地賬本目錄 3. 設置排序節(jié)點服務監(jiān)聽端口 4. 根據(jù)創(chuàng)始區(qū)塊文件初始化本地賬本 5. 啟動fabric系統(tǒng)通道 6. 啟動raft服務
(3)raft服務啟動
上圖已經(jīng)標識了核心日志并且進行說明,有一點還是很清晰的就是,(對于沒仔細研究fabric2.0 raft的人來說)一個通道就是一個raft服務集群。紅色的日志是錯誤,在分配完raft集群節(jié)點后,其余節(jié)點沒啟動,所以都是失敗的,后面一直在做重連操作。
以上就是orderer.example.com啟動剖析過程。
然后我們來看以下peer0.org1.example.com 打開控制臺,輸入以下命令
docker logs -f peer0.org1.example.com --tail=300
控制臺輸出結(jié)果如下:
peer節(jié)點啟動主要是 1. 啟動peer grpc服務 2. 初始化gossip服務 3. 初始化本地賬本 4. 安裝系統(tǒng)鏈碼,這里比起1.x,2.0多了一個系統(tǒng)鏈碼就是_lifecycle,是跟智能合約相關的鏈碼,我們下一篇進行詳解。 5. 基于gossip對同組織節(jié)點進行交互
同樣的套路,首先打開控制臺,輸入以下命令:
cd first-network docker-compose -f docker-compose-etcdraft2.yaml up -d 2>&1
控制臺輸出結(jié)果如下:
由上圖可知,主要啟動了其余4個排序節(jié)點
先不看新啟動的排序節(jié)點,查看原本開始啟動的orderer.example.com 控制臺輸入以下命令
docker logs --tail=300 -f orderer.example.com
控制臺輸出結(jié)果如下:
由日志可以觀察到,orderer.example.com以及成功連接其他raft節(jié)點,并且在raft 的term2 leader 從orderer.example.com (0)變成orderer5.example.com(5)
接下來我們看一下orderer5.example.com節(jié)點的情況 控制臺輸入以下命令:
docker logs --tail=300 -f orderer5.example.com
控制臺輸出:
由日志可見,在term2 經(jīng)過一輪投票后,orderer5獲得5票回應成為了term2的raft leader。 整體網(wǎng)絡處于完全啟動狀態(tài)。

以上是“Fabric2.0啟動網(wǎng)絡腳本配置的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
網(wǎng)站標題:Fabric2.0啟動網(wǎng)絡腳本配置的示例分析
本文路徑:http://www.chinadenli.net/article32/gjoesc.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄、響應式網(wǎng)站、軟件開發(fā)、ChatGPT、關鍵詞優(yōu)化、網(wǎng)站維護
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)