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秒)
相关推荐
IT摆渡者5 小时前
MySQL性能巡检脚本分析报告
数据库·mysql
buhuimaren_5 小时前
FastDFS分布式存储
分布式
Lyyaoo.6 小时前
Redis基础
数据库·redis·缓存
杨云龙UP6 小时前
ODA登录ODA Web管理界面时提示Password Expired的处理方法_20260423
linux·运维·服务器·数据库·oracle
解救女汉子6 小时前
SQL触发器如何获取触发源应用名_利用APP_NAME函数追踪
jvm·数据库·python
weixin_520649878 小时前
数据库函数
数据库
Bert.Cai8 小时前
MySQL LPAD()函数详解
数据库·mysql
OnlyEasyCode10 小时前
Navicat 任务自动备份指定数据库
数据库
if else10 小时前
Redis 哨兵集群部署方案
数据库·redis
yejqvow1210 小时前
Pandas 高效实现组内跨行时间戳匹配与布尔标记
jvm·数据库·python