提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录- kafka集群中的controller、rebalance、HW
- 1.controller
- 1.1 集群中谁来充当controller
- 每个broker启动时会向zk创建⼀个临时序号节点,获得的==序号最⼩==的那个broker将会作为集群中的controller
- 1.2 controller的主要作用
- 2.rebalance机制
- 2.1 前提
- 2.2 触发的条件
- 2.3 分区分配的策略
- 3.HW 和 LEO
- LEO:
- HW :
- 规则
- Kafka-eagle监控平台
- kafka-eagle官⽹
- http://www.kafka-eagle.org/#
- 搭建
- 平台的使⽤
kafka集群中的controller、rebalance、HW 1.controller 1.1 集群中谁来充当controller
每个broker启动时会向zk创建⼀个临时序号节点,获得的序号最⼩的那个broker将会作为集群中的controller1.2 controller的主要作用
- 当集群中有⼀个副本的leader挂掉,需要在集群中选举出⼀个新的leader,选举的规则是从isr集合中最左边获得。
- 当集群中有broker新增或减少,controller会同步信息给其他broker
- 当集群中有分区新增或减少,controller会同步信息给其他broker
消费组中的消费者没有指明分区来消费
2.2 触发的条件- 消费者挂了
- 新增消费者
- range:
根据公示计算得到每个消费消费哪⼏个分区:前⾯的消费者是分区总数/消费 者数量+1,之后的消费者是分区总数/消费者数量 - 轮询:⼤家轮着来
- sticky:粘合策略,
如果需要rebalance,会在之前已分配的基础上调整,不会改变之 前的分配情况。如果这个策略没有开,那么就要进⾏全部的重新分配。建议开启。
- 是某个副本最后消息的消息位置(log-end-offset)
- HW俗称⾼⽔位,HighWatermark的缩写,取⼀个partition对应的ISR中最⼩的LEO(log-endoffset) 作为HW
- consumer最多只能消费到HW所在的位置
- HW是已完成同步的位置。消息在写⼊broker时,且每个broker完成这条消息的同步后,hw才会变化。在这之前消费者是消费不到这条消息的。
- 在同步完成之后,HW更新之后,消费者才能消费到这条消息,这样的⽬的是防⽌消息的丢失。
http://www.kafka-eagle.org/#搭建
- 官网下载压缩包 http://download.kafka-eagle.org/
- 分配⼀台虚拟机
- 虚拟机中安装jdk
- 解压缩kafka-eagle的压缩包
- 给kafka-eagle配置环境变量
export KE_HOME=/usr/local/kafka-eagle export PATH=$PATH:$KE_HOME/bin
- 需要修改kafka-eagle内部的配置⽂件: vim system-config.properties
修改⾥⾯的zk的地址和mysql的地址 - 进⼊到bin中,通过命令来启动
./ke.sh start平台的使⽤
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)