默认 Amazon MSK 配置 - Amazon Managed Streaming for Apache Kafka
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

默认 Amazon MSK 配置

在未指定自定义 MSK 配置的情况下创建 MSK 集群 时,Amazon MSK 会创建一个默认配置,并将此配置与下表中显示的值结合使用。对于不在此表中的属性,Amazon MSK 将使用与您的 Apache Kafka 版本关联的默认值。有关这些默认值的列表,请参阅 Apache Kafka 配置

默认配置值
名称 描述 默认值
allow.everyone.if.no.acl.found 如果没有资源模式与特定资源匹配,则该资源没有关联的 ACLs。 在这种情况下,如果该属性设置为 true,则允许每个人访问资源,而不仅仅是超级用户。 true
auto.create.topics.enable 在服务器上启用主题的自动创建。 false
auto.leader.rebalance.enable 启用自动领导平衡。如果需要,后台线程会定期检查并触发领导平衡。 true
default.replication.factor 自动创建的主题的默认复制因子。 3
min.insync.replicas

当创建器将 acks 设置为 "all"(或 "-1")时,min.insync.replicas 指定为使写入被视为成功而必须确认写入的最小副本数。如果无法达到此最小值,创建者将引发异常(NotEnoughReplicas 或 NotEnoughReplicasAfterAppend)。

通过将 min.insync.replicas 和 acks 结合使用,您可以增强耐用性保证。典型的方案是创建一个重复因子为 3 的主题,将 min.insync.replicas 设置为 2,并在 acks 为 "all" 的情况下生成。 这可确保在大多数副本未收到写入时,创建器将引发异常。

2
num.io.threads 服务器用于处理请求的线程的数目,其中可能包括磁盘 I/O。 8
num.network.threads 服务器用于接收来自网络的请求并向网络发送响应的线程的数目。 5
num.partitions 每个主题的默认日志分区数。 1
num.replica.fetchers 用于从源代理复制消息的提取器线程数。增大此值会增加跟踪器代理中的 I/O 并行度。 2
replica.lag.time.max.ms 如果跟踪器没有发送任何提取请求,或者至少在此毫秒数内没有使用到领导的日志结束偏移量,则领导会从 ISR 中删除追随者。 30000
socket.receive.buffer.bytes 套接字服务器套接字的 SO_RCVBUF 缓冲区。如果值为 -1,则使用操作系统默认值。 102400
socket.request.max.bytes 套接字请求中的最大字节数。 104857600
socket.send.buffer.bytes 套接字服务器套接字的 SO_SNDBUF 缓冲区。如果值为 -1,则使用操作系统默认值。 102400
unclean.leader.election.enable 指示是否允许选择不在 ISR 集中的副本作为领导(作为最后的手段),即使这样做可能导致数据丢失。 true
zookeeper.session.timeout.ms

Apache ZooKeeper 会话超时(以毫秒为单位)。

18000
zookeeper.set.acl 将客户端设置为使用安全 ACLs。 false