kafka 故障: 监控出现 offline partition 1个和大量under replicated 状态分区.

  • Post author:
  • Post category:其他


概念:


失效副本

:   在 ISR 集合之外,也就是处于同步失效或功能失效(比如副本处于非存活状态)的副本统称为失效副本。

当 ISR 集合中的一个 follower 副本滞后 leader 副本的时间超过此参数指定的值时(replica.lag.time.max.ms 参数的默认值为10000)则判定为同步失败,需要将此 follower 副本剔除出 ISR 集合。

这些follower副本处于同步失效状态。


Under Replicated Partition

:    具有

失效副本

的分区即为

Under Replicated Partition


offline  partition :

partition的leader挂了,    状态为OfflinePartition;



什么场景下会出现offline partition?


1

The brokers with replicas are down.

某个节点brokern宕机。  该节点上的leader partition 瞬间挂掉,  立即出现大量offline partition. 随着leader partition的重新选举, offline partition的数量会迅速减少甚至消失。

2 Unclean leader election is disabled and the replicas aren’t in sync.

当参数unclean.leader.election.enable=false 时, 如果某个leader patition 挂掉,但是重新选举leader失败。那么此topic将永远处于offline状态。

试想: 当某个topic的副本都不在sync列表,  代表副本落后leader 太多。leader挂掉,此时kafka将不允许不在sync列表中的副本partition成为leader. 除非设置 unclean.leader.election.enable=true,但是此时会导致数据丢失。

所以出现offline partition一般是节点故障,但是其它节点副本又落后leader太多导致。

1 CDH Kafka实例出现红色告警offline partition

2  查看CDH 图表实例:发现从4月14号3:20 ,到今天4月15号一直保持offline partitions数量和under replicated数量不变。

3  在命令行查看under replicated parttion 状态的topic

./kafka-topics.sh –describe –zookeeper sz-xx-01:2181   –under-replicated-partitions

通过上述命令 发现, topic relication都是 【90 91 92】 , 但是ISR清单都是只有 【90, 92 】。91 没有在leader分区。

基本断定broker id91所在节点 SZ-XX-02 有问题。

4 在节点 SZ-XX-02 查看broker id 相关日志。 时间起点  4月14号 3:20左右。

/var/log/kafka/kafka-broker-sz-xx-02.log, 找到4月14号3点20左右的信息。

发现当时出现了 磁盘空间不足:  /data2/local/kafaka路径,检查磁盘空间,目前已经有剩余空间了。

5  原因分析:  经上述步骤,基本断定,因为broker 91 磁盘空间空间不足,导致该节点当时的所有副本都变为 under replicated状态。  但是磁盘空间后来变的充足了, 并没有自动恢复。

重启broker id 91,  所有问题解决, under replicated状态的分区1分钟左右慢慢显示正常。offline partition分区也恢复。

91也均衡的变为leader parttion



版权声明:本文为peidezhi原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。