从 Hyperledger Fabric 通道中的 OrdererAddresses 部分删除大部分订购者

Removing majority of orderers from OrdererAddresses section in channel in Hyperledger Fabric

考虑以下情况:

  1. 我是运行fabric-samples/first-network在RAFT模式下的HLF
  2. 我使用 CLI 容器获取 mychannel 的最新区块,并通过删除 4 个排序节点来编辑 OrdererAddresses 部分,即 orderer2.example.comorderer3.example.comorderer4.example.com, orderer5.example.com 来自它.

我假设这会扰乱 RAFT 协议,因为排序节点应该通过查看 OrdererAddresses 部分中的端点来相互通信。

现在的问题是,尽管存在上述事实,RAFT 仍能正常工作。我等待 10 minutes,假设 RAFT 会在 EvictionSuspicion 超时后中断,因为不再有领导者可以与其他排序者通信。但这不会发生。我仍然能够从 mychannel 读取块,并且我能够在该通道的链码上提交新交易(invoke 操作)。

这意味着OrdererAddresses在通信时没有被查看。如果我错了,请纠正我。据此,我需要知道:

RAFT 通道中 OrdererAddresses 部分的确切功能是什么?

I learnt that RAFT orderers communicate to one another using the host and port properties of the Consenters section for the purpose of consensus messages. The endpoints present in the OrdererAddresses section are used for replication of blocks.

学习可以从 here 得到验证,正如 Yacov M.

的回答