Amazon MSK 集群的稳定状态再平衡 - Amazon Managed Streaming for Apache Kafka
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

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

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

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

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

  • 在不影响数据可用性的情况下自动调整分区位置。

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

  • 保持集群性能。

主题
    Pause and resume steady state rebalancing inAmazon Web Services 管理控制台
    1. https://console.aws.amazon.com/msk/家打开亚马逊 MSK 控制台? region=us-east-1#/home/。

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

    3. 在集群详细信息页面上,验证智能重新平衡状态是否为 “活动”。如果智能重新平衡不可用或状态为已暂停,请创建一个新的基于 Express 的集群。

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

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

      1. 选择 “已暂停”。

      2. 选择保存更改

    Pause and resume steady state rebalancing usingAmazon CLI

    要使用将集群的重新平衡状态设置为Amazon 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 usingAmazonSDK

    您还可以使用 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"));