Hyperledger Fabric 1.0 快速搭建 -------- 多機部署準備篇
前言
在這裡我推薦兩位大神的部落格,可以參考或者直接跟著這兩位大神學習,我是閱讀這兩位大神的部落格和《深度探索區塊鏈Hyperledger技術與應用》一書部署的
《深度探索區塊鏈Hyperledger技術與應用》作者:張增駿、董寧、朱軒彤、陳劍雄 著。
在前兩篇文章中介紹瞭如何通過官方示例單機啟動Farbic網路,這篇文章開始是以多機部署,做個筆記以防自己忘掉,也可以分享出來請大家幫我看看哪裡有不對的地方,如果對你有幫助可以點個贊。
博主用的是阿里雲的伺服器、docker版本:Docker version 18.06.0-ce-rc3, build cbfa3d9、Hyperledger Fabric是1.0.1,(這裡用的雖然不是和前兩篇的一樣,但是影響不大,把對應的配置不要弄錯就可以了),如果沒有云伺服器,也可以在本地建立多個虛擬機器。
準備
區塊鏈系統由3類節點組成,核心共識節點(Orderer、Kafka、zookeeper)、CA節點、Peer節點
名稱 | 個數 | 備註 |
共識節點 | 5 | 包含Orderer、Kafka、zookeeper |
CA節點 | 2 | 包含CA、postgres(資料庫) |
Peer節點 | 5 | 包含peer、couchdb(資料庫) |
核心共識節點確定以後不要輕易改變,Peer節點的數量可根據自己的需求增加或減少,CA節點的效能和容量的要求不高,所以一般不需要增加節點
阿里雲伺服器,以下IP地址不是真實IP地址,如果是伺服器上的虛擬機器,IP則替換成你的外網IP地址
名稱 | IP | 節點Hostname | OrdererHostname | KafkaHostname | ZookeeperHostname |
node01 | 192.168.0.101 | peer0.ywhOrg1.example.com | orderer0.ywhExample.com | kafka1.ywhExample.com | zookeeper1.ywhExample.com |
node02 | 192.168.0.102 | peer0.ywhOrg2.example.com | orderer1.ywhExample.com | kafka2.ywhExample.com | zookeeper2.ywhExample.com |
node03 | 192.168.0.103 | peer0.ywhOrg3.example.com | orderer2.ywhExample.com | kafka3.ywhExample.com | zookeeper3.ywhExample.com |
node04 | 192.168.0.104 | peer0.ywhOrg4.example.com | orderer3.ywhExample.com | kafka4.ywhExample.com | zookeeper4.ywhExample.com |
node05 | 192.168.0.105 | peer0.ywhOrg5.example.com | orderer4.ywhExample.com | kafka5.ywhExample.com | zookeeper5.ywhExample.com |
node06 | 192.168.0.106 |
博主練習時的部署方案如下
在node01——node05:peer、kafka、zookeeper、orderer、微服務(可通過這個專案呼叫chaincode)
在node05——node06:CA1、CA2、tools容器
在node06:區塊瀏覽器(可檢視區塊資訊)
開放的埠有
CA:7054、Orderer:7050;Peer:7051-7053;Kafka:9092;Zookeeper:2181、12888、13888;微服務:443;區塊瀏覽器:80;在雲伺服器上要對這些埠進行開放加入安全組,如果是本地虛擬機器的話,把虛擬機器的防火牆關掉即可,不關防火牆的話,在防火牆中開啟這些埠也可以,網上的資料很多,在這裡不做介紹。
開始
1 生成MSP證書
使用cryptogen工具生成證書。MSP證書是超級賬本網路實體的身份標識,實體在通訊和交易時使用證書進行簽名和驗證。生成證書需要crypto-config.yaml配置檔案。
cryptogen使用一個包含網路拓撲的crypto-config.yaml檔案,為文中定義的組織和屬於這些組織的實體生成一組證書和金鑰。每個組織都配置了唯一的根證書(ca-cert),幷包含了特定的實體(peers和orders),這就形成了一種典型的網路結構——每個成員都有所屬的CA。Hyperledger Fabric 網路中的交易和通訊都要使用實體的私鑰簽名,使用公鑰驗證。這個工具在我上一篇文章中提到過,用來生成一些金鑰檔案的,具體的下載方法在這裡不做介紹,因為這篇博文開始用的是Hyperledger Fabric 1.0.1版本的所以這個工具也要下載1.0.1版本的。
1.1 建立配置檔案存放目錄,並下載相關工具
以下操作在任意peer節點上操作即可,生成檔案以後在傳送給其他節點相同目錄下
//建立此目錄並進入此目錄下
[[email protected] /]# mkdir -p u01/chainConfig/
[[email protected] /]# cd u01/chainConfig/
[[email protected] chainConfig]# pwd
/u01/chainConfig
//下載cryptogen工具
[[email protected] chainConfig/]# wget https://nexus.hyperledger.org/content/repositories/releases/org/hyperledger/fabric/hyperledger-fabric/linux-amd64-1.0.1/hyperledger-fabric-linux-amd64-1.0.1.tar.gz | tar xz
//下載以後會在當前目錄下生成一個bin目錄,bin目錄下就是我們要用的工具了
1.2 cryptogen命令說明
cryptogen [<flages>] <command> [<args> ...]
(1)超級賬本金鑰證書生成工具選項
-----help——顯示幫助文件;
-----help-long——顯示詳細的幫助文件
(2)命令
1)顯示幫助文件
help [<command> ...]
2)生成金鑰檔案
generate [<flags>]
--config——指定配置檔案,如果不指定,則使用預設配置(即cryptogen showtemplate中的內容)
--output——生成金鑰證書的目錄,預設為crypto-config
3)showtemplate——顯示版本資訊
4)version——顯示版本資訊
最常用的命令語法是:
cryptogen generate --config=./crypto-config.yaml(根據crypto-config.yaml檔案的配置,生成組織資訊及其金鑰檔案證書等,儲存在crypto-config目錄下)
1.3 生成證書檔案及檔案解析
編寫crypto-config.yaml檔案 chainConfig\crypto-config.yaml
[[email protected] chainConfig/]# vi crypto-config.yaml
#opyright IBM Corp. All Rights Reserved.
#
# SPDX-License-Identifier: Apache-2.0
#
#./cryptogen generate --config=./crypto-config.yaml
# ---------------------------------------------------------------------------
# "OrdererOrgs" - Definition of organizations managing orderer nodes
# 定義排序服務節點的組織
# ---------------------------------------------------------------------------
OrdererOrgs:
# ---------------------------------------------------------------------------
# Orderer 排序服務節點的名稱和域名
# ---------------------------------------------------------------------------
- Name: Orderer
Domain: ywhExample.com //全限定名,我理解的是跟java中的包名類似的性質
EnableNodeOUs: true // EnableNodeOUs 允許節點 OUS -> out of service暫停服務
Template: //按模板生成 Orderer節點的MSP證書
Count: 5 //生成五套 orderer0 - orderer4
Users:
Count: 1 //每一套證書有一個普通使用者 member
# ---------------------------------------------------------------------------
# "Specs" - See PeerOrgs below for complete description
# 手動定義節點名稱,命名規範是:{{.Hostname}}.{{.Domain}} 例如orderer.ywhExample.com
# 如果沒有定義CommonName,自動生成的節點名稱就是:orderer.ywhExample.com
# 如果定義了CommonName,就以CommonName為準
# Hostname可以定義多個
# ---------------------------------------------------------------------------
Specs:
- Hostname: orderer
#-Hostname:orderer1
#CommonName: order.example.net
# ---------------------------------------------------------------------------
# "PeerOrgs" - Definition of organizations managing peer nodes 定義peer節點的組織
# ---------------------------------------------------------------------------
PeerOrgs:
# ---------------------------------------------------------------------------
# Org1 組織Org1的配置
# ---------------------------------------------------------------------------
- Name: ywhOrg1
Domain: ywhOrg1.example.com
EnableNodeOUs: true
#------------------------------------------------------------------------------
# Template——按模板生成Peer節點的MSP證書
# ——預設生成的Peer節點名稱:peer{{.Index}}.{{Domain}}
# ——Index是從Start到Count-1,Start預設是0
# ——Hostname可以自定義節點名稱的規則
# ——Prefix預設是peer
# Template 這個就是生成幾套證書 是從start到count-1套 這裡設定count為2 則生成
# peer0.ywhOrg1.example.com和peer1.ywhOrg1.example.com兩個節點(ywhOrg這個組織中有兩個peer)
# peer0和peer1都是可以部署的,後續我只部署了peer0的。每一個組織下有幾個peer我認為是Template控制的,僅代表個人意見
#
#
#------------------------------------------------------------------------------
Template:
Count: 2
#Start:0
#Hostname:{{.Perfix}}{{.Index}}
#------------------------------------------------------------------------------
# Users——預設生成的使用者數:[email protected]{{.Domain}}
# ——預設生成一個管理員:[email protected]{{.Domain}}
#------------------------------------------------------------------------------
Users:
Count: 1
# ---------------------------------------------------------------------------
# Org2 組織Org2的配置
# ---------------------------------------------------------------------------
- Name: ywhOrg2
Domain: ywhOrg2.example.com
EnableNodeOUs: true
Template:
Count: 2
Users:
Count: 1
# ---------------------------------------------------------------------------
# Org3 組織Org3的配置
# ---------------------------------------------------------------------------
# ---------------------------------------------------------------------------
- Name: ywhOrg3
Domain: ywhOrg3.example.com
EnableNodeOUs: true
Template:
Count: 2
Users:
Count: 1
# ---------------------------------------------------------------------------
# Org4 組織Org4的配置
# ---------------------------------------------------------------------------
- Name: ywhOrg4
Domain: ywhOrg4.example.com
EnableNodeOUs: true
Template:
Count: 2
Users:
Count: 1
# ---------------------------------------------------------------------------
# Org5 組織Org5的配置
# ---------------------------------------------------------------------------
- Name: ywhOrg5
Domain: ywhOrg5.example.com
EnableNodeOUs: true
Template:
Count: 2
Users:
Count: 1
編寫好以後退出儲存,使用命令:./bin/cryptogen generate --config=./crypto-config.yaml 會在當前目錄生成crypto-config資料夾,資料夾下有兩個生成好的目錄,ordererOrganizations和peerOrganizations,它們分別代表排序服務節點和Peer節點的MSP配置資訊,裡面的檔案就不一一詳解了,如果有機會後續的博文中我會列出。
2.生成排序服務創世區塊
有一位博主寫的已經很詳細了,介紹了配置生成工具configtxgen的使用,還有configtx.yaml檔案的解析,來源是《深度探索區塊鏈 Hyperledger技術與應用》---附錄B
在這裡貼上我自己的configtx.yaml檔案:
#######################################################################
#
# 可以編寫不同的 profile 配置,作為引數給 configtxgen 工具使用
# 指定了Consortium(組合、集團、聯盟)profile用來生成orderer的創世區塊
# 帶有正確聯盟成員定義的orderer創世區塊,其通道的建立請求必須帶有組織成員名和聯盟名
# 此配置檔案主要分為3部分:profiles organizations 預設部分:此部分是orderer和Application的配置,如BatchTimeout和一般用作繼承的基礎值
################################################################################
Profiles:
FiveOrgsOrdererGenesis:
Orderer:
<<: *OrdererDefaults
Organizations:
- *OrdererOrg
Consortiums:
SampleConsortium:
Organizations:
- *Org1
- *Org2
- *Org3
- *Org4
- *Org5
FiveOrgsChannel:
Consortium: SampleConsortium
Application:
<<: *ApplicationDefaults
Organizations:
- *Org1
- *Org2
- *Org3
- *Org4
- *Org5
Organizations:
- &OrdererOrg
Name: OrdererOrg
ID: OrdererMSP
MSPDir: crypto-config/ordererOrganizations/ywhExample.com/msp //上面生成的msp路徑
- &Org1
Name: Ywh1OrgMSP
ID: Ywh1OrgMSP
MSPDir: crypto-config/peerOrganizations/ywhOrg1.example.com/msp
AnchorPeers:
- Host: peer0.ywhOrg1.example.com
Port: 7051
- &Org2
Name: Ywh2OrgMSP
ID: Ywh2OrgMSP
MSPDir: crypto-config/peerOrganizations/ywhOrg2.example.com/msp
AnchorPeers:
- Host: peer0.ywhOrg2.example.com
Port: 7051
- &Org3
Name: Ywh3OrgMSP
ID: Ywh3OrgMSP
MSPDir: crypto-config/peerOrganizations/ywhOrg3.example.com/msp
AnchorPeers:
- Host: peer0.ywhOrg3.example.com
Port: 7051
- &Org4
Name: Ywh4OrgMSP
ID: Ywh4OrgMSP
MSPDir: crypto-config/peerOrganizations/ywhOrg4.example.com/msp
AnchorPeers:
- Host: peer0.ywhOrg4.example.com
Port: 7051
- &Org5
Name: Ywh5OrgMSP
ID: Ywh5OrgMSP
MSPDir: crypto-config/peerOrganizations/ywhOrg5.example.com/msp
AnchorPeers:
- Host: peer0.ywhOrg5.example.com
Port: 7051
Orderer: &OrdererDefaults
OrdererType: kafka //如果是kafka叢集部署,這裡要寫kafka,單節點是solo
Addresses:
- orderer0.ywhExample.com:7050
- orderer1.ywhExample.com:7050
- orderer2.ywhExample.com:7050
- orderer3.ywhExample.com:7050
- orderer4.ywhExample.com:7050
#Bath Timeout:建立batch的超時時間
BatchTimeout: 2s
#控制batch到塊中的訊息數
BatchSize:
# Max Message Count: batch中允許的最大訊息數量
MaxMessageCount: 100
#如果OrdererType 是kafka,則要設定Kafka brokers的'message.max.bytes'和'replica.fetch.max.bytes'的值大於該值
AbsoluteMaxBytes: 99 MB
#Preferred Max Bytes: batch中允許的首選絕對最大序列化訊息位元組數
#如果一個訊息大於該值,會導致batch 大於該值
PreferredMaxBytes: 512 KB
Kafka:
Brokers:
- kafka1.ywhExample.com:9092
- kafka2.ywhExample.com:9092
- kafka3.ywhExample.com:9092
- kafka4.ywhExample.com:9092
- kafka5.ywhExample.com:9092
Organizations:
Application: &ApplicationDefaults
Organizations:
在上述配置檔案中,根據需求的配置修改配置檔案,例如配置需要5個Org,每個Org中需要注意的配置項有Org的名稱,Org的MSPID,MSPdir是一個完整的配置目錄。還有就是AnchorPeer的地址和埠。
建立以上配置檔案生成的檔案的目錄以及生成創世區塊等檔案
[[email protected] ~]# mkdir channel-artifacts
[[email protected] ~]# cd /u01/chainConfig
//配置環境變數 設定FABRIC_CFG_PATH環境變數告訴configtxgen去哪個目錄尋找configtx.yaml檔案
[[email protected] ~]# export FABRIC_CFG_PATH=$(pwd)
//建立genesis.block 排序服務節點使用的創世區塊
[[email protected] ~]# ./bin/configtxgen -profile FiveOrgsOrdererGenesis -outputBlock ./channel-artifacts/genesis.block
//建立onbchannel.tx 通道的名字或者ID -channelID 這個後面寫的全部小寫,不要帶有特殊字元,要不到後面巨坑
[[email protected] ~]# ./bin/configtxgen -profile FiveOrgsChannel -outputCreateChannelTx ./channel-artifacts/ywhchannel.tx -channelID ywhchannel
//生成組織錨節點 通道中的組織錨節點 咱們有5個 所以要執行五次這個命令,把相應的改掉,這個跟上面的配置檔案中配置是相對應的,應該不難看出
[[email protected] ~]# ./bin/configtxgen -profile FiveOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Ywh1OrgMSPanchors.tx -channelID ywhchannel -asOrg Ywh1OrgMSP
[[email protected] ~]# ./bin/configtxgen -profile FiveOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Ywh2OrgMSPanchors.tx -channelID ywhchannel -asOrg Ywh2OrgMSP
[[email protected] ~]# ./bin/configtxgen -profile FiveOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Ywh3OrgMSPanchors.tx -channelID ywhchannel -asOrg Ywh3OrgMSP
[[email protected] ~]# ./bin/configtxgen -profile FiveOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Ywh4OrgMSPanchors.tx -channelID ywhchannel -asOrg Ywh4OrgMSP
[[email protected] ~]# ./bin/configtxgen -profile FiveOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Ywh5OrgMSPanchors.tx -channelID ywhchannel -asOrg Ywh5OrgMSP
//執行完以上命令以後 在channel-artifacts檔案目錄
[[email protected] channel-artifacts]# pwd
/u01/chainConfig/channel-artifacts
[[email protected] channel-artifacts]# ll
-rw-r--r-- 1 root root 18290 Sep 10 18:02 genesis.block
-rw-r--r-- 1 root root 296 Sep 10 18:04 Ywh1OrgMSPanchors.tx
-rw-r--r-- 1 root root 296 Sep 10 18:05 Ywh2OrgMSPanchors.tx
-rw-r--r-- 1 root root 296 Sep 10 18:05 Ywh3OrgMSPanchors.tx
-rw-r--r-- 1 root root 296 Sep 10 18:05 Ywh4OrgMSPanchors.tx
-rw-r--r-- 1 root root 296 Sep 10 18:05 Ywh5OrgMSPanchors.tx
-rw-r--r-- 1 root root 505 Sep 10 18:02 ywhchannel.tx
到此多機部署的準備已經完成,把以上生成的檔案及目錄全部拷貝到每一個伺服器上的相同目錄下。
總結
在這次配置區塊鏈的證書檔案和區塊鏈的初始配置檔案中,我理解了.....................................................實在是總結不了()
1.學會了MSP生成工具cryptogen的使用,Fabric網路中的實體之間交易和通訊都是要使用私鑰、公鑰,根證書可以給其它簽發證書,被稱為中間證書。根證書是由配置檔案中生成的,實現自簽名證書。根證書有兩種,一種是CA根證書,一種是TLS根證書。
總結的好垃圾,腦子裡完全不知道該總結點什麼.....
相關推薦
Hyperledger Fabric 1.0 快速搭建 -------- 多機部署準備篇
前言 在這裡我推薦兩位大神的部落格,可以參考或者直接跟著這兩位大神學習,我是閱讀這兩位大神的部落格和《深度探索區塊鏈Hyperledger技術與應用》一書部署的 《深度探索區塊鏈Hyperledger技術與應用》作者:張增駿、董寧、朱軒彤、陳劍雄 著。 在前兩
Hyperledger Fabric 1.0 快速搭建 -------- 多機部署 核心共識節點Orderer
前言 在這裡我推薦兩位大神的部落格,可以參考或者直接跟著這兩位大神學習,我是閱讀這兩位大神的部落格和《深度探索區塊鏈Hyperledger技術與應用》一書部署的 《深度探索區塊鏈Hyperledger技術與應用》作者:張增駿、董寧、朱軒彤、陳劍雄 著。 上一篇
Hyperledger Fabric 1.0網路搭建
自己組建一個Fabric網路, 網路結構如下: 排序節點 1 個 組織個數 2 個, 分別為go和cpp, 每個組織分別有兩個peer節點, 使用者個數為3 機構名稱 組織識別符號 組織ID Go學科 org_go OrgGoMSP CP
hyperledger fabric 1.0環境搭建出錯記錄
cp: cannot stat 'build/docker/gotools/bin/protoc-gen-go': No such file or directory(找不到protoc-gen-go檔案) 編譯生成 protoc-gen-go #編譯生成 protoc-g
超級記賬本學習筆記:Hyperledger Fabric 1.0環境搭建,及執行e2e的問題
Cannot run peer because cannot init crypto, missing /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/[ema
Hyperledger Fabric 1.0 快速部署
Hyperleger Fabric的快速部署是通過從Docker Hub上拉取已經部署好環境的映象來完成的,由於在國內受到GFW的限制,所以安裝過程很緩慢,甚至會發生失敗,希望大家做好心理準備。下面我要開始表演了… … ====================
超級記賬本:快速搭建一個Hyperledger Fabric 1.0的環境 (親測有效)
下面開始我們的環境搭建工作: 1. 使用VirtualBox並在其中安裝好Ubuntu 這一步其實沒啥好說的,下載好最新版的VirtualBox,下載Ubuntu Server,我用的是Ubuntu16.04.2 X64 Server。在安裝完Ubuntu後,需要保證apt source是國內的,不然如
Hyperledger Fabric 1.0 從零開始(六)——創建Fabric多節點集群
_id 測試 es2017 xtra 去掉 compose 多個 服務 執行命令 4:創建Fabric多節點集群 4.1、配置說明 首先可以根據官方Fabric自帶的e2e_cli列子中的集群方案來生成我們自己的集群,與案例不同的是我們需要把容器都分配到不同的服務器上,彼此
Hyperledger Fabric 1.0 從零開始(八)——Fabric多節點叢集生產部署
6.1、平臺特定使用的二進位制檔案配置 該方案與Hyperledger Fabric 1.0 從零開始(五)——執行測試e2e類似,根據企業需要,可以控制各節點的域名,及聯盟鏈的統一域名。可以指定單獨節點的訪問,生成指定的公私鑰、證書等檔案。具體的引數配置可以參考generateArtifacts.sh檔案,
Hyperledger Fabric 1.0 實戰開發系列 第二課 Fabric環境搭建
一.安裝GO語言 下載最新版的go 開啟Terminal,輸入命令(以下命令都是以root管理員的角色進行的) su 輸入密碼:***** wget https://storage.googleapi
在Ubuntu 16.04 上搭建Hyperledger Fabric 1.0
2017-05-16 17:08:01.366 UTC [msp] GetLocalMSP -> DEBU 004 Returning existing local MSP 2017-05-16 17:08:01.366 UTC [msp] GetDefaultSigningIdentity ->
HyperLedger Fabric 1.0的Transaction處理流程
toa 足夠 余額 無法 -1 ber pla client ack 如果把區塊鏈比作一個只能讀寫,不能刪改的分布式數據庫的話,那麽事務和查詢就是對這個數據庫進行的最重要的操作。以比特幣來說,我們通過錢包或者Blockchain.info進行區塊鏈的查詢操作,而轉賬行為就是
Hyperledger Fabric 1.0 從零開始(二)——公網環境構建
1.3 項目 htm move 自己 lvm2 fast 情況 tor 1:環境構建 在本文中用到的宿主機環境是Centos ,版本為Centos.x86_647.2,通過Docker 容器來運行Fabric的節點,版本為v1.0。因此,啟動Fabric網絡中的節點需要先安
Raid 1+0快速搭建
mage 還要 raid 1 51cto 需要 mar src 所有 uil 簡介: RAID1+0是一種磁盤陣列的組建方式,讀的速度和RAID0+1一樣。 先對磁盤做mirror,然後對整個mirror組做條帶化; 比如8塊盤 需要分成4個基組,每個基組2塊盤; 每個基組
hyperledger fabric 1.0 原始碼分析之peer chaincode upgrade
描述 peer chaincode upgrade命令用於對chaincode升級。 定義 func upgradeCmd(cf *ChaincodeCmdFactory) *cobra.Command { chaincodeUpgradeCmd = &cob
【鏈塊技術55期】超級賬本Fabric教程(三):Hyperledger Fabric 1.0架構及原理
原文連結:超級賬本Fabric教程(三):Hyperledger Fabric 1.0架構及原理 如果說以比特幣為代表的貨幣區塊鏈技術為 1.0,以以太坊為代表的合同區塊鏈技術為 2.0,那麼實現了完備的許可權控制和安全保障的 Hyperledger 專案毫無疑問代表著區塊鏈技
Hyperledger Fabric 1.0 Peer操作命令
1.建立通道 $ peer channel create [flags], 常用引數為: `-o, --orderer: orderer節點的地址 `-c, --channelID: 要建立的通道的ID, 必須小寫, 在250個字元以內 `-f, --fi
Hyperledger Fabric 1.0 從零開始(五)——執行測試e2e
3:執行測試e2e 3.1、執行fabric-samples的問題說明 該問題說明能夠解決6.1、平臺特定使用的二進位制檔案配置第一步的問題。可以選擇繼續閱讀該說明,或者等參考到6.1小節時再反向閱讀本說明,具體在6.1中會重新指向本步驟。 一般情況下,我們會參照官網來完成第一個網路測試,在該線上文件中會讓我
區塊鏈基礎知識系列 第四課Hyperledger fabric 1.0網路組成及構建流程
一、fabric網路結構(暫時不包括CA) 如上圖所示,在fabric網路中,O表示Orderer,P代表Peer,EP代表Endorsing Peer(endorser),CC代表Cha
Hyperledger Fabric 1.0 例項簡析 第一課 network_setup.sh分析
以fabric-samples/balance-transfer例子:1. 具體流程fabric/examples/e2e_cli目錄下存有檔案network_setup.sh用於一鍵部署環境並測試chaincode示例程式碼。其中包括兩個部分,一個是利用generateAr