Managed Service for Apache Kafka 中的代理概览

本页介绍了 Managed Service for Apache Kafka 如何为 Kafka 集群预配代理。

概览

Kafka 集群由一个或多个代理组成。生产者应用将消息发送到代理,而消费者应用连接到代理以读取消息。多个使用方可以并行读取消息,通常使用使用方群组。 主题中的每个分区都会分配一个主代理。领导者负责将接收到的分区数据复制到其他代理。

Managed Service for Apache Kafka 会自动为您创建代理。 虽然您无法直接配置代理的数量,但可以通过扩缩集群来添加代理。

代理预配

创建 Managed Service for Apache Kafka 集群时,该服务会在三个可用区中的每个可用区内预配至少一个 broker。代理商数量的计算方式如下:

number of brokers = max(3, ceiling(vCPUs / 15))

例如,一个具有 75 个 vCPU 的集群从 5 个代理开始。

代理会尽可能均匀地分布在各个可用区中,并且所有代理都具有相同数量的 vCPU,该数量可能是一个小数。每个代理至少有一个 vCPU。

该服务会自动为代理配置磁盘容量。您可以选择在创建集群时配置每个代理的磁盘容量,并在以后增加该容量。如需了解详情,请参阅配置代理磁盘大小

扩缩集群

随着集群规模的扩大,额外的 vCPU 会分配给现有代理,每个代理最多可分配 15 个 vCPU。如果集群大小超过每个代理 15 个 vCPU,则该服务会预配新的代理。代理均匀分布在三个可用区中,最多相差一个。

如果您减小集群规模,vCPU 会分配给现有代理,每个代理的 vCPU 数量最少为 1 个。在集群的整个生命周期内,绝不会删除代理。新代理配置完成后,可以缩减到 1 个 vCPU,但绝不会被删除。

重新平衡代理分区

通常,扩容集群的原因是通过将一些分区重新分配给新代理来减少现有代理上的负载。此过程称为“重新平衡”。重新平衡可以自动执行,也可以手动执行。

  • 自动再平衡。自动重新平衡是一项集群范围的设置。预配新代理时,如果启用了自动重新平衡,服务会自动重新平衡现有代理中的分区。重新平衡算法基于分区数量,旨在使每个代理的分区数量大致相同。它不会考虑每个分区实际服务的流量。如需了解详情,请参阅重新平衡配置

  • 手动重新平衡。您可以通过更改分区分配来手动重新平衡分区。您可能需要这样做,因为自动重新平衡功能已停用,或者某个分区接收的流量明显高于其他分区(称为热门分区)。如需了解详情,请参阅更改分区分配

后续步骤