本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
亚马逊 MSK 的默认配置
当您创建 MSK 集群但未指定自定义 MSK 配置时,Amazon MSK 会创建并使用默认配置,其值如下表所示。对于不在此表中的属性,亚马逊 MSK 使用与您的 Apache Kafka 版本相关的默认值。有关这些默认值的列表,请参阅 Apache Kafka 配置
默认配置值 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
名称 | 描述 | 非分层存储集群的默认值 | 启用分层存储的群集的默认值 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
allow.everyone.if.no.acl.found | 如果没有与特定资源匹配的资源模式,则该资源没有关联的 ACL。在这种情况下,如果您将此属性设置为true ,所有用户都可以访问资源,而不仅仅是超级用户。 |
true |
true |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
auto.create.topics.enable | 在服务器上启用主题的自动创建。 | false |
false |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
auto.leader.rebalance.enable | 启用自动领导平衡。如有必要,后台线程会定期检查并启动领导者平衡。 | true |
true |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
default.replication.factor | 自动创建的主题的默认复制因子。 | 3 用于 3 个可用区中的集群,2 个可用区中的集群。 | 3 用于 3 个可用区中的集群,2 个可用区中的集群。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
local.retention.bytes |
删除旧分段之前分区的本地日志段的最大大小。如果您未设置此值,则使用 log.retention.bytes 中的值。有效值应始终小于或等于 log.retention.bytes 值。默认值为 -2 表示对本地保留没有限制。这相当于保留.ms/bytes 设置为 -1。local.retention.ms 和 local.retention.bytes 与 local.retention.bytes 类似,因为它们用于确定日志段应在本地存储中保留多长时间。现有的 log.retention.* 配置是主题分区的保留配置。这包括本地和远程存储。有效值:[-2; +Inf] 中的整数 |
-2 表示无限制 | -2 表示无限制 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
local.retention.ms |
删除前保留本地日志段的毫秒数。如果您未设置此值,亚马逊 MSK 将使用 log.retention.ms 中的值。有效值应始终小于或等于 log.retention.bytes 值。默认值为 -2 表示对本地保留没有限制。这相当于保留.ms/bytes 设置为 -1。 local.retention.ms 和 local.retention.bytes 的值与 log.retention.bytes 类似。MSK 使用此配置来确定日志段应在本地存储中保留多长时间。现有的 log.retention.* 配置是主题分区的保留配置。这包括本地和远程存储。有效值是大于 0 的整数。 |
-2 表示无限制 | -2 表示无限制 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
log.message.timestamp.diference.ma |
代理收到消息时的时间戳与消息中指定的时间戳之间允许的最大差异。如果 log.message.timestamp.tyCreateTime,如果时间戳的差异超过此阈值,则消息将被拒绝。如果 log.message.timestamp.type= 则忽略此配置LogAppendTime。允许的最大时间戳差不应大于 log.retention.ms,以避免不必要地频繁滚动日志。 | 9223372036854775807 | 86400000 适用于 Kafka 2.8.2.tiered | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
log.segment.bytes | 单个日志文件的最大大小。 | 1073741824 | 134217728 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
min.insync.replicas |
当生产者将 acks 的值(生产者从 Kafka 经纪人那里获得的确认信息)设置为时 当您同时使用 min.insync.replicas 和 acks 中的值时,可以强制执行更高的耐久性保证。例如,您可以创建一个重复因子为 3 的主题,将 min.insync.replicas 设置为 2,然后使用 acks 生成 |
2 用于 3 个可用区中的集群,1 个用于 2 个可用区域中的集群。 | 2 用于 3 个可用区中的集群,1 个用于 2 个可用区域中的集群。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
num.io.threads | 服务器用于生成请求的线程数,其中可能包括磁盘 I/O。 | 8 | 最大 (8, vCPU) 其中 vCPU 取决于代理的实例大小 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
num.network.threads | 服务器用于接收来自网络的请求和向网络发送响应的线程数。 | 5 | max (5, vCPU/2) 其中 vCPU 取决于代理的实例大小 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
num.partitions | 每个主题的默认日志分区数。 | 1 | 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
num.replica.fetchers | 用于从源代理复制消息的 fetcher 线程数。如果增加此值,则可以提高关注代理中的 I/O 并行程度。 | 2 | max (2, vCPU/4) 其中 vCPU 取决于代理的实例大小 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
remote.log.msk.disable.policy |
与 remote.storage.enable 一起使用以禁用分层存储。将此策略设置为 “删除”,表示在将 remote.storage.enable 设置为 false 时,分层存储中的数据将被删除。 |
不适用 | 删除 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
remote.log.reader.threader | 远程日志读取器线程池大小,用于调度任务以从远程存储中提取数据。 | 不适用 | max (10, vCPU * 0.67) 其中 vCPU 取决于代理的实例大小 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
remote.storage.enable |
如果设置为 true,则为主题启用分层(远程)存储。如果设置为 false 且 remote.log.msk.disable.policy 设置为 “删除”,则禁用主题级分层存储。禁用分层存储时,将从远程存储中删除数据。当您为某个主题禁用分层存储时,您无法再次启用分层存储。 | false | 真实 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
replica.lag.time.max.ms | 如果跟踪器没有发送任何提取请求,或者至少在此毫秒数内没有使用到领导的日志结束偏移量,则领导会从 ISR 中删除追随者。 | 30000 | 30000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
retention.ms |
必填字段。最短时间为 3 天。没有默认值,因为该设置是强制性的。 亚马逊 MSK 使用 retention.ms 值和 local.retention.ms 来确定数据何时从本地存储移动到分层存储。local.retention.ms 值指定何时将数据从本地存储移动到分层存储。retention.ms 值指定何时从分层存储中删除数据(即从集群中删除)。有效值:[-1; +Inf] 中的整数 |
最低 259,200,000 毫秒(3 天)。-1 表示无限保留。 | 最低 259,200,000 毫秒(3 天)。-1 表示无限保留。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
socket.receive.buffer.bytes | 套接字服务器套接字的 SO_RCVBUF 缓冲区。如果值为 -1,则使用操作系统默认值。 | 102400 | 102400 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
socket.request.max.bytes | 套接字请求中的最大字节数。 | 104857600 | 104857600 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
socket.send.buffer.bytes | 套接字服务器套接字的 SO_SNDBUF 缓冲区。如果值为 -1,则使用操作系统默认值。 | 102400 | 102400 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
unclean.leader.election.enable | 表示您是否希望将不在 ISR 集合中的副本作为领导者作为最后的手段,即使这可能会导致数据丢失。 | 真实 | false | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
zookeeper.session.timeout.ms |
阿帕奇ZooKeeper会话超时(以毫秒为单位)。 |
18000 | 18000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
zookeeper.set.acl | 将客户端设置为使用安全 ACL。 | false | false |
有关如何指定自定义配置值的信息,请参见自定义 MSK 配置。