名称 | 描述 | 类型 | 默认值 | 有效值区间 | 重要程度 |
---|---|---|---|---|---|
zookeeper.connect | zk地址 | string | 高 | ||
advertised.host.name | 过时的:只有当advertised.listeners或listeners没有配置的时候才会生效。使用advertised.listeners代替。发布在zk上的hostname,供客户端使用。在IaaS环境下,该值需要与broker绑定的接口不一样。如果该值没有配置,会使用配置的host.name。否则会使用java.net.InetAddress.getCanonicalHostName()返回的数据。 | string | null | 高 | |
advertised.listeners | 发布在zk上的监听器,供客户端使用,如果与其他的监听器不一样的话。在Iaas环境下,该值需要与broker绑定的接口不一致。如果没有配置,会使用listener的值。 | string | null | 高 | |
advertised.port | 过时的:只有当advertised.listeners或listeners没有配置时会生效。可以使用advertised.listeners代替。发布在zk上的端口,供客户端使用。在Iaas环境下,需要与broker绑定的接口不一样。如果未配置,会发布与broker绑定的一样的接口。 | int | null | 高 | |
auto.create.topics.enable | 允许在服务器上自动创建主题(topic) | boolean | true | 高 | |
auto.leader.rebalance.enable | 允许自动主平衡。后台线程定时校验和触发主平衡。 | boolean | true | 高 | |
background.threads | 后台处理任务的线程数 | int | 10 | [1...] | 高 |
broker.id | 服务器的broker编号。如果不配置,会自动生成唯一的id。为了避免zk生成的broker编码和用户配置编码的冲突,生成的broker编码从reserved.broker.max.id + 1开始。 | int | -1 | 高 | |
compression.type | 指定一个主题最后的压缩类型。这个配置项接收标准的压缩编码(gzip,snappy,lz4)。还可以配置为uncompressed,表示不压缩。也可以配置为producer,表示与生产者配置的压缩类型一致。 | string | producer | 高 | |
delete.topic.enable | 可以删除主题。如果设置为关闭,那么通过管理工具删除主题是无效的。 | boolean | false | 高 | |
host.name | 过时的:只有当listeners没有配置时才会生效。使用listeners来代替。broker的主机名称。如果配置该项,broker只会绑定到这个地址,如果不配置,会绑定所有接口。 | string | "" | 高 | |
leader.imbalance.check.interval.seconds | 控制器触发分区调整校验的频率。 | long | 300 | 高 | |
leader.imbalance.per.broker.percentage | 每个broker允许的不平衡的leader的比率。如果每个broker超过了这个值,控制器会触发leader的平衡。这个值表示百分比。 | int | 10 | 高 | |
listeners | 监听器列表-逗号隔开,包含协议和链接。如果想绑定到所有的接口,需要把主机名设置为0.0.0.0。如果要绑定到特定的接口,主机名为空。示例:PLAINTEXT://myhost:9092,TRACE://:9091或者PLAINTEXT://0.0.0.0:9092, TRACE://localhost:9093 | string | null | 高 | |
log.dir | 日志数据存储的目录(log.dirs属性的补充) | string | /tmp/kafka-logs | 高 | |
log.dirs | 日志文件存储的目录,如果不配置,则使用log.dir。 | string | null | 高 | |
log.flush.interval.messages | 在消息刷到磁盘之前,日志分区收集的消息数量 | long | 9223372036854775807 | 高 | |
log.flush.interval.ms | 主题中消息在刷到磁盘之前,保存在内存中的最长时间,单位是ms,如果不配置,使用log.flush.scheduler.interval.ms的配置 | long | null | 高 | |
log.flush.offset.checkpoint.interval.ms | 更新上次刷磁盘的记录的频率,可以作为日志恢复点 | int | 60000 | [0...] | 高 |
log.flush.scheduler.interval.ms | 单位为毫秒,日志刷新器检查日志是否需要刷到磁盘的频率 | long | 9223372036854775807 | 高 | |
log.retention.bytes | 日志被删除前最大量 | long | -1 | 高 | |
log.retention.hours | 日志保留的最大小时数,log.retention.ms的第三位 | int | 168 | 高 | |
log.retention.minutes | 日志文件保留的分钟数,log.retention.ms的第二位,如果不配,使用log.retention.hours | int | null | 高 | |
log.retention.ms | 日志文件保留的毫秒数,如果不配,使用log.retention.minutes | long | null | 高 | |
log.roll.hours | 即使文件没有到达log.segment.bytes,只要文件创建时间到达此属性,就会创建新文件。 | int | 168 | [1...] | 高 |
log.roll.jitter.hours | 指定日志切分段的小时数,避免日志切分时造成惊群 | int | 0 | [0...] | 高 |
log.roll.jitter.ms | 指定日志切分段的毫秒数,如果不设置,默认使用log.roll.jitter.hours | long | null | 高 | |
log.roll.ms | 数据文件切分的时间间隔,与大小限制同时起作用的 | long | null | 高 | |
log.segment.bytes | 数据文件大小 | int | 1073741824 | [14...] | 高 |
log.segment.delete.delay.ms | 保存已删除日志的时间 | long | 60000 | [0...] | 高 |
message.max.bytes | 表示log中能够容纳消息的最大字节数 | int | 1000012 | [0,...] | 高 |
min.insync.replicas | 该属性规定了最小的ISR数 | int | 1 | [1,...] | 高 |
num.io.threads | 执行磁盘IO的线程数 | int | 8 | [1,...] | 高 |
num.network.threads | 处理网络请求的线程数 | int | 3 | [1,...] | 高 |
num.recovery.threads.per.data.dir | 启停时做日志恢复每个目录所需的线程数,采用RAID的时候可以增大该值 | int | 1 | [1,...] | 高 |
num.replica.fetchers | 从leader备份数据的线程数。该值越大,从broker的IO同步能力越强。 | int | 1 | 高 | |
offset.metadata.max.bytes | 客户端保留offset信息的最大空间大小 | int | 4096 | 高 | |
offsets.commit.required.acks | 在offset commit可以接受之前,需要设置确认的数目,一般不需要更改 | short | -1 | 高 | |
offsets.commit.timeout.ms | 只有所有replicas收到提交或者达到这个超时值,否则偏移量提交延迟。 | int | 5000 | [1,...] | 高 |
offsets.load.buffer.size | 将偏移量加载到缓存中时,从偏移量区读取的大小限制。 | int | 5242880 | [1,...] | 高 |
offsets.retention.check.interval.ms | 检查旧的偏移量的频率,单位是毫秒 | long | 600000 | [1,...] | 高 |
offsets.retention.minutes | 偏移量主题的日志保留窗口,单位是分钟 | int | 1440 | [1,...] | 高 |
offsets.topic.compression.codec | 偏移量主题的压缩编码,压缩可以用于原子提交 | int | 0 | 高 | |
offsets.topic.num.partitions | 偏移量提交主题的分区数量(部署后不应该修改) | int | 50 | [1,...] | 高 |
offsets.topic.replication.factor | 偏移量主题的复制因子(尽量设置高点,保证可用性)。为了确保偏移量主题的有效复制因子是配置的值,活跃kafka集群的数量至少是第一次请求偏移量时的复制因子。如果不是,要么创建偏移量主题会失败,要么会获得一个最小量(活跃集群,配置的复制因子) | short | 3 | [1,...] | 高 |
offsets.topic.segment.bytes | 偏移量主题的分区大小应该设置相对小,为了保证更快的日志压缩和缓存加载 | int | 104857600 | [1,...] | 高 |
port | 过时的:只有当listener没有配置时才会生效,是指监听和获取连接的端口。 | int | 9092 | 高 | |
queued.max.requests | 加入队列的最大请求数(超过该值,network thread阻塞) | int | 500 | [1,...] | 高 |
quota.consumer.default | 如果不同的消费者的每秒消费速度超过了这个值,就会被控制速度。 | long | 9223372036854775807 | [1,...] | 高 |
quota.producer.default | 如果任何生产者的生产速度超过了这个值,就会被控制速率。 | long | 9223372036854775807 | [1,...] | 高 |
replica.fetch.max.bytes | 一次性获取的消息数量的最大限制 | int | 1048576 | 高 | |
replica.fetch.min.bytes | 一次性获取的消息数量的最小值,如果达不到这个值,需要等待最多replicaMaxWaitTimeMs | int | 1 | 高 | |
replica.fetch.wait.max.ms | 每个消费请求的最大等待时间,这个值应该总是小于replica.lag.time.max.ms,以防止因为低吞吐量的主题,导致的频繁减少ISR的数量 | int | 500 | 高 | |
replica.high.watermark.checkpoint.interval.ms | 每个replica检查是否将最高水位进行固化的频率 | long | 5000 | 高 | |
replica.lag.time.max.ms | 如果一个follower在这个时间内没有发送fetch请求,leader将从ISR重移除这个follower,并认为这个follower已经挂了 | long | 10000 | 高 | |
replica.socket.receive.buffer.bytes | 备份时向leader发送网络请求时的socket receive buffer | int | 65536 | 高 | |
replica.socket.timeout.ms | 网络连接超时。这个值应该至少为replica.fetch.wait.max.ms | int | 30000 | 高 | |
request.timeout.ms | 这个配置控制客户端等待响应的最大时间。如果在规定时间内没有响应,客户端会根据需要重新发起请求。如果超过了重试次数,客户端会将这次请求置为失败。 | int | 30000 | 高 | |
socket.receive.buffer.bytes | socket用于接收网络请求的缓存大小 | int | 102400 | 高 | |
socket.request.max.bytes | server允许的最大请求尺寸; 这将避免server溢出,它应该小于Java heap size | int | 104857600 | [1,...] | 高 |
socket.send.buffer.bytes | SO_SNDBUFF 缓存大小,server进行socket 连接所用 | int | 102400 | 高 | |
unclean.leader.election.enable | 指明了是否能够使不在ISR中replicas设置用来作为leader,尽管这么做可能会导致数据丢失 | boolean | true | 高 | |
zookeeper.connection.timeout.ms | 客户端等待连接到zk的最大时间。如果不设置,系统默认使用zookeeper.session.timeout.ms | int | null | 高 | |
zookeeper.session.timeout.ms | zk的session超时时间 | int | 6000 | 高 | |
zookeeper.set.acl | 设置客户端使用zk的安全策略ACLs | boolean | false | 高 | |
broker.id.generation.enable | 是否启用集群机器id自动生成?如果启用,会检查配置的reserved.broker.max.id | boolean | true | 高 |
【Kafka】Broker之Server.properties的重要参数说明
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...