首页 > 代码库 > kafka参数配置详解

kafka参数配置详解

broker.idbroker的唯一标识符,如果不配置则自动生成,建议配置且一定要保证集群中必须唯一,默认-1
log.dir日志数据存放的目录,默认/tmp/kafka-logs
log.dirs日志数据存放的目录,如果没有配置则使用log.dir,建议此项配置。
zookeeper.connectZookeeper主机地址,如果zookeeper是集群则以逗号隔开,如:172.6.14.61:2181,172.6.14.62:2181,172.6.14.63:2181
listeners

监听列表,多个以逗号隔开,如果监听器名称不是一个安全的协议, listener.security.protocol.map也必须设置。主机名称设置0.0.0.0绑定所有的接口,主机名称为空则绑定默认的接口。如:PLAINTEXT://myhost:9092,SSL://:9091 CLIENT://0.0.0.0:9092,REPLICATION://localhost:9093

advertised.listeners

给客户端用的发布至zookeeper的监听,如果和上面的listeners不同则以此为准,在IaaS环境,此配置项可能和 broker绑定的接口主机名称不同,如果此配置项没有配置则以上面的listeners为准。

auto.create.topics.enable是否自动创建topic,默认true
auto.leader.rebalance.enable是否自动leader平衡,一个后台线程定时检查并在必要时触发leader平衡。默认true
background.threads用于各种后台处理任务的线程的数量,默认10
compression.type为指定topic指定最终的压缩类型,配置接受标准的压缩算法(gzip、snappy、lz4),默认producer
delete.topic.enable是否可以删除topic,如果关闭此配置项则通过管理工具删除topic则不起效。默认false
leader.imbalance.check.interval.seconds控制器触发分区再平衡检测的频率,默认300
leader.imbalance.per.broker.percentage每个broker允许的不平衡leader的比率,不平衡leader的比率大于此值控制器就会触发leader平衡操作。默认10
log.flush.interval.messages分区日志刷至磁盘的大小阈值,单位字节。默认为long类型的最大值,谨慎设置。
log.flush.interval.ms消息刷至磁盘的最大时间,单位毫秒。如果不设置此项则使用log.flush.scheduler.interval.ms
log.flush.offset.checkpoint.interval.ms用于更新日志恢复点持久记录的频率,默认60000
log.flush.scheduler.interval.ms检测日志是否需要刷至磁盘的频率,单位毫秒,默认long类型的最大值
log.retention.bytes日志被删除前的最大大小,即日志保留的最大大小,默认-1
log.retention.hours日志文件删除之前保留的时间(单位小时),默认168
log.retention.minutes日志文件删除之前保留的时间(单位分钟),如果没有设置则使用log.retention.hours
log.retention.ms日志文件删除之前保留的时间(单位毫秒),如果没有设置则使用log.retention.minutes
log.roll.hours在新日志段展开之前的最大时间(单位小时)
log.roll.ms在新日志段展开之前的最大时间(单位毫秒)
log.segment.bytes单个日志文件的大小,默认1073741824
log.segment.delete.delay.ms日志文件在删除之前保留的时间,默认60000
message.max.bytes服务器接受单个消息的最大大小,默认1000012
min.insync.replicas

当生产者acks的值设置为all或者-1的时候,此配置项为消息副本的最小成功数量,如果成功数量没有达到此值则生产者就会抛出异常,默认1。

num.io.threads做I/O任务线程的数量
num.network.threads服务器处理网络请求的线程的数量
num.recovery.threads.per.data.dir在启动时恢复日志和关闭时刷盘日志时每个数据目录的线程的数量,默认1
num.replica.fetchers从源头broker抽取消息用于复制的线程的数量。增大此值可以提高从broker的I/O平衡度。默认为1
offset.metadata.max.bytes和提交的偏移量有关的元数据项的最大值,默认4096
offsets.commit.required.acks消息提交并被接受前必须的acks,通常默认-1,不要修改此值。
offsets.commit.timeout.ms偏移量会被延迟直到所有的复制都接受此偏移量或者超时此值,和生产者请求超时相似,默认5000
offsets.load.buffer.size批量加载偏移量到缓冲的批量大小,默认5242880
offsets.retention.check.interval.ms检测偏移量的频率,默认600000
offsets.retention.minutes话题偏移量日志保留窗口时间,单位分钟,默认1440
offsets.topic.compression.codec偏移量话题压缩解码器,压缩可用于自动提交,默认0
offsets.topic.num.partitions偏移提交主题的分区数量(部署后不应该再修改),默认50
offsets.topic.replication.factor

偏移量话题的复制因子(设置更高保证可用),为了保证有效的复制,偏移话题的复制因子是可配置的,在偏移话题的第一次请求的时候可用的broker的数量至少为复制因子的大小,

否则要么话题创建失败,要么复制因子取可用broker的数量和配置复制因子的最小值。默认3



本文出自 “埃文” 博客,请务必保留此出处http://wenshengzhu.blog.51cto.com/5151285/1922975

kafka参数配置详解