Kafka参数了解

Kafka配置参数完整说明

1. 基础配置

参数名 说明 推荐值 参考值
broker.id broker的唯一标识符 每个节点唯一的整数 1
delete.topic.enable 是否允许删除topic true true
listeners broker监听地址 SASL_PLAINTEXT://host:9092 SASL_PLAINTEXT://172.24.77.15:9092
advertised.listeners 对外发布的监听地址 SASL_PLAINTEXT://public_ip:9092 SASL_PLAINTEXT://172.24.77.15:9092
log.dirs 日志数据目录 /data/kafka/data /data/kafka/data
zookeeper.connect ZK连接字符串 host1:2181,host2:2181,host3:2181 172.24.77.10:2181,172.24.77.11:2181,172.24.77.12:2181

2. 安全配置

参数名 说明 推荐值 参考值
security.protocol 安全协议 SASL_PLAINTEXT SASL_PLAINTEXT
sasl.mechanism.inter.broker.protocol broker间通信认证机制 SCRAM-SHA-256 SCRAM-SHA-256
sasl.enabled.mechanisms 启用的认证机制 SCRAM-SHA-256,PLAIN SCRAM-SHA-256,PLAIN
allow.everyone.if.no.acl.found 无ACL时允许所有操作 false true(测试环境)
super.users 超级用户列表 User:admin User:super
authorizer.class.name 授权器类名 kafka.security.auth.SimpleAclAuthorizer kafka.security.auth.SimpleAclAuthorizer

3. 网络配置

参数名 说明 推荐值 参考值
num.network.threads 网络线程数 3-5 3
num.io.threads IO线程数 8 8
socket.send.buffer.bytes 发送缓冲区大小 10485760 (10MB) 102400 (100KB)
socket.receive.buffer.bytes 接收缓冲区大小 10485760 (10MB) 102400 (100KB)
socket.request.max.bytes 请求最大大小 104857600 (100MB) 104857600 (100MB)
replica.socket.receive.buffer.bytes 副本复制接收缓冲区 1048576 (1MB) 65536 (64KB)

4. 主题和分区配置

参数名 说明 推荐值 参考值
num.partitions 默认分区数 3 3
default.replication.factor 默认副本因子 3 3
min.insync.replicas 最小同步副本数 2 2
auto.create.topics.enable 是否自动创建主题 false true
offsets.topic.replication.factor offsets主题副本因子 3 3

5. 性能调优参数

参数名 说明 推荐值 参考值
num.replica.fetchers 副本拉取线程数 3 3
replica.fetch.max.bytes 副本拉取最大字节数 1048576 (1MB) 1048576 (1MB)
replica.lag.time.max.ms 副本最大延迟时间 5000 (5秒) 10000 (10秒)
replica.fetch.wait.max.ms 副本拉取最大等待时间 1000 (1秒) 1000 (1秒)
log.flush.interval.messages 刷盘消息数阈值 10000 10000
log.flush.interval.ms 刷盘时间间隔 1000 (1秒) 1000 (1秒)

6. 日志管理

参数名 说明 推荐值 参考值
log.retention.hours 日志保留时间 168 (7天) 168 (7天)
log.segment.bytes 日志片段大小 1073741824 (1GB) 1073741824 (1GB)
log.retention.check.interval.ms 日志清理检查间隔 300000 (5分钟) 300000 (5分钟)
log.cleanup.policy 日志清理策略 delete delete
log.message.timestamp.type 消息时间戳类型 LogAppendTime LogAppendTime

7. 事务和幂等性配置

参数名 说明 推荐值 参考值
transaction.state.log.replication.factor 事务主题副本因子 3 3
transaction.state.log.min.isr 事务主题最小ISR 2 2
unclean.leader.election.enable 是否允许非ISR副本成为leader false false

8. 其他配置

参数名 说明 推荐值 参考值
group.initial.rebalance.delay.ms 消费组初始重平衡延迟 3000 (3秒) 3000 (3秒)
broker.rack broker机架信息 rack1 kafka-rac1
message.max.bytes 消息最大大小 1000012 (≈1MB) 1000012 (≈1MB)
zookeeper.connection.timeout.ms ZK连接超时时间 18000 (18秒) 18000 (18秒)
zookeeper.session.timeout.ms ZK会话超时时间 18000 (18秒) 12000 (12秒)
相关推荐
lifallen10 分钟前
Paimon vs. HBase:全链路开销对比
java·大数据·数据结构·数据库·算法·flink·hbase
William一直在路上20 分钟前
主流分布式中间件及其选型
分布式·中间件
茫茫人海一粒沙23 分钟前
理解 Confluent Schema Registry:Kafka 生态中的结构化数据守护者
分布式·kafka
weixin_4383354026 分钟前
分布式定时任务:Elastic-Job-Lite
分布式·elasticjoblite
Brookty1 小时前
【MySQL】JDBC编程
java·数据库·后端·学习·mysql·jdbc
先做个垃圾出来………2 小时前
SQL的底层逻辑解析
数据库·sql
码不停蹄的玄黓2 小时前
深入拆解MySQL InnoDB可重复读(RR)隔离级别:MVCC+临键锁如何「锁」住一致性?
数据库·mysql·可重复读
paopaokaka_luck2 小时前
基于SpringBoot+Vue的酒类仓储管理系统
数据库·vue.js·spring boot·后端·小程序
薛晓刚3 小时前
哪个领域数据库最难替换?
数据库
dessler3 小时前
Kafka-消费者(Consumer)和消费者组(Consumer Group)
linux·运维·kafka