View a markdown version of this page

Amazon MSK 集群的稳定状态再平衡 - Amazon Managed Streaming for Apache Kafka

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

Amazon MSK 集群的稳定状态再平衡

注意

自 2026 年 6 月 18 日起,所有带有 Express 代理的 MSK 预配置集群均可使用智能再平衡。这包括在 2025 年 11 月推出智能再平衡功能之前创建的 Express 集群。对于 2025 年 11 月 20 日之前创建的集群,可以使用 “智能再平衡”,并将 “重新平衡状态” 设置为 “已暂停”要为现有集群启用此功能,请使用 Amazon MSK 控制台或 SDK 将 “重新平衡状态” 设置为 “活动”。 AWS CLI有关说明,请参阅稳态再平衡。

稳定状态再平衡是智能再平衡功能的一部分,对于所有带有 Express 代理的新 MSK Provisioned 集群,该功能默认处于启用状态。当您向上或向下扩展集群时,Amazon MSK 会自动处理分区管理,方法是将分区分配给新的代理,并从代理中移出待删除的分区。为确保跨经纪商的最佳工作负载分配,智能再平衡使用 Amazon MSK 最佳实践来确定自动启动经纪人再平衡的阈值。

需要时,您可以暂停和恢复稳定状态的再平衡。稳定状态再平衡会持续监控您的集群,并执行以下操作:

  • 跟踪代理资源使用情况(CPU、网络、存储)。

  • 自动调整分区位置,而不会对数据可用性产生任何影响。

  • 与标准经纪商相比,Express经纪商完成再平衡操作的速度最多可快180倍。

  • 保持集群性能。

主题
    Pause and resume steady state rebalancing in AWS 管理控制台
    1. 打开 Amazon MSK 控制台,网址为https://console.aws.amazon.com/msk/home? region=us-east-1#/home/。

    2. 集群页面上,选择一个 Express-based 集群。有关创建预配置集 Express-based 群的信息,请参阅步骤 1:创建预置 MSK 集群

    3. 在集群详细信息页面上,验证智能重新平衡状态。如果状态为 “已暂停”,请按照步骤 4—5 将其启用。

    4. 在 “操作” 下拉列表中,选择 “编辑智能再平衡”。

    5. “编辑智能再平衡” 页面上,执行以下操作:

      1. 选择活动

      2. 选择保存更改

    Pause and resume steady state rebalancing using AWS CLI

    要使用将集群的重新平衡状态设置为 AWS CLI,请ACTIVE使用 update-re balancing 命令,如下例所示。在此命令中,使用rebalancing参数指定状态。

    aws msk update-rebalancing --cluster-arn arn:aws:kafka:us-east-1:123456789012:cluster/myCluster/abcd1234-5678-90ef-ghij-klmnopqrstuv-1 --current-version ABCDEF1GHIJK0L --rebalancing "{\"Rebalancing\":{\"Status\":\"ACTIVE\"}}"
    Pause and resume steady state rebalancing using AWS SDK

    您还可以使用 UpdateRebalancingRequestAPI 设置集群的重新平衡状态,以编程方式修改代理计数。以下示例说明如何将重新平衡状态设置为ACTIVE和。PAUSED

    final UpdateRebalancingRequest updateRebalancingRequest = new UpdateRebalancingRequest() .withClusterArn(arn:aws:kafka:us-east-1:123456789012:cluster/myCluster/abcd1234-5678-90ef-ghij-klmnopqrstuv-1) .withCurrentVersion(ABCDEF1GHIJK0L) .withRebalancing(new Rebalancing().withStatus("ACTIVE"));
    final UpdateRebalancingRequest updateRebalancingRequest = new UpdateRebalancingRequest() .withClusterArn(arn:aws:kafka:us-east-1:123456789012:cluster/myCluster/abcd1234-5678-90ef-ghij-klmnopqrstuv-1) .withCurrentVersion(ABCDEF1GHIJK0L) .withRebalancing(new Rebalancing().withStatus("PAUSED"));