Kafka3.0.0版本——Follower故障处理细节原理

目录

一、服务器信息

  • 三台服务器

    原始服务器名称 原始服务器ip 节点
    centos7虚拟机1 192.168.136.27 broker0
    centos7虚拟机2 192.168.136.28 broker1
    centos7虚拟机3 192.168.136.29 broker2

二、服务器基本信息及相关概念

2.1、服务器基本信息

  • 首先,分别有3台服务器分别为broker0、broker1、broker2,其中一台为leader,2台follower服务器。每台服务器已经接收到数据,如下图所示:

2.2、LEO的概念

  • LEO(Log End Offset):每个副本的最后一个offset,LEO其实就是最新的offset + 1

2.3、HW的概念

  • HW(High Watermark ):高水位线,所有副本中最小的LEO+1。如下图中每个broker都有的数据是4(即最小的LEO为4),HW为最小的LEO+1,

三、Follower故障处理细节

  • Follower发生故障后会被临时踢出ISR,如下图所示:

  • 这个期间broker0中的Leader和broker1Follower继续接收数据,HW和LEO位置会随着接收数据的变化而变化,如下图所示:

  • 待该Follower恢复后,Follower会读取本地磁盘记录的上次的HW,并将log文件高于HW的部分截取掉,从HW开始向Leader进行同步。

  • 等该Follower 的LEO 大于等于该Partition 的HW,即Follower追上Leader之后,就可以重新加入ISR了,如下图所示:
相关推荐
&&月弥4 小时前
三大开源消息队列(Kafka、RabbitMQ、RocketMQ)使用教程
kafka·开源·rabbitmq
百锦再14 小时前
Java 并发编程进阶,从线程池、锁、AQS 到并发容器与性能调优全解析
java·开发语言·jvm·spring·kafka·tomcat·maven
我真会写代码18 小时前
从入门到精通:Kafka核心原理与实战避坑指南
分布式·缓存·kafka
一叶飘零_sweeeet20 小时前
击穿 Kafka 高可用核心:分区副本、ISR 机制与底层原理全链路拆解
分布式·架构·kafka
indexsunny2 天前
互联网大厂Java面试实战:从Spring Boot到微服务架构的深度解析
java·spring boot·spring cloud·kafka·prometheus·security·microservices
睡醒的土豆2 天前
解决 Kafka 管理工具中文乱码问题
分布式·kafka
殷紫川2 天前
击穿 Kafka 高可用核心:分区副本、ISR 机制与底层原理全链路拆解
架构·kafka
岁岁种桃花儿2 天前
Flink从入门到上天系列第二十五篇:Flink和Kafka连接时的精准一次性
大数据·flink·kafka
七夜zippoe2 天前
消息队列选型:Kafka vs RabbitMQ vs Redis 深度对比
redis·python·kafka·消息队列·rabbitmq