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

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

更新 Amazon MSK 集群的配置

要更新集群配置,请确保集群处于 ACTIVE 状态。您还必须确保 MSK 集群上每个代理的分区数低于 调整集群的大小:每个代理的分区数量 中所述的限制。如果超过这些限制,便无法更新集群的配置。

有关 MSK 配置的信息,包括如何创建自定义配置、可以更新哪些属性以及更新现有集群的配置时会发生什么情况,请参阅 Amazon MSK 配置

使用更新集群的配置 Amazon CLI

  1. 复制以下 JSON 并将其保存到文件中。将文件命名为 configuration-info.jsonConfigurationArn替换为您要用于更新集群的配置的 Amazon 资源名称 (ARN)。在以下 JSON 中,ARN 字符串必须使用引号引起来。

    Configuration-Revision 替换为要使用的配置的修订版本。配置修订版本是从 1 开始的整数。在以下 JSON 中,该整数不能使用引号引起来。

    { "Arn": ConfigurationArn, "Revision": Configuration-Revision }

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

    Path-to-Config-Info-File 替换为您的配置信息文件的路径。如果您将上一步中创建的文件命名为 configuration-info.json,并将其保存在当前目录中,Path-to-Config-Info-File 即为 configuration-info.json

    Current-Cluster-Version 替换为集群的当前版本。

    重要

    集群版本不是简单的整数。要查找集群的当前版本,请使用DescribeCluster操作或 desc ribe- Amazon CLI cluster 命令。示例版本是 KTVPDKIKX0DER

    aws kafka update-cluster-configuration --cluster-arn ClusterArn --configuration-info file://Path-to-Config-Info-File --current-version Current-Cluster-Version

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

    aws kafka update-cluster-configuration --cluster-arn "arn:aws:kafka:us-east-1:0123456789012:cluster/exampleName/abcd1234-0123-abcd-5678-1234abcd-1" --configuration-info file://c:\users\tester\msk\configuration-info.json --current-version "K1X5R6FKA87"

    update-cluster-configuration 命令的输出如以下 JSON 示例所示。

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

    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:012345678012:cluster/exampleClusterName/abcdefab-1234-abcd-5678-cdef0123ab01-2", "CreationTime": "2019-06-20T21:08:57.735Z", "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_CLUSTER_CONFIGURATION", "SourceClusterInfo": {}, "TargetClusterInfo": { "ConfigurationInfo": { "Arn": "arn:aws:kafka:us-east-1:123456789012:configuration/ExampleConfigurationName/abcdabcd-abcd-1234-abcd-abcd123e8e8e-1", "Revision": 1 } } } }

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

使用 API 更新集群的配置

要使用 API 更新集群的配置,请参阅UpdateClusterConfiguration