一 zk中存储kafka的那些信息
在zk中存储kafka的这些信息:
1.记录有哪些服务器:
/kafka/brokers/ids
[0,1,2]
2.记录谁是Leader,有哪些服务器可用
/kafka/brokers/topics/first/partitions/0/state
{"leader":1 ,"isr":[1,0,2] }
3.一些辅助选举的leader信息
/kafka/controller
二 kafka的broker的工作流程
2.1 kafka的工作流程
2.2 kafka副本的选举策略
其中:kafka分区中所有的副本统称未AR;副本leader的选举策略为:在isr中存活为前提,按照AR中排在前面的优先,例如AR[1,0,2] ,isr [1,0,2],那么leader就会按照1,0,2的顺序进行轮询。
三 kafka的broker的配置参数详情
3.1 历史数据保存策略
进入kafka配置文件,修改 server.properties 文件。
1 log.retention.hours=1 # 超过1个小时就清理数据 2 log.segment.bytes=5000 # 指 log 日志划分成块的大小,默认值 1G。这里是5000字节。 3 log.cleanup.interval.mins=100 # 指定日志每隔多久检查看是否可以被删除,默认1分钟,说白就是判断是否可以删除数据的执行周期时间。 4 log.retention.check.interval.ms=300 # 文件大小检查的周期时间,是否触发 log.cleanup.policy中设置的清除策略,
四 节点的服役与退役
4.1 节点服役
1.新节点准备
2
(3)创建副本存储计划(所有副本存储在
broker0
、
broker1
、
broker2
、
broker3
中)。
[atguigu@hadoop102 kafka]$ vim increase-replication-factor.json
{"version":1,"partitions":[{"topic":"first","partition":0,"replic
as":[2,3,0],"log_dirs":["any","any","any"]},{"topic":"first","par
tition":1,"replicas":[3,0,1],"log_dirs":["any","any","any"]},{"to
pic":"first","partition":2,"replicas":[0,1,2],"log_dirs":["any","
any","any"]}]}
4.2 节点退役
1
)执行负载均衡操作
2
)执行停止命令
在
hadoop105
上执行停止命令即可。
[atguigu@hadoop105 kafka]$ bin/kafka-server-stop.sh