Kafka 动态配置
创始人
2024-06-02 06:05:01

Kafka 动态配置

  • 配置保存
  • 配置

动态配置 : 修改参数后,无需重启 Broker 就能生效

Kafka 1.1 后的 Dynamic Update Mode 列 :

  • read-only : 只有重启 Broker,才能生效
  • per-broker : 动态参数,修改后,就能生效
  • cluster-wide : 动态参数,修改后,整个集群范围内生效

动态 Broker :

  • 动态调整 Broker 端各种线程池大小,实时应对突发流量
  • 动态调整 Broker 端连接信息或安全配置信息
  • 动态更新 SSL Keystore 有效期
  • 动态调整 Broker 端 Compact 操作性能
  • 实时变更 JMX 指标收集器 (JMX Metrics Reporter)

配置保存

Kafka 将动态 Broker 参数保存在 ZooKeeper 中

  • changes : 实时监测动态参数变更的,不会保存参数值
  • topics : 保存 Kafka 主题级别参数的。虽然它们不属于动态 Broker 端参数,但其实它们也是能够动态变更的
  • users 和 clients 则是用于动态调整客户端配额(Quota)的 znode 节点。所谓配额,是指 Kafka 运维人员限制连入集群的客户端的吞吐量或者是限定它们使用的 CPU 资源

/config/brokers znode 保存动态 Broker 参数, 分两大类子节点 :

  • < default > : 保存 cluster-wide 范围的动态参数
  • broker.id : 保存特定 Broker 的 per-broker 范围参数

参数的优先级:

  • per-broker > cluster-wide > static > Kafka 默认值

持久化节点 : ephemeralOwner = 0x0 。ZooKeeper 重启,也不会丢失

在这里插入图片描述

配置

设置 cluster-wide 范围值 :

  • 指定 entity-default
bin/kafka-configs.sh \
--bootstrap-server kafka-host:port \
--entity-type brokers \
--entity-default --alter --add-config unclean.leader.election.enable=true

设置 per-broker 范围参数 :

bin/kafka-configs.sh \
--bootstrap-server kafka-host:port \
--entity-type brokers \
--entity-name 1 \
--alter --add-config unclean.leader.election.enable=false

删除 cluster-wide 范围参数 :

bin/kafka-configs.sh \
--bootstrap-server kafka-host:port \
--entity-type brokers \
--entity-default \
--alter --delete-config unclean.leader.election.enable

删除 per-broker 范围参数 :

bin/kafka-configs.sh \
--bootstrap-server kafka-host:port \
--entity-type brokers \
--entity-name 1 \
--alter --delete-config unclean.leader.election.enable

查看 cluster-wide 范围参数 :

bin/kafka-configs.sh \
--bootstrap-server kafka-host:port \
--entity-type brokers \
--entity-default --describe

查看 per-broker 范围参数 :

bin/kafka-configs.sh \
--bootstrap-server kafka-host:port \
--entity-type brokers \
--entity-name 1 --describe

动态调整参数 :

  • log.retention.ms : 修改日志留存时间
  • num.io.threads : IO 处理线程数
  • num.network.threads : 网络处理线程数
  • ssl.keystore.type , ssl.keystore.location , ssl.keystore.password , ssl.key.password : 更新 Keystore
  • num.replica.fetchers : Follower 副本拉取速度

相关内容

热门资讯

瑞迈特:2025年净利润同比预... 每经AI快讯,瑞迈特(301367)1月19日发布业绩预告,预计2025年归母净利润为1.9亿元至2...
出行注意安全!陕西发布道路结冰... 转自:群众新闻陕西省气象台1月19日16时40分继续发布道路结冰黄色预警信号预计19日20时至20日...
多氟多:回应氟化锂产能、销售及... 投资者提问:请问公司氟化锂产能现有多少?自用和外售各占多少?氟化锂价格上涨是否对公司业绩有正向影响?...
吉林省第一高楼竣工 近日长春华润中心项目顺利通过竣工验收标志着该项目工程建设任务圆满完成正式迈向全面交付阶段效果图项目位...
易事特证券虚假陈述责任纠纷诉讼... 易事特(维权)集团股份有限公司(以下简称“公司”)近日披露,其关注到广东省广州市中级人民法院(以下简...