背景: 在 kafka中 有一个指标 kafka.UnderReplicatedPartitions, 这个是用来显示 集群中处于同步失败或者失效状态的分区数.

这个kip讲的是在 reassignment 过程中 URP (under-replicated partition) metrics不准确, 不利于报警的情况。 在 reassignment 的时候, 部分新增的 replica 因为正在同步数据而不再 ISR, 但是broker确认为这些 replica在 URP 中, 导致 hasUnderReplicatedPartitions 不准确. 当前计算方式是: info.isr.size < info.replicas.size, 所以, 在reassignment 情况下, 应该是 info.isr.size < replica - adding, 非 reassignment情况保持不变. 具体的pr: https://github.com/apache/kafka/pull/7361/files.

note: 更多监控参考 https://docs.confluent.io/current/kafka/monitoring.html