Hyperledger Fabric(四)first-network案例中的主要配置文件及主要脚本

﹥>﹥吖頭↗ 提交于 2020-03-04 02:50:06

主要配置文件:

1.crypto-config.yaml

Cryptogen工具使用该文件生成“密码材料”,即Fabric网络中各种实体(peer、order、ca)所需的证书及密钥。crypto-config.yaml包含网络拓扑结构定义,Cryptogen以其为基础为组织(包括order)和属于这些组织的组件(peer和ca)生成证书及密钥。该配置文件中的“count”变量用来指定每个组织的对等点数量,文件的其余部分较容易理解。

cryptogen generate --config=./crypto-config.yaml   #运行该工具后,这些证书将被放置在一个名为“crypto-config”的文件夹中。

2.configtx.yaml

configtx.yaml包含一个联盟网络(通道)的定义。该文件首先指定每个成员组织的MSP目录的位置(order创世区块中需要存储成员组织的根证书)、组织的锚节点等。然后指定了一个联盟(联盟中可以创建多个通道)由哪些组织构成,以及order服务的相关配置(共识类型,区块大小等)。此外该文件还规定了系统通道和普通通道的一些访问控制策略。

configtxgen工具基于configtx.yaml配置文件创建四个工件:genesis.block,channel.tx,Org1MSPanchors.tx,Org2MSPanchors.tx。genesis.block为系统通道(由所有order节点维护)的创世区块,后三者分别为创建通道,设置ORG1、ORG2的锚节点(锚节点为某组织对order可见的节点)的系统事务,Fabric的配置操作作为系统事务提交到系统通道中。

export FABRIC_CFG_PATH=$PWD   #告诉configtxgen从哪里寻找configtx.yaml文件

configtxgen -profile SampleMultiNodeEtcdRaft -channelID byfn-sys-channel -outputBlock ./channel-artifacts/genesis.block   #生成系统通道创世区块genesis.block

export CHANNEL_NAME=mychannel   #通过环境变量设定通道名称

configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID $CHANNEL_NAME   #创建 通道配置 事务

configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org1MSPanchors.tx -channelID $CHANNEL_NAME -asOrg Org1MSP   #创建 更新组织Org1在该通道上的锚节点 的事务

主要脚本:

1.ccp-generate.sh

fabcar案例中,startFabric.sh脚本中在使用cryptogen工具为组织生成证书后,调用该脚本生成CCP文件,生成的CCP文件有json和yaml两种格式。CCP文件的用处还不太明确,貌似是SDK连接区块链网络时所需要的文件,后续更新。

configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org2MSPanchors.tx -channelID $CHANNEL_NAME -asOrg Org2MSP   #创建 更新组织Org2在该通道上的锚节点 的事务

生成的四个配置组件位于channel-artifacts目录下

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!