更新代理类型 - Amazon Managed Streaming for Apache Kafka
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

更新代理类型

您可以通过更改代理的类型(大小或系列)来按需扩展 MSK 集群,不必重新分配 Apache Kafka 分区。通过更改代理的类型,您可以根据工作负载的变化灵活地调整 MSK 集群的计算容量,不会中断集群 I/O。Amazon MSK 对指定集群中的所有代理使用相同的代理类型。本节旨在介绍如何更新 MSK 集群的代理类型。当集群启动并运行后,将以滚动方式更新代理类型。这意味着 Amazon MSK 一次关闭一个代理来更新代理类型。有关如何在代理类型更新期间使集群高度可用的信息,请参阅 构建高度可用的集群。为了进一步降低对生产力的任何潜在影响,您可以在流量较低的时期更新代理类型。

代理类型更新期间,您可以继续生成和使用数据。不过,您必须等到更新完成,才能重启代理或调用 Amazon MSK operations 下列出的任何更新操作。

如果想将集群更新为较小的代理类型,建议您先在测试集群上尝试更新,了解会对场景产生的影响。

重要

如果每个代理的分区数超过 调整集群的大小:每个代理的分区数量 中指定的最大数量,则无法将集群更新为较小的代理类型。

使用更新经纪商类型 Amazon Web Services Management Console

  1. https://console.amazonaws.cn/msk/ 打开 Amazon MSK 控制台。

  2. 选择要更新代理类型的 MSK 集群。

  3. 在集群的详细信息页面上,找到代理摘要部分,从中选择编辑代理类型

  4. 从列表中选择所需的代理类型。

  5. 保存更改。

使用更新经纪商类型 Amazon CLI

  1. 运行以下命令,ClusterArn替换为您在创建集群时获得的 Amazon 资源名称 (ARN)。如果您没有该集群的 ARN,可以通过列出所有集群来找到它。有关更多信息,请参阅 列出 Amazon MSK 集群

    当前集群版本替换为集群的当前版本TargetType以及您希望代理成为的新类型。要了解有关代理类型的更多信息,请参阅 代理类型

    aws kafka update-broker-type --cluster-arn ClusterArn --current-version Current-Cluster-Version --target-instance-type TargetType

    下面的示例说明如何使用此命令:

    aws kafka update-broker-type --cluster-arn "arn:aws:kafka:us-east-1:0123456789012:cluster/exampleName/abcd1234-0123-abcd-5678-1234abcd-1" --current-version "K1X5R6FKA87" --target-instance-type kafka.m5.large

    该 命令的输出如以下 JSON 示例所示。

    { "ClusterArn": "arn:aws:kafka:us-east-1:0123456789012:cluster/exampleName/abcd1234-0123-abcd-5678-1234abcd-1", "ClusterOperationArn": "arn:aws:kafka:us-east-1:012345678012:cluster-operation/exampleClusterName/abcdefab-1234-abcd-5678-cdef0123ab01-2/0123abcd-abcd-4f7f-1234-9876543210ef" }
  2. 要获得update-broker-type操作结果,请运行以下命令,ClusterOperationArn替换为在命令输出中获得的 ARN。update-broker-type

    aws kafka describe-cluster-operation --cluster-operation-arn ClusterOperationArn

    describe-cluster-operation 命令的输出如以下 JSON 示例所示。

    { "ClusterOperationInfo": { "ClientRequestId": "982168a3-939f-11e9-8a62-538df00285db", "ClusterArn": "arn:aws:kafka:us-east-1:0123456789012:cluster/exampleName/abcd1234-0123-abcd-5678-1234abcd-1", "CreationTime": "2021-01-09T02:24:22.198000+00:00", "OperationArn": "arn:aws:kafka:us-east-1:012345678012:cluster-operation/exampleClusterName/abcdefab-1234-abcd-5678-cdef0123ab01-2/0123abcd-abcd-4f7f-1234-9876543210ef", "OperationState": "UPDATE_COMPLETE", "OperationType": "UPDATE_BROKER_TYPE", "SourceClusterInfo": { "InstanceType": "t3.small" }, "TargetClusterInfo": { "InstanceType": "m5.large" } } }

    如果 OperationState 的值为 UPDATE_IN_PROGRESS,请等待一段时间,然后再次运行 describe-cluster-operation 命令。

使用 API 更新代理类型

要使用 API 更新代理类型,请参阅UpdateBrokerType