configtx.yaml中的每个定义在Hyperledger fabric v1.0中的含义是什么?

问题描述 投票:2回答:2

这与Hyperledger fabric v1.0网络拓扑有关。从示例中,configtx.yaml包含以下定义:

Profiles:

    TwoOrgsOrdererGenesis:
        Orderer:
            <<: *OrdererDefaults
            Organizations:
                - *OrdererOrg
        Consortiums:
            SampleConsortium:
                Organizations:
                    - *Org1
                    - *Org2
    TwoOrgsChannel:
        Consortium: SampleConsortium
        Application:
            <<: *ApplicationDefaults
            Organizations:
                - *Org1
                - *Org2

主要有两个部分。

  1. TwoOrgsOrdererGenesis这定义了orderer服务和genesis块详细信息。
  2. TwoOrgsChannel这定义了通道详细信息。例如,有多少组织/实体将成为渠道的一部分。

我从文档中了解到的是Consortiums部分定义了组织/实体属于联盟的内容。

我的问题:

  1. 联盟的作用是什么?
  2. Consortium实体是否可以为其自己运行对等节点?
  3. 如果是,如何在这个yaml文件中配置?
  4. <<:line是什么意思?
  5. 什么是应用程序在这种情况下?
  6. 我可以在这个yaml文件中定义多个配置文件吗?

如果有人可以详细解释,请欣赏。

networking hyperledger hyperledger-fabric topology consensus
2个回答
1
投票

我的问题:

联盟的作用是什么?

财团由组织组成。组织包含同行或者订购者。一个渠道与一个财团相匹配,但一个财团可以与许多财团相匹配。

Consortium实体是否可以为其自己运行对等节点?如果是,如何在这个yaml文件中配置?

不,但如果您想定义联盟,您必须获得有关组织的MSP。

<<:line是什么意思?

这是一个YAML语法。

什么是应用程序在这种情况下?

Node.js应用程序之类的通道应用程序。但现在我的频道没有这个部分。

我可以在这个yaml文件中定义多个配置文件吗?

抱歉,我不明白你要为什么定义配置文件。


1
投票

回复“我可以在这个yaml文件中定义多个配置文件吗?”答案是肯定的。正如您在此示例file中所看到的,此处定义了多个配置文件。

配置文件用于定义创世块的配置并定义第一个通道配置事务。在您提供的代码中,TwoOrgsOrdererGenesis应该用作configtxgen命令的参数

configtxgen -profile SampleSingleMSPSolo -channelID sys-channel -outputBlock ./channel-artifacts/genesis.block

而第二个用于生成通道事务的工件

configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID channel-name

在上面的文件中,您可以检查一些不同的配置...我认为这是一个很好的起点,了解网络配置,这仍然是我想要完全弄清楚。

© www.soinside.com 2019 - 2024. All rights reserved.