3. 配置
Kafka使用属性文件格式的 键值对进行配置。这些值可以从文件或以编程方式提供。
3.1 Broker 配置
基本配置如下:
broker.id
log.dirs
zookeeper.connect
下面 将更详细地讨论主题级配置和默认值。
advertised.listeners
发布到 ZooKeeper 供客户端使用的侦听器(如果与listeners
配置属性不同)。在 IaaS 环境中,这可能需要与代理绑定的接口不同。如果未设置,listeners
则将使用 的值。与 不同的是listeners
,通告 0.0.0.0 元地址是无效的。
与 不同的是listeners
,此属性中可以有重复的端口,以便可以将一个侦听器配置为通告另一个侦听器的地址。这在某些使用外部负载均衡器的情况下非常有用。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
auto.create.topics.enable
在服务器上启用自动创建主题
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
auto.leader.rebalance.enable
启用自动领导者平衡。后台线程定期检查分区领导者的分布,可通过“leader.imbalance.check.interval.seconds”进行配置。如果领导者不平衡超过“leader.imbalance.per.broker.percentage”,则会触发领导者重新平衡到分区的首选领导者。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
background.threads
用于各种后台处理任务的线程数
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
broker.id
该服务器的代理 ID。如果未设置,将生成唯一的代理 ID。为了避免 Zookeeper 生成的代理 ID 和用户配置的代理 ID 之间的冲突,生成的代理 ID 从served.broker.max.id + 1 开始。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
compression.type
指定给定主题的最终压缩类型。此配置接受标准压缩编解码器('gzip'、'snappy'、'lz4'、'zstd')。它还接受“未压缩”,这相当于不压缩;“生产者”表示保留生产者设置的原始压缩编解码器。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
control.plane.listener.name
用于控制器和代理之间通信的侦听器名称。Broker将使用control.plane.listener.name在侦听器列表中定位端点,以侦听来自控制器的连接。例如,如果代理的配置为:
listeners = INTERNAL://192.1.1.8:9092, EXTERNAL://10.1.1.5:9093, CONTROLLER://192.1.1.8:9094
listener.security.protocol.map = INTERNAL:PLAINTEXT, EXTERNAL:SSL, CONTROLLER:SSL
control.plane.listener.name = CONTROLLER
启动时,代理将开始使用安全协议“SSL”侦听“192.1.1.8:9094”。
在控制器端,当它通过zookeeper发现代理的已发布端点时,它将使用control.plane.listener.name来查找端点,它将用于建立与代理的连接。
例如,如果代理在 Zookeeper 上发布的端点为:
"endpoints" : ["INTERNAL://broker1.example.com:9092","EXTERNAL://broker1.example.com:9093","CONTROLLER://broker1.example.com:9094"]
并且控制器的配置是:
listener.security.protocol.map = INTERNAL:PLAINTEXT, EXTERNAL:SSL, CONTROLLER:SSL
control.plane.listener.name = CONTROLLER
那么控制器将使用“broker1.example.com:9094”,使用安全协议“SSL”连接到代理。
如果未显式配置,则默认值为 null,并且不会有用于控制器连接的专用端点。
如果显式配置,该值不能与 的值相同inter.broker.listener.name
。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
controller.listener.names
控制器使用的侦听器名称的逗号分隔列表。如果在 KRaft 模式下运行,这是必需的。当与控制器仲裁通信时,代理将始终使用此列表中的第一个侦听器。
注意:基于 ZK 的控制器不应设置此配置。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
controller.quorum.election.backoff.max.ms
开始新选举之前的最长时间(以毫秒为单位)。这用于二进制指数退避机制,有助于防止选举陷入僵局
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
controller.quorum.election.timeout.ms
在触发新选举之前无法从领导者获取数据的最长时间(以毫秒为单位)
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
controller.quorum.fetch.timeout.ms
在成为候选人并触发选民选举之前,从当前领导者那里成功获取信息的最长时间;在询问领导者是否有新纪元之前,没有收到来自大多数法定人数的提取的最长时间
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
controller.quorum.voters
以逗号分隔的“{id}@{host}:{port}”条目列表中的一组投票者的 ID/端点信息映射。例如:`1@localhost:9092,2@localhost:9093,3@localhost:9094`
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
delete.topic.enable
启用删除主题。如果关闭此配置,通过管理工具删除主题将不起作用
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
early.start.listeners
以逗号分隔的侦听器名称列表,可以在授权者完成初始化之前启动。当授权者依赖于集群本身进行引导时,这非常有用,就像 StandardAuthorizer(将 ACL 存储在元数据日志中)的情况一样。默认情况下,controller.listener.names 中包含的所有侦听器也将是早期启动侦听器。如果侦听器接受外部流量,则不应出现在此列表中。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
leader.imbalance.check.interval.seconds
控制器触发分区重新平衡检查的频率
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
Leader.imbalance.per.broker.percentage
每个broker允许的领导者不平衡比率。如果每个broker的余额超过此值,控制器将触发领导者余额。该值以百分比指定。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
listeners
侦听器列表 - 我们将侦听的 URI 的逗号分隔列表以及侦听器名称。如果监听器名称不是安全协议,listener.security.protocol.map
也必须设置。
侦听器名称和端口号必须是唯一的。
将主机名指定为 0.0.0.0 以绑定到所有接口。
将主机名留空以绑定到默认接口。
合法侦听器列表的示例:
PLAINTEXT://myhost:9092,SSL://:9091
CLIENT://0.0.0.0:9092,REPLICATION://localhost:9093
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.dirs
保存日志数据的目录(log.dirs 属性的补充)
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.dirs
存储日志数据的目录的逗号分隔列表。如果未设置,则使用 log.dir 中的值。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.flush.interval.messages
在消息刷新到磁盘之前日志分区上累积的消息数
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.flush.interval.ms
任何主题中的消息在刷新到磁盘之前在内存中保留的最长时间(以毫秒为单位)。如果未设置,则使用 log.flush.scheduler.interval.ms 中的值
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.flush.offset.checkpoint.interval.ms
我们更新充当日志恢复点的最后一次刷新的持久记录的频率
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.flush.scheduler.interval.ms
日志刷新器检查是否有日志需要刷新到磁盘的频率(以毫秒为单位)
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.flush.start.offset.checkpoint.interval.ms
我们更新日志起始偏移量的持久记录的频率
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.retention.bytes
删除日志之前的最大大小
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.retention.hours
删除日志文件之前保留日志文件的小时数(以小时为单位),第三级为 log.retention.ms 属性
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.retention.minutes
删除日志文件之前保留日志文件的分钟数(以分钟为单位),次要于 log.retention.ms 属性。如果未设置,则使用 log.retention.hours 中的值
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.retention.ms
删除日志文件之前保留日志文件的毫秒数(以毫秒为单位),如果未设置,则使用 log.retention.minutes 中的值。如果设置为 -1,则不应用时间限制。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.roll.hours
推出新日志段之前的最长时间(以小时为单位),次要于 log.roll.ms 属性
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.roll.jitter.hours
从 logRollTimeMillis 中减去的最大抖动(以小时为单位),次要于 log.roll.jitter.ms 属性
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.roll.jitter.ms
从 logRollTimeMillis 中减去的最大抖动(以毫秒为单位)。如果未设置,则使用 log.roll.jitter.hours 中的值
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.roll.ms
推出新日志段之前的最长时间(以毫秒为单位)。如果未设置,则使用 log.roll.hours 中的值
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.segment.bytes
单个日志文件的最大大小
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.segment.delete.delay.ms
从文件系统中删除文件之前等待的时间
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
message.max.bytes
Kafka 允许的最大记录批量大小(如果启用压缩,则在压缩后)。如果增加此值并且存在早于 0.10.2 的消费者,则消费者的获取大小也必须增加,以便他们可以获取这么大的记录批次。在最新的消息格式版本中,为了提高效率,记录总是分组为批次。在以前的消息格式版本中,未压缩的记录不会分组为批次,并且此限制仅适用于这种情况下的单个记录。这可以使用主题级别配置针对每个主题进行设置max.message.bytes
。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
metadata.log.dir
此配置决定了我们将 KRaft 模式下集群的元数据日志放置在何处。如果未设置,元数据日志将放置在 log.dirs 中的第一个log.dirs中。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
metadata.log.max.record.bytes. Between.snapshots
这是最新快照与生成新快照之前所需的高水位线之间的日志中的最大字节数。默认值为20971520。要根据经过的时间生成快照,请参见metadata.log.max.snapshot.interval.ms
配置。当达到最大时间间隔或达到最大字节数限制时,Kafka 节点将生成快照。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
metadata.log.max.snapshot.interval.ms
如果日志中存在未包含在最新快照中的已提交记录,则这是等待生成快照的最大毫秒数。值为零将禁用基于时间的快照生成。默认值为3600000。如果要根据元数据字节数生成快照,请参见配置metadata.log.max.record.bytes.between.snapshots
。当达到最大时间间隔或达到最大字节数限制时,Kafka 节点将生成快照。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
metadata.log.segment.bytes
单个元数据日志文件的最大大小。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
metadata.log.segment.ms
推出新元数据日志文件之前的最长时间(以毫秒为单位)。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
metadata.max.retention.bytes
删除旧快照和日志文件之前元数据日志和快照的最大组合大小。由于在删除任何日志之前必须至少存在一个快照,因此这是一项软限制。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
metadata.max.retention.ms
删除元数据日志文件或快照之前保留的毫秒数。由于在删除任何日志之前必须至少存在一个快照,因此这是一项软限制。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
min.insync.replicas
当生产者将 acks 设置为“all”(或“-1”)时,min.insync.replicas 指定必须确认写入才能被视为成功的最小副本数。如果无法满足此最小值,则生产者将引发异常(NotEnoughReplicas 或 NotEnoughReplicasAfterAppend)。
当一起使用时,min.insync.replicas 和 ack 允许您强制执行更高的持久性保证。典型的场景是创建一个复制因子为 3 的主题,将 min.insync.replicas 设置为 2,并使用“all”的 ack 进行生成。这将确保生产者在大多数副本未收到写入时引发异常。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
node.id
当“process.roles”非空时,与该进程所扮演的角色关联的节点 ID。这是在 KRaft 模式下运行时所需的配置。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
num.io.threads
服务器用于处理请求的线程数,其中可能包括磁盘 I/O
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
num.network.threads
服务器用于从网络接收请求并向网络发送响应的线程数。注意:每个监听器(除了控制器监听器)都会创建自己的线程池。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
num.recovery.threads.per.data.dir
每个数据目录用于启动时日志恢复和关闭时刷新的线程数
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
num.replica.alter.log.dirs.threads
可以在log.dirs之间移动副本的线程数,其中可能包括磁盘 I/O
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
num.replica.fetchers
用于从每个源代理复制记录的获取器线程数。每个 Broker 上的 fetcher 总数num.replica.fetchers
与集群中的 Broker 数量相乘。增加此值可以提高跟随者和领导者 Broker 中的 I/O 并行度,但代价是更高的 CPU 和内存利用率。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
offsets.metadata.max.bytes
与偏移提交关联的元数据条目的最大大小
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
offsets.commit.required.acks
可以接受提交之前所需的确认。一般来说,不应覆盖默认值(-1)
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
offsets.commit.timeout.ms
偏移量提交将被延迟,直到偏移量主题的所有副本都收到提交或达到此超时。这类似于生产者请求超时。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
offsets.load.buffer.size
将偏移量加载到缓存中时从偏移量段读取的批量大小(软限制,如果记录太大则覆盖)。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
offsets.retention.check.interval.ms
检查过时偏移量的频率
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
offsets.retention.minutes
对于订阅的消费者,在以下情况下,特定分区的已提交偏移量将过期并被丢弃: 1)在消费者组失去所有消费者(即变空)后,此保留期已过; 2) 自上次为该分区提交偏移量以来,该保留期已过,并且该组不再订阅相应的主题。 对于独立消费者(使用手动分配),自上次提交以来的保留期过后,偏移量将过期。 请注意,当通过delete-group请求删除一个组时,其提交的偏移量也将被删除,而无需额外的保留期; 此外,当通过删除主题请求删除主题时,在传播元数据更新时,该主题的任何组的提交偏移量也将被删除,而无需额外的保留期。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
offsets.topic.compression.codec
偏移量主题的压缩编解码器 - 压缩可用于实现“原子”提交
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
offsets.topic.num.partitions
偏移提交主题的分区数量(部署后不应更改)
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
offsets.topic.replication.factor
偏移主题的复制因子(设置较高以确保可用性)。在集群大小满足此复制因子要求之前,内部主题创建将失败。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
offsets.topic.segment.bytes
偏移量主题段字节应保持相对较小,以便于更快的日志压缩和缓存加载
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
process.roles
此流程扮演的角色:“broker”、“控制者”或“broker、控制者”(如果两者兼而有之)。此配置仅适用于KRaft(Kafka Raft)模式的集群(而不是ZooKeeper)。对于 Zookeeper 集群,将此配置保留为未定义或为空。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
queued.max.requests
在阻塞网络线程之前,数据平面允许的排队请求数
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
replica.fetch.min.bytes
每个获取响应所需的最小字节数。如果没有足够的字节,请等待replica.fetch.wait.max.ms
(代理配置)。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
replica.fetch.wait.max.ms
跟随者副本发出的每个 fetcher 请求的最大等待时间。该值应始终小于replica.lag.time.max.ms,以防止低吞吐量主题的ISR频繁收缩
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
replica.high.watermark.checkpoint.interval.ms
将高水位线保存到磁盘的频率
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
replica.lag.time.max.ms
如果追随者没有发送任何获取请求或者至少在这一次没有消耗到领导者日志结束偏移量,则领导者将从 isr 中删除追随者
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
replica.socket.receive.buffer.bytes
用于向领导者复制数据的网络请求的套接字接收缓冲区
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
replica.socket.timeout.ms
网络请求的套接字超时。它的值至少应该是replica.fetch.wait.max.ms
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
request.timeout.ms
该配置控制客户端等待请求响应的最长时间。如果在超时之前未收到响应,则客户端将在必要时重新发送请求,或者在重试次数耗尽时使请求失败。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.mechanism.controller.protocol
sasl.mechanism用于与控制器通信。默认为 GSSAPI。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
socket.receive.buffer.bytes
套接字服务器套接字的 SO_RCVBUF 缓冲区。如果值为-1,将使用操作系统默认值。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
socket.request.max.bytes
一次socket请求的最大字节数
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
socket.send.buffer.bytes
The SO_SNDBUF buffer of the socket server sockets. If the value is -1, the OS default will be used.
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
transaction.max.timeout.ms
The maximum allowed timeout for transactions. If a client’s requested transaction time exceed this, then the broker will return an error in InitProducerIdRequest. This prevents a client from too large of a timeout, which can stall consumers reading from topics included in the transaction.
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
transaction.state.log.load.buffer.size
Batch size for reading from the transaction log segments when loading producer ids and transactions into the cache (soft-limit, overridden if records are too large).
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
transaction.state.log.min.isr
Overridden min.insync.replicas config for the transaction topic.
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
transaction.state.log.num.partitions
事务主题的分区数量(部署后不应更改)。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
transaction.state.log.replication.factor
事务主题的复制因子(设置较高以确保可用性)。在集群大小满足此复制因子要求之前,内部主题创建将失败。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
transaction.state.log.segment.bytes
事务主题段字节应保持相对较小,以便于更快的日志压缩和缓存加载
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
transactional.id.expiration.ms
在事务 ID 过期之前,事务协调器在未收到当前事务的任何事务状态更新的情况下将等待的时间(以毫秒为单位)。当交易仍在进行时,交易 ID 不会过期。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
unclean.leader.election.enable
指示是否将不在 ISR 集中的副本作为最后手段选举为领导者,即使这样做可能会导致数据丢失
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
zookeeper.connect
以以下形式指定 ZooKeeper 连接字符串,hostname:port
其中 host 和 port 是 ZooKeeper 服务器的主机和端口。要允许在 ZooKeeper 机器关闭时通过其他 ZooKeeper 节点进行连接,您还可以在表单中指定多个主机hostname1:port1,hostname2:port2,hostname3:port3
。
服务器还可以将 ZooKeeper chroot 路径作为其 ZooKeeper 连接字符串的一部分,该连接字符串将其数据放置在全局 ZooKeeper 命名空间中的某个路径下。例如,要给出 chroot 路径,/chroot/path
请将连接字符串给出为hostname1:port1,hostname2:port2,hostname3:port3/chroot/path
.
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
zookeeper.connection.timeout.ms
客户端等待与zookeeper建立连接的最长时间。如果未设置,则使用zookeeper.session.timeout.ms中的值
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
zookeeper.max.in.flight.requests
客户端在阻塞之前向 Zookeeper 发送的未确认请求的最大数量。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
zookeeper.metadata.migration.enable
启用 ZK 到 KRaft 迁移
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
zookeeper.session.timeout.ms
Zookeeper 会话超时
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
zookeeper.set.acl
设置客户端使用安全 ACL
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
broker.heartbeat.interval.ms
代理心跳之间的时间长度(以毫秒为单位)。在 KRaft 模式下运行时使用。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
broker.id.generation.enable
在服务器上启用自动代理 ID 生成。启用后,应检查为served.broker.max.id配置的值。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
broker.rack
broker的机架。这将用于机架感知复制分配以实现容错。示例:“RACK1”、“us-east-1d”
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
broker.session.timeout.ms
The length of time in milliseconds that a broker lease lasts if no heartbeats are made. Used when running in KRaft mode.
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
connections.max.idle.ms
Idle connections timeout: the server socket processor threads close the connections that idle more than this
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
connections.max.reauth.ms
When explicitly set to a positive number (the default is 0, not a positive number), a session lifetime that will not exceed the configured value will be communicated to v2.2.0 or later clients when they authenticate. The broker will disconnect any such connection that is not re-authenticated within the session lifetime and that is then subsequently used for any purpose other than re-authentication. Configuration names can optionally be prefixed with listener prefix and SASL mechanism name in lower-case. For example, listener.name.sasl_ssl.oauthbearer.connections.max.reauth.ms=3600000
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
controlled.shutdown.enable
Enable controlled shutdown of the server
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
controlled.shutdown.max.retries
Controlled shutdown can fail for multiple reasons. This determines the number of retries when such failure happens
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
controlled.shutdown.retry.backoff.ms
Before each retry, the system needs time to recover from the state that caused the previous failure (Controller fail over, replica lag etc). This config determines the amount of time to wait before retrying.
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
controller.quorum.append.linger.ms
The duration in milliseconds that the leader will wait for writes to accumulate before flushing them to disk.
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
controller.quorum.request.timeout.ms
该配置控制客户端等待请求响应的最长时间。如果在超时之前未收到响应,则客户端将在必要时重新发送请求,或者在重试次数耗尽时使请求失败。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
controller.socket.timeout.ms
控制器到代理通道的套接字超时
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
default.replication.factor
自动创建主题的默认复制因子
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
delegate.token.expiry.time.ms
令牌需要更新之前的令牌有效时间(以毫秒为单位)。默认值 1 天。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
delegation.token.master.key
已弃用:delegation.token.secret.key 的别名,应使用它来代替此配置。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
delegation.token.max.lifetime.ms
令牌具有最长生命周期,超过该生命周期就无法再续订。默认值 7 天。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
delegation.token.secret.key
用于生成和验证委托令牌的密钥。必须在所有代理之间配置相同的密钥。如果密钥未设置或设置为空字符串,代理将禁用委托令牌支持。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
delete.records.purgatory.purge.interval.requests
删除记录请求purgatory的清除间隔(以请求数为单位)
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
fetch.max.bytes
我们将为获取请求返回的最大字节数。必须至少为 1024。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
fetch.purgatory.purge.interval.requests
获取请求炼狱的清除间隔(以请求数为单位)
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
group.initial.rebalance.delay.ms
组协调员在执行第一次重新平衡之前等待更多消费者加入新组的时间。较长的延迟意味着可能会减少重新平衡,但会增加处理开始之前的时间。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
group.max.session.timeout.ms
注册消费者允许的最大会话超时。较长的超时使消费者有更多的时间在心跳之间处理消息,但代价是检测故障的时间更长。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
group.max.size
单个消费组可以容纳的最大消费者数量。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
group.min.session.timeout.ms
注册消费者允许的最短会话超时。更短的超时会导致更快的故障检测,但代价是更频繁的消费者心跳,这可能会压垮代理资源。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
initial.broker.registration.timeout.ms
最初向控制器仲裁注册时,在声明失败并退出代理进程之前等待的毫秒数。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
inter.broker.listener.name
用于代理之间通信的侦听器名称。如果未设置,则侦听器名称由 security.inter.broker.protocol 定义。同时设置此属性和 security.inter.broker.protocol 属性是错误的。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
inter.broker.protocol.version
指定将使用哪个版本的代理间协议。
在所有代理升级到新版本后,这通常会受到影响。
一些有效值的示例为: 0.8.0、0.8.1、0.8.1.1、0.8.2、0.8.2.0、0.8.2.1、0.9.0.0、0.9.0.1 检查 MetadataVersion 以获取完整列表。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.cleaner.backoff.ms
The amount of time to sleep when there are no logs to clean
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.cleaner.dedupe.buffer.size
The total memory used for log deduplication across all cleaner threads
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.cleaner.delete.retention.ms
The amount of time to retain delete tombstone markers for log compacted topics. This setting also gives a bound on the time in which a consumer must complete a read if they begin from offset 0 to ensure that they get a valid snapshot of the final stage (otherwise delete tombstones may be collected before they complete their scan).
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.cleaner.enable
Enable the log cleaner process to run on the server. Should be enabled if using any topics with a cleanup.policy=compact including the internal offsets topic. If disabled those topics will not be compacted and continually grow in size.
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.cleaner.io.buffer.load.factor
Log cleaner dedupe buffer load factor. The percentage full the dedupe buffer can become. A higher value will allow more log to be cleaned at once but will lead to more hash collisions
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.cleaner.io.buffer.size
The total memory used for log cleaner I/O buffers across all cleaner threads
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.cleaner.io.max.bytes.per.second
The log cleaner will be throttled so that the sum of its read and write i/o will be less than this value on average
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.cleaner.max.compaction.lag.ms
The maximum time a message will remain ineligible for compaction in the log. Only applicable for logs that are being compacted.
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.cleaner.min.cleanable.ratio
The minimum ratio of dirty log to total log for a log to eligible for cleaning. If the log.cleaner.max.compaction.lag.ms or the log.cleaner.min.compaction.lag.ms configurations are also specified, then the log compactor considers the log eligible for compaction as soon as either: (i) the dirty ratio threshold has been met and the log has had dirty (uncompacted) records for at least the log.cleaner.min.compaction.lag.ms duration, or (ii) if the log has had dirty (uncompacted) records for at most the log.cleaner.max.compaction.lag.ms period.
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.cleaner.min.compaction.lag.ms
消息在日志中保持未压缩状态的最短时间。仅适用于正在压缩的日志。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.cleaner.threads
用于日志清理的后台线程数
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.cleanup.policy
超出保留窗口的段的默认清理策略。以逗号分隔的有效策略列表。有效的策略是:“删除”和“紧凑”
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.index.interval.bytes
我们向偏移索引添加条目的时间间隔
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.index.size.max.bytes
偏移索引的最大大小(以字节为单位)
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.message.format.version
指定代理将用于将消息附加到日志的消息格式版本。该值应该是有效的 MetadataVersion。一些示例是:0.8.2、0.9.0.0、0.10.0,请检查 MetadataVersion 了解更多详细信息。通过设置特定的消息格式版本,用户可以证明磁盘上的所有现有消息都小于或等于指定的版本。错误地设置此值将导致使用旧版本的消费者崩溃,因为他们将收到他们不理解的格式的消息。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.message.timestamp.difference.max.ms
代理收到消息时的时间戳与消息中指定的时间戳之间允许的最大差异。如果 log.message.timestamp.type=CreateTime,则如果时间戳差异超过此阈值,消息将被拒绝。如果log.message.timestamp.type=LogAppendTime,则忽略此配置。允许的最大时间戳差异应不大于log.retention.ms,以避免不必要的频繁日志滚动。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.message.timestamp.type
定义消息中的时间戳是消息创建时间还是日志追加时间。该值应该是“CreateTime”或“LogAppendTime”
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.preallocate
创建新段时是否应该预先分配文件?如果您在 Windows 上使用 Kafka,则可能需要将其设置为 true。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
log.retention.check.interval.ms
日志清理器检查是否有日志符合删除条件的频率(以毫秒为单位)
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
max.connection.creation.rate
我们在任何时候允许代理的最大连接创建速率。侦听器级别限制还可以通过在配置名称前添加侦听器前缀来配置,例如,listener.name.internal.max.connection.creation.rate
应根据代理容量配置代理范围的连接速率限制,而应根据应用程序要求配置侦听器限制。如果达到侦听器或代理限制(代理间侦听器除外),新连接将受到限制。仅当达到侦听器级别的速率限制时,才会限制代理间侦听器上的连接。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
max.connections
我们在任何时候允许代理的最大连接数。除了使用 max.connections.per.ip 配置的任何每 ip 限制之外,还应用此限制。侦听器级别限制也可以通过在配置名称前添加侦听器前缀来配置,例如listener.name.internal.max.connections
. 代理范围的限制应根据代理容量进行配置,而侦听器限制应根据应用程序要求进行配置。如果达到侦听器或代理限制,则新连接将被阻止。即使达到代理范围的限制,也允许代理间侦听器上的连接。在这种情况下,另一个侦听器上最近最少使用的连接将被关闭。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
max.connections.per.ip
我们允许来自每个 IP 地址的最大连接数。如果使用 max.connections.per.ip.overrides 属性配置了覆盖,则可以将其设置为 0。如果达到限制,来自该 IP 地址的新连接将被丢弃。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
max.connections.per.ip.overrides
每个 IP 或主机名的逗号分隔列表将覆盖默认的最大连接数。示例值为“hostName:100,127.0.0.1:200”
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
max.incremental.fetch.session.cache.slots
我们将维护的增量获取会话的最大数量。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
num.partitions
每个主题的默认日志分区数
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
password.encoder.old.secret
用于对动态配置的密码进行编码的旧秘密。仅当更新机密时才需要这样做。如果指定,所有动态编码的密码都将使用此旧密钥进行解码,并在代理启动时使用password.encoder.secret 重新编码。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
password.encoder.secret
用于编码该代理的动态配置密码的秘密。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
principal.builder.class
实现 KafkaPrincipalBuilder 接口的类的完全限定名称,用于构建授权期间使用的 KafkaPrincipal 对象。如果未定义主体构建器,则默认行为取决于所使用的安全协议。ssl.principal.mapping.rules
对于 SSL 身份验证,将使用应用于客户端证书中的可分辨名称(如果提供了)定义的规则派生主体;否则,如果不需要客户端身份验证,则主体名称将为 ANONYMOUS。sasl.kerberos.principal.to.local.rules
对于 SASL 身份验证,如果使用 GSSAPI,将使用定义的规则派生主体,对于其他机制则使用 SASL 身份验证 ID。对于明文,主体将是匿名的。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
Producer.purgatory.purge.interval.requests
生产者请求炼狱的清除间隔(以请求数为单位)
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
queued.max.request.bytes
在不再读取请求之前允许的排队字节数
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
replica.fetch.backoff.ms
发生获取分区错误时休眠的时间量。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
replica.fetch.max.bytes
尝试为每个分区获取的消息字节数。这不是绝对最大值,如果提取的第一个非空分区中的第一个记录批次大于此值,仍然会返回该记录批次以确保可以取得进展。代理接受的最大记录批量大小是通过message.max.bytes
(代理配置)或max.message.bytes
(主题配置)定义的。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
replica.fetch.response.max.bytes
Maximum bytes expected for the entire fetch response. Records are fetched in batches, and if the first record batch in the first non-empty partition of the fetch is larger than this value, the record batch will still be returned to ensure that progress can be made. As such, this is not an absolute maximum. The maximum record batch size accepted by the broker is defined via message.max.bytes
(broker config) or max.message.bytes
(topic config).
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
replica.selector.class
The fully qualified class name that implements ReplicaSelector. This is used by the broker to find the preferred read replica. By default, we use an implementation that returns the leader.
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
reserved.broker.max.id
Max number that can be used for a broker.id
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.client.callback.handler.class
The fully qualified name of a SASL client callback handler class that implements the AuthenticateCallbackHandler interface.
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.enabled.mechanisms
The list of SASL mechanisms enabled in the Kafka server. The list may contain any mechanism for which a security provider is available. Only GSSAPI is enabled by default.
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.jaas.config
SASL 连接的 JAAS 登录上下文参数采用 JAAS 配置文件使用的格式。JAAS 配置文件格式描述如下。该值的格式为:loginModuleClass controlFlag (optionName=optionValue)*;
。对于代理,配置必须以侦听器前缀和小写的 SASL 机制名称作为前缀。例如,需要listener.name.sasl_ssl.scram-sha-256.sasl.jaas.config=com.example.ScramLoginModule;
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.kerberos.kinit.cmd
Kerberos kinit 命令路径。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.kerberos.min.time.before.relogin
刷新尝试之间的登录线程睡眠时间。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.kerberos.principal.to.local.rules
用于从主体名称映射到短名称(通常是操作系统用户名)的规则列表。规则按顺序进行评估,并且与主体名称匹配的第一条规则用于将其映射到短名称。列表中的任何后续规则都将被忽略。默认情况下,表单的主体名称{username}/{hostname}@{REALM}
映射到{username}
. 有关格式的更多详细信息,请参阅安全授权和 acls。KafkaPrincipalBuilder
请注意,如果配置提供了 的扩展,则该配置将被忽略principal.builder.class
。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.kerberos.service.name
Kafka 运行时使用的 Kerberos 主体名称。这可以在 Kafka 的 JAAS 配置或 Kafka 的配置中定义。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.kerberos.ticket.renew.jitter
添加到更新时间的随机抖动的百分比。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.kerberos.ticket.renew.window.factor
登录线程将休眠,直到达到从上次刷新到票证到期的指定时间窗口因子,此时它将尝试更新票证。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.login.callback.handler.class
实现 AuthenticateCallbackHandler 接口的 SASL 登录回调处理程序类的完全限定名称。对于代理,登录回调处理程序配置必须以侦听器前缀和小写的 SASL 机制名称为前缀。例如,listener.name.sasl_ssl.scram-sha-256.sasl.login.callback.handler.class=com.example.CustomScramLoginCallbackHandler
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.login.class
实现 Login 接口的类的完全限定名称。 对于代理,登录配置必须以侦听器前缀和小写的 SASL 机制名称作为前缀。 例如: listener.name.sasl_ssl.scram-sha-256.sasl.login.class=com.example.CustomScramLogin
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.login.refresh.buffer.seconds
刷新凭证时在凭证过期前维持的缓冲时间量(以秒为单位)。 如果刷新发生的时间比缓冲秒数更接近到期,则刷新将向上移动以维持尽可能多的缓冲时间。 合法值介于 0 到 3600(1 小时)之间; 如果未指定值,则使用默认值 300(5 分钟)。 如果该值和 sasl.login.refresh.min.period.seconds 的总和超过凭证的剩余生命周期,则它们都会被忽略。 目前仅适用于 OAUTHBEARER。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.login.refresh.min.period.seconds
登录刷新线程在刷新凭据之前等待的所需最短时间(以秒为单位)。 合法值介于 0 到 900(15 分钟)之间; 如果未指定值,则使用默认值 60(1 分钟)。 如果该值和 sasl.login.refresh.buffer.seconds 的总和超过凭证的剩余生命周期,则它们都会被忽略。 目前仅适用于 OAUTHBEARER。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.login.refresh.window.factor
登录刷新线程将休眠,直到达到相对于凭证生命周期的指定窗口因子,此时它将尝试刷新凭证。 合法值介于 0.5 (50%) 和 1.0 (100%)(含)之间; 如果未指定值,则使用默认值 0.8 (80%)。 目前仅适用于 OAUTHBEARER。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.login.refresh.window.jitter
相对于添加到登录刷新线程睡眠时间的凭证生命周期的最大随机抖动量。 合法值介于 0 和 0.25 (25%) 之间(含); 如果未指定值,则使用默认值 0.05 (5%)。 目前仅适用于 OAUTHBEARER。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.mechanism.inter.broker.protocol
SASL 机制用于代理间通信。 默认为 GSSAPI。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.oauthbearer.jwks.endpoint.url
可以从中检索提供商的 JWKS(JSON Web 密钥集) 的 OAuth/OIDC 提供商 URL。 URL 可以基于 HTTP(S) 或基于文件。 如果 URL 基于 HTTP(S),则将通过代理启动时配置的 URL 从 OAuth/OIDC 提供程序检索 JWKS 数据。 所有当时的密钥都将缓存在代理上以用于传入请求。 如果收到 JWT 的身份验证请求,其中包含尚未在缓存中的“kid”标头声明值,则将根据需要再次查询 JWKS 端点。 但是,代理会每隔 sasl.oauthbearer.jwks.endpoint.refresh.ms 毫秒轮询一次 URL,以便在收到包含这些密钥的任何 JWT 请求之前使用任何即将到来的密钥刷新缓存。 如果 URL 是基于文件的,代理将在启动时从配置的位置加载 JWKS 文件。 如果 JWT 包含 JWKS 文件中不存在的“kid”标头值,代理将拒绝 JWT 并且身份验证将失败。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.oauthbearer.token.endpoint.url
OAuth/OIDC 身份提供商的 URL。 如果 URL 基于 HTTP(S),则它是颁发者的令牌端点 URL,将根据 sasl.jaas.config 中的配置发出登录请求。 如果 URL 是基于文件的,则它指定一个包含 OAuth/OIDC 身份提供商颁发的访问令牌(JWT 序列化形式)的文件,用于授权。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.server.callback.handler.class
实现 AuthenticateCallbackHandler 接口的 SASL 服务器回调处理程序类的完全限定名称。 服务器回调处理程序必须以侦听器前缀和小写 SASL 机制名称作为前缀。 例如: listener.name.sasl_ssl.plain.sasl.server.callback.handler.class=com.example.CustomPlainCallbackHandler.
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
sasl.server.max.receive.size
初始 SASL 身份验证之前和期间允许的最大接收大小。默认接收大小为 512KB。GSSAPI 将请求限制为 64K,但对于自定义 SASL 机制,默认情况下我们允许最多 512KB。实际上,PLAIN、SCRAM 和 OAUTH 机制可以使用更小的限制。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
security.inter.broker.protocol
用于broker之间通信的安全协议。有效值为:PLAINTEXT、SSL、SASL_PLAINTEXT、SASL_SSL。同时设置 this 和 inter.broker.listener.name 属性是错误的。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
socket.connection.setup.timeout.max.ms
客户端等待建立套接字连接的最长时间。对于每个连续的连接失败,连接设置超时将呈指数增长,直至达到此最大值。为了避免连接风暴,将对超时应用 0.2 的随机化因子,从而产生比计算值低 20% 到高 20% 之间的随机范围。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
socket.connection.setup.timeout.ms
客户端等待建立套接字连接的时间。如果在超时之前未建立连接,客户端将关闭套接字通道。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
socket.listen.backlog.size
套接字上挂起的连接的最大数量。 在Linux中,您可能还需要相应配置somaxconn
和tcp_max_syn_backlog
内核参数才能使配置生效。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
ssl.cipher.suites
密码套件列表。 这是身份验证、加密、MAC 和密钥交换算法的命名组合,用于使用 TLS 或 SSL 网络协议协商网络连接的安全设置。 默认情况下,支持所有可用的密码套件。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
ssl.client.auth
配置 kafka 代理来请求客户端身份验证。 以下设置是常见的:
ssl.client.auth=required
如果设置为必需,则需要客户端身份验证。ssl.client.auth=requested
这意味着客户端身份验证是可选的。 与必需的不同,如果设置了此选项,客户端可以选择不提供有关其自身的身份验证信息ssl.client.auth=none
这意味着不需要客户端身份验证。
Type: |
---|
Default: |
Valid Values: |
Importance: |
Update Mode: |
ssl.enabled.protocols
为 SSL 连接启用的协议列表。 使用 Java 11 或更高版本运行时,默认值为“TLSv1.2、TLSv1.3”,否则为“TLSv1.2”。 使用 Java 11 的默认值,如果客户端和服务器都支持 TLSv1.3,则首选 TLSv1.3,否则回退到 TLSv1.2(假设两者至少支持 TLSv1.2)。 对于大多数情况,此默认值应该没问题。 另请参阅 ssl.protocol
的配置文档。
Type: |
---|
Default: |
Valid Values: | <