我正在调查 docker
配置文件,在peer环境中找到两个参数如下图:
environment:
- CORE_PEER_ID=peer0.org1.example.com
- CORE_PEER_ADDRESS=peer0.org1.example.com:7051
- CORE_PEER_GOSSIP_BOOTSTRAP=peer1.org1.example.com:7051
- CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.org1.example.com:7051
- CORE_PEER_LOCALMSPID=Org1MSP
谁能解释一下有两个变量 CORE_PEER_GOSSIP_BOOTSTRAP & CORE_PEER_GOSSIP_EXTERNALENDPOINT 作品。在奇数对等点的情况下如何配置它们。
详细的解释将不胜感激。
最佳答案
Gossip 可以只在同一组织的对等点之间使用,也可以在不同组织的对等点之间使用。它始终适用于特定 channel 。
1) 单个组织中的同行之间的通信
2)不同组织的同行之间的交流
为了让 gossip 真正发挥作用,它需要能够获取自己组织中的对等点以及其他组织中的对等点的端点信息。
CORE_PEER_GOSSIP_BOOTSTRAP 用于引导组织内的八卦。如果您使用 gossip,您通常会将组织中的所有对等点配置为指向初始对等点集以进行引导(您可以指定以空格分隔的对等点列表)。当然,对等点也可以从不同的对等点引导,但在这种情况下,您只需要确保所有对等点都有引导路径。组织内的对等点通常会在其内部端点上进行通信(这意味着您不必公开组织中的所有对等点)。当 peer 联系 bootstrap peer 时,它会传递它的端点信息,然后使用 gossip 在组织中的 peer 之间分发有关组织中所有 peer 的信息。
为了使对等点能够跨组织进行通信,再次需要某种类型的引导信息。初始跨组织引导信息是通过 channel 配置中的“ anchor 对等点”设置提供的。这允许加入 channel 的对等点也可以发现 channel 上的其他对等点。但很明显,最初组织中的对等点只会知道那里组织的 anchor 对等点。如果您想让您组织中的其他对等节点为其他组织所知,则需要设置 CORE_PEER_GOSSIP_EXTERNALENDPOINT 属性(property)。如果没有设置,那么关于对等点的端点信息将不会被广播给其他组织中的对等点,事实上 - 该对等点只会被它自己的组织知道。
关于hyperledger-fabric - Hyperledger Fabric GOSSIP_BOOTSTRAP & GOSSIP_EXTERNALENDPOINTS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51377474/