MSK中关于Broker故障恢复的两个疑问

0

【以下的问题经过翻译处理】 假设我的MSK集群设置如下: Brokers: 3 AZ: 3 RF: 3 MinISR: 1 Ack: all

问题1:如果一个Broker正在升级,那么Kafka会重新分配一些分区的Leader到其他Broker吗。升级后,Leader会再次重新分配,以便所有代理都像升级前一样被使用吗?

问题2:如果1个可用区(AZ1)出现故障,我理解Kafka将自动将分区重新分配给其他两个可用区的Broker,而不会影响生产者和消费者。当AZ1恢复后,MSK会自动创建或者重启失败的Broker并重新分配分区吗?

profile picture
专家
已提问 5 个月前50 查看次数
1 回答
0

【以下的回答经过翻译处理】 您好: 问题1:如果一个Broker正在升级,那么Kafka会重新分配一些分区的Leader到其他Broker吗。升级后,Leader会再次重新分配,以便所有代理都像升级前一样被使用吗? *升级将依次在每个Broker上进行。例如,在三个Broker群集中,当Broker1正在升级时,Broker1包含的所有分区的Leader将被重新分配给Broker2和Broker3。当升级完成且所有3个经纪人都处于活动状态时,将根据Broker配置参数“leader.imbalance.per.broker.percentage”(默认为10%)验证当前分区Leader比例与Broker相应分配Leader,因此在升级后,所有Broker都会再次获取Leader分配。

问题2:如果1个可用区(AZ1)出现故障,我理解Kafka将自动将分区重新分配给其他两个可用区的Broker,而不会影响生产者和消费者。当AZ1恢复后,MSK会自动创建或者重启失败的Broker并重新分配分区吗? *这是正确的,一旦AZ恢复,失败的Broker将被重新启动并添加到现有的群集拓扑中,然后分区Leader将自动分配。

profile picture
专家
已回答 5 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则