我知道,只要有法定人数,我的动物园pipe理员合奏就会继续工作。 但是缺less的服务器对集群性能有什么显着的影响?
假设三台服务器中的一台发生故障(并且被破坏)。 我想我可以在没有停机的情况下join一个新的(干净的)服务器,只要它具有与旧服务器相同的服务器id,而另外两个服务器可以连接到它(它们的configuration中具有与旧configuration相同的IP /主机名) ?
第三个服务器“重新同步”的影响是什么(即是否会影响达成共识的速度)? 这个操作通常需要多长时间(与zookeeper中的数据量有关)?
可以(或者应该)我只是从一个现有的服务器复制数据和数据logging? 快照可能是安全的,可以按原样复制,但事务日志可能需要“时间点副本”(我有btrfs CoW,所以这是没有问题的)?
或者更具体地说,我也想知道所有节点上的数据是否相同(除了最新的写入)并且可以互换。 或者是某种程度上存储在服务器ID特定的东西?
使用相同的服务器ID重新join,但没有数据会破坏法定人数。 您需要先从所有剩余的服务器中删除旧的serverID,然后使用新的ID添加新的服务器。