如何在有两个组织的网络中有一个有1个组织的财团?

时间:2019-10-11 14:29:32

标签: hyperledger-fabric blockchain hyperledger

我正在设置一个由两个组织(后面的3个组织)组成的服务器,如以下链接所示:https://hyperledger-fabric.readthedocs.io/en/release-1.4/network/network.html

但是,财团不得包含两个组织(Org1和Org2),而只能包含组织1(Org1),如下图所示:https://imgur.com/a/gcBcINq

在我的configtx.yaml文件中,将SampleConsortium值设置为如下:

Profiles:

    TwoOrgsOrdererGenesis:
        <<: *ChannelDefaults
        Orderer:
            <<: *OrdererDefaults
            Organizations:
                - *OrdererOrg
            Capabilities:
                <<: *OrdererCapabilities
        Consortiums:
            SampleConsortium:
                Organizations:
                    - *Org1
                    # - *Org2
    TwoOrgsChannel:
        Consortium: SampleConsortium
        <<: *ChannelDefaults
        Application:
            <<: *ApplicationDefaults
            Organizations:
                - *Org1
                - *Org2
            Capabilities:
                <<: *ApplicationCapabilities

所以我定义一个由单个组织Org2组成的财团。

但是,当用代码行实例化我的频道时

peer channel create -o orderer.example.com:7050 -c $CHANNEL_NAME -f./channel-artifacts/channel.tx --tls --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example. com-cert.pem

屏幕上显示一条错误消息,告诉我:错误:出现意外状态:BAD_REQUEST-试图包括一个不在财团中的成员

您是否有一个想法,可以在联盟中只有一个组织来建立我的频道?

非常感谢您的回答:)

PS:这是我的第一个有关Hyperledger Fabric的项目,因此,我仍然对这项技术感到“陌生”。但是,在我看来,没有迹象表明一个财团不应有至少两个组织。

2 个答案:

答案 0 :(得分:0)

您必须从TwoOrgsChannel配置文件中评论Org2。那么您就可以创建我的频道了,您可以通过更新频道配置来添加Org2,以获取更多详细信息,您可以参考文档https://hyperledger-fabric.readthedocs.io/en/release-1.4/channel_update_tutorial.html

答案 1 :(得分:0)

非常感谢,您的解决方案成功了。但是,我只能在频道中添加Org1组织。如果我在Org2行上发表评论,则会出现错误

Error: got unexpected status: BAD_REQUEST -- error validating channel creation transaction for new channel 'mychannel', could not succesfully apply update to template configuration: error authorizing update: error validating DeltaSet: policy for [Group]  /Channel/Application not satisfied: implicit policy evaluation failed - 0 sub-policies were satisfied, but this policy requires 1 of the 'Admins' sub-policies to be satisfied

我的 configtx.yaml 文件如下所示:

Profiles:

    TwoOrgsOrdererGenesis:
        <<: *ChannelDefaults
        Orderer:
            <<: *OrdererDefaults
            Organizations:
                - *OrdererOrg
            Capabilities:
                <<: *OrdererCapabilities
        Consortiums:
            SampleConsortium:
                Organizations:
                    - *Org1
                    - *Org2
    TwoOrgsChannel:
        Consortium: SampleConsortium
        <<: *ChannelDefaults
        Application:
            <<: *ApplicationDefaults
            Organizations:
               # - *Org1
                 - *Org2
            Capabilities:
                <<: *ApplicationCapabilities