fabric网络环境启动过程详解

这篇文章对fabric的网络环境启动过程进行讲解,也就是我们上节讲到的启动测试fabric网络环境时运行network_setup.sh这个文件的执行流程。

attachments-2018-03-9MDlTgOS5aa74ab46b850.png

作者:Tiny熊

来源:博客园

原文链接:http://t.cn/ELoD2h2

本文约1700字+,阅读(观看)需要10分钟

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

这篇文章对fabric的网络环境启动过程进行讲解,也就是我们上节讲到的启动测试fabric网络环境时运行network_setup.sh这个文件的执行流程

fabric网络环境启动过程详解

上一节我们讲到 fabric网络环境的启动测试,主要是使用 ./network_setup.sh up 这个命令,所以fabric网络环境启动的重点就在network_setup.sh这个文件中。接下来我们就分析一下network_setup.sh这个文件

network_setup.sh其中包括两个部分,一个是利用generateArtifacts.sh脚本文件配置组织关系和颁发证书、公/私钥、通道证书等,另一个是docker-compose-cli.yaml用于根据配置启动集群并测试chaincode的示例代码。下面是具体的流程图介绍:

775efa22c18946b488dfbb6e393650d4


首先看下generateArtifacts.sh脚本文件,它包含三个函数,分别是:

1.generateCerts:

该函数使用cryptogen工具根据crypto-config.yaml来生成公私钥和证书信息等。

2.replacePrivateKey:

将docker-compose-e2e-template.yaml文档中的ca私钥替换成具体的私钥。

3.generateChannelArtifacts:

使用configtxgen工具根据configtx.yaml文件来生成创世区块和通道相关信息,更新锚节点。

接着是docker-compose-cli.yaml文件** docker-compose-cli.yaml文件根据组织关系启动docker集群,并在cli容器中执行command命令运行./scripts/script.sh脚本文件。 那./scripts/script.sh脚本具体做了什么呢?

创建channel

  1. joinChannel:将每个peer节点加入channel。
  2. updateAnchorPeers:更新锚节点
  3. installChaincode:部署chaincode。
  4. instantiateChaincode:初始化chaincode。
  5. chaincodeQuery:chaincode查询

另外docker-compose-cli.yaml这个文件还有一个配置项是需要注意的地方,那就是:

file: base/docker-compose-base.yaml

这里的docker-compose-base.yaml其实就是Orderer和peer的基础配置文件,包括指定端口等。### 几个重要的配置文件#### 1.crypto-config.yaml基于crypto-config.yaml(此文件在../fabric/examples/e2e_cli中)**生成公、私钥和证书信息,并保存在crypto-config文件夹中**。

另外crypto-config.yaml还定义了组织成员以及组织下的peer节点个数。 **crypto-config.yaml文件讲解:** 字段Name和Domain就是关于这个组织的名字和域名,这主要是用于生成证书的时候,证书内会包含该信息。

而Template.Count=2是说我们要生成2套公私钥和证书,一套是peer0.org1的,还有一套是peer1.org1的(也就指定了org中存在peer0和peer1两个节点)。最后Users.Count=1是说每个Template下面会有几个普通User(注意,Admin是Admin,不包含在这个计数中),这里配置了1,也就是说我们只需要一个普通用户User1@org1.example.com 我们可以根据实际需要调整这个配置文件,增删Org Users等。

文章发布只为分享区块链技术内容,版权归原作者所有,观点仅代表作者本人,绝不代表区块链兄弟赞同其观点或证实其描述。

attachments-2018-02-kL1zBfXx5a7ffd0b78798.jpg

  • 发表于 2018-12-13 11:18
  • 阅读 ( 2022 )
  • 分类:hyperledger

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
不写代码的码农
社区运营-小以

621 篇文章

作家榜 »

  1. 社区运营-小以 621 文章
  2. 社区运营-小链 238 文章
  3. 于中阳Mercina-zy 79 文章
  4. 涂晶 74 文章
  5. 李晓琼 44 文章
  6. 兄弟连区块链培训 42 文章
  7. 吴寿鹤 36 文章
  8. 刘旷 28 文章