Kafka 0.8 相对稀缺的文档没有提到平衡代理上现有主题、分区和副本的预期行为是什么。
更具体地说,经纪人到达和经纪人(领导者与否)崩溃时的预期行为是什么?
谢谢。
Kafka 0.8 相对稀缺的文档没有提到平衡代理上现有主题、分区和副本的预期行为是什么。
更具体地说,经纪人到达和经纪人(领导者与否)崩溃时的预期行为是什么?
谢谢。
我不久前已经测试了这两个案例,并且没有承受重负载。我有一个生产者在一个由 2 个代理组成的集群上同步发送 10k 条消息(只是一个小字符串)到一个主题,复制因子为 2,有 2 个分区。有2个消费者。每个组件都部署在单独的机器上。我观察到的是:
在正常操作中:代理 1 是分区 1 上的领导者和分区 2 上的副本。代理 2 是分区 2 上的领导者和分区 1 上的副本。将代理 3 带入集群不会自动触发分区上的重新平衡。
在经纪人复兴(崩溃而不是重新启动):重新平衡对生产者和消费者是透明的。重新启动的代理首先复制日志,然后使其自身可用。
经纪人崩溃(领导者与否) :由任何一个经纪人上的kill -9模拟。生产者和消费者被冻结,直到被终止代理的 ZK 中的临时节点过期。之后,操作恢复正常。