Kafka修改配置详解

举报
Summer_ 发表于 2022/04/28 11:50:01 2022/04/28
【摘要】 Kafka修改配置

Kafka修改配置有两个命令:kafka-topics.sh和kafka-configs.sh。kafka-topics.sh主要是修改单个topic的配置,支持修改的配置参数见附录一;kafka-configs.sh支持修改topic、broker、user和client级别的配置,支持修改的配置参数见附录二。

一、 kafka-topics.sh

1.  kafka-topics.sh命令增加/修改配置命令如下:

kafka-topics.sh --alter --topic <topicName> --zookeeper <ZK业务IP:24002/kafka> --config <name=value>

b1.png

2. kafka-topics.sh命令查看配置命令如下:

kafka-topics.sh --describe --topic <topicName> --zookeeper <ZK业务IP:24002/kafka>

b2.png

修改后的配置会出现在Configs中。

3.      kafka-topics.sh命令删除配置命令如下:

kafka-topics.sh --alter --topic <topicName> --zookeeper <ZK业务IP:24002/kafka> --delete-config <name>

b3.png

配置删除后,修改的配置也会从Configs中删除。

二、 kafka-configs.sh

1.  kafka-configs.sh命令增加/修改topic级别配置命令如下:

kafka-configs.sh --alter --zookeeper <ZK业务IP:24002/kafka> --add-config <name=value> --entity-name <topicName > --entity-type topics

b4.png

Topic级别配置的修改,查看是否成功,依然可以使用kafka-topics.sh --describe --topic <topicName> --zookeeper <ZK业务IP:24002/kafka>命令查看Configs中是否有修改的配置。

2. kafka-configs.sh命令删除topic级别配置命令如下:

kafka-configs.sh --alter --zookeeper <ZK业务IP:24002/kafka> --delete-config <name=value> --entity-name <topicName > --entity-type topics

b5.png

Topic级别配置的删除,查看是否成功,依然可以使用kafka-topics.sh --describe --topic <topicName> --zookeeper <ZK业务IP:24002/kafka>命令查看Configs中是否还存在删除的配置。

3.  kafka-configs.sh命令修改broker级别配置命令如下:

修改单个broker的配置命令如下

kafka-configs.sh --alter --bootstrap-server <kafka业务IP:port> --add-config <name=value> --entity-name <brokerID> --entity-type brokers --command-config <property file>,其中property file中security.protocol对应协议必须与使用的端口对应(使用21005端口可以不加command-config参数)。

b6.png

修改所有broker的配置命令如下

kafka-configs.sh --alter --bootstrap-server <kafka业务IP:port> --add-config <name=value> --entity-default --entity-type brokers --command-config <property file>,其中property file中security.protocol对应协议必须与使用的端口对应(使用21005端口可以不加command-config参数)。

b7.png

注意:当config中对应的name是broker端不存在的配置时命令也可以执行成功,但是查看配置时对应的配置为null。

b8.png

b9.png4.  kafka-configs.sh命令查看broker级别配置命令如下:

查看单个broker的修改配置命令如下

kafka-configs.sh -- describe --bootstrap-server <kafka业务IP:port> --entity-name <brokerID> --entity-type brokers --command-config <property file>,其中property file中security.protocol对应协议必须与使用的端口对应(使用21005端口可以不加command-config参数)。

b10.png

查看所有broker的修改配置命令如下

kafka-configs.sh -- describe --bootstrap-server <kafka业务IP:port> --entity-default --entity-type brokers --command-config <property file>,其中property file中security.protocol对应协议必须与使用的端口对应(使用21005端口可以不加command-config参数)。

b11.png

5.   kafka-configs.sh命令删除broker级别配置命令如下:

删除单个broker的配置命令如下

kafka-configs.sh --alter --bootstrap-server <kafka业务IP:port> --delete-config <name> --entity-name <brokerID> --entity-type brokers --command-config <property file>,其中property file中security.protocol对应协议必须与使用的端口对应(使用21005端口可以不加command-config参数)。

b12.png

删除所有broker的配置命令如下

kafka-configs.sh --alter --bootstrap-server <kafka业务IP:port> --delete-config <name> --entity-default --entity-type brokers --command-config <property file>,其中property file中security.protocol对应协议必须与使用的端口对应(使用21005端口可以不加command-config参数)。

b13.png

附录一:

kafka-topics.sh支持的topic级别的配置修改如下:

cleanup.policy

compression.type

delete.retention.ms

file.delete.delay.ms

flush.messages

flush.ms

follower.replication.throttled.replicas

index.interval.bytes

leader.replication.throttled.replicas

log.partition.strategy

max.message.bytes

message.format.version

message.timestamp.difference.max.ms

message.timestamp.type

min.cleanable.dirty.ratio

min.compaction.lag.ms

min.insync.replicas

preallocate

retention.bytes

retention.ms

segment.bytes

segment.index.bytes

segment.jitter.ms

segment.ms

unclean.leader.election.enable

附录二:

kafka-configs.sh支持的topic级别的配置修改如下:

cleanup.policy

compression.type

delete.retention.ms

file.delete.delay.ms

flush.messages

flush.ms

follower.replication.throttled.replicas

index.interval.bytes

leader.replication.throttled.replicas

log.partition.strategy

max.message.bytes

message.format.version

message.timestamp.difference.max.ms

message.timestamp.type

min.cleanable.dirty.ratio

min.compaction.lag.ms

min.insync.replicas

preallocate

retention.bytes

retention.ms

segment.bytes

segment.index.bytes

segment.jitter.ms

segment.ms

unclean.leader.election.enable

kafka-configs.sh支持的broker级别的配置修改如下:

log.message.timestamp.type

ssl.client.auth

log.retention.ms

sasl.kerberos.ticket.renew.window.factor

log.preallocate

log.index.size.max.bytes

ssl.truststore.type

ssl.keymanager.algorithm

log.cleaner.io.buffer.load.factor

ssl.key.password

background.threads

log.retention.bytes

ssl.trustmanager.algorithm

log.segment.bytes

log.cleaner.delete.retention.ms

log.segment.delete.delay.ms

min.insync.replicas

ssl.keystore.location

ssl.cipher.suites

log.roll.jitter.ms

log.cleaner.backoff.ms

sasl.jaas.config

principal.builder.class

log.flush.interval.ms

log.cleaner.dedupe.buffer.size

log.flush.interval.messages

advertised.listeners

num.io.threads

listener.security.protocol.map

sasl.enabled.mechanisms

ssl.truststore.password

listeners

metric.reporters

ssl.protocol

sasl.kerberos.ticket.renew.jitter

ssl.keystore.password

sasl.mechanism.inter.broker.protocol

log.cleanup.policy

sasl.kerberos.principal.to.local.rules

sasl.kerberos.min.time.before.relogin

num.recovery.threads.per.data.dir

log.cleaner.io.max.bytes.per.second

log.roll.ms

ssl.endpoint.identification.algorithm

unclean.leader.election.enable

message.max.bytes

log.cleaner.threads

log.cleaner.io.buffer.size

sasl.kerberos.service.name

ssl.provider

follower.replication.throttled.rate

log.index.interval.bytes

log.cleaner.min.compaction.lag.ms

log.message.timestamp.difference.max.ms

ssl.enabled.protocols

log.cleaner.min.cleanable.ratio

replica.alter.log.dirs.io.max.bytes.

per.second

ssl.keystore.type

ssl.secure.random.implementation

ssl.truststore.location

sasl.kerberos.kinit.cmd

leader.replication.throttled.rate

num.network.threads

compression.type

num.replica.fetchers

kafka-configs.sh支持的user级别的配置修改如下:

request_percentage

producer_byte_rate

SCRAM-SHA-256

SCRAM-SHA-512

consumer_byte_rate

kafka-configs.sh支持的client级别的配置修改如下:

request_percentage

producer_byte_rate

consumer_byte_rate

kafka-configs.sh支持的topics_limit级别的配置修改如下:

producer_byte_rate

consumer_byte_rate

说明1:附录一和附录二中的配置是651X版本支持的参数,651X之前版本可以具体执行kafka-topics.sh和kafka-config.sh命令查看--config和--add-config中的参数说明。

b-2.pngb-1.png

说明2:使用kafka-config.sh修改num.io.threads、num.network.threads、num.replica.fetchers时,只能在原设置的基础上2倍以内扩大或者1/2倍以内缩小,否则会执行报错。例如,FI中num.io.threads默认为8,直接修改为24时报错如下:

b14.png

若把num.io.threads改为24,执行命令两次,先把值改为16,再改为24。

b15.png

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。