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

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

Amazon MSK 配置操作

本主题说明如何创建自定义 MSK 配置以及如何对这些配置执行操作。有关如何使用 MSK 配置创建或更新集群的信息,请参阅 Amazon MSK 的工作原理

创建 MSK 配置

  1. 创建一个文件,可在其中指定要设置的配置属性以及要分配给这些属性的值。以下是示例配置文件的内容。

    auto.create.topics.enable = true log.roll.ms = 604800000
  2. 运行以下 Amazon CLI 命令,并config-file-path替换为上一步中保存配置的文件的路径。

    注意

    您为配置选择的名称必须符合以下正则表达式:"^[0-9A-Za-z][0-9A-Za-z-]{0,}$"。

    aws kafka create-configuration --name "ExampleConfigurationName" --description "Example configuration description." --kafka-versions "1.1.1" --server-properties fileb://config-file-path

    以下是运行此命令后的成功响应示例。

    { "Arn": "arn:aws:kafka:us-east-1:123456789012:configuration/SomeTest/abcdabcd-1234-abcd-1234-abcd123e8e8e-1", "CreationTime": "2019-05-21T19:37:40.626Z", "LatestRevision": { "CreationTime": "2019-05-21T19:37:40.626Z", "Description": "Example configuration description.", "Revision": 1 }, "Name": "ExampleConfigurationName" }
  3. 上一条命令会返回新配置的 Amazon 资源名称(ARN)。保存此 ARN,因为您需要使用它来在其他命令中引用此配置。如果您丢失了配置 ARN,则可列出账户中的所有配置来重新找到它。

更新 MSK 配置

  1. 创建一个文件,可在其中指定要更新的配置属性以及要分配给这些属性的值。以下是示例配置文件的内容。

    auto.create.topics.enable = true min.insync.replicas = 2
  2. 运行以下 Amazon CLI 命令,并config-file-path替换为上一步中保存配置的文件的路径。

    请将 configuration-arn 替换为您创建配置时获取的 ARN。如果您在创建配置时未保存 ARN,则可使用 list-configurations 命令列出账户中的所有配置。您想要在列表中显示的配置将显示在响应中。配置的 ARN 也将显示在该列表中。

    aws kafka update-configuration --arn configuration-arn --description "Example configuration revision description." --server-properties fileb://config-file-path
  3. 以下是运行此命令后的成功响应示例。

    { "Arn": "arn:aws:kafka:us-east-1:123456789012:configuration/SomeTest/abcdabcd-1234-abcd-1234-abcd123e8e8e-1", "LatestRevision": { "CreationTime": "2020-08-27T19:37:40.626Z", "Description": "Example configuration revision description.", "Revision": 2 } }

删除 MSK 配置

以下程序展示如何删除未附加到集群的配置。您无法删除附加到集群的配置。

  1. 要运行此示例,请将 configuration-arn 替换为您创建配置时获取的 ARN。如果您在创建配置时未保存 ARN,则可使用 list-configurations 命令列出账户中的所有配置。您想要在列表中显示的配置将显示在响应中。配置的 ARN 也将显示在该列表中。

    aws kafka delete-configuration --arn configuration-arn
  2. 以下是运行此命令后的成功响应示例。

    { "arn": " arn:aws:kafka:us-east-1:123456789012:configuration/SomeTest/abcdabcd-1234-abcd-1234-abcd123e8e8e-1", "state": "DELETING" }

描述 MSK 配置

  1. 以下命令会返回有关配置的元数据。要获取配置的详细说明,请运行 describe-configuration-revision

    要运行此示例,请将 configuration-arn 替换为您创建配置时获取的 ARN。如果您在创建配置时未保存 ARN,则可使用 list-configurations 命令列出账户中的所有配置。您想要在列表中显示的配置将显示在响应中。配置的 ARN 也将显示在该列表中。

    aws kafka describe-configuration --arn configuration-arn
  2. 以下是运行此命令后的成功响应示例。

    { "Arn": "arn:aws:kafka:us-east-1:123456789012:configuration/SomeTest/abcdabcd-abcd-1234-abcd-abcd123e8e8e-1", "CreationTime": "2019-05-21T00:54:23.591Z", "Description": "Example configuration description.", "KafkaVersions": [ "1.1.1" ], "LatestRevision": { "CreationTime": "2019-05-21T00:54:23.591Z", "Description": "Example configuration description.", "Revision": 1 }, "Name": "SomeTest" }

描述 MSK 配置修订

如果您使用 describe-configuration 命令描述 MSK 配置,您将看到配置的元数据。要获得配置的描述,请使用 describe-configuration-revision 命令。

  • 运行以下命令,并将 configuration-arn 替换为您创建配置时获取的 ARN。如果您在创建配置时未保存 ARN,则可使用 list-configurations 命令列出账户中的所有配置。您想要在列表中显示的配置将显示在响应中。配置的 ARN 也将显示在该列表中。

    aws kafka describe-configuration-revision --arn configuration-arn --revision 1

    以下是运行此命令后的成功响应示例。

    { "Arn": "arn:aws:kafka:us-east-1:123456789012:configuration/SomeTest/abcdabcd-abcd-1234-abcd-abcd123e8e8e-1", "CreationTime": "2019-05-21T00:54:23.591Z", "Description": "Example configuration description.", "Revision": 1, "ServerProperties": "YXV0by5jcmVhdGUudG9waWNzLmVuYWJsZSA9IHRydWUKCgp6b29rZWVwZXIuY29ubmVjdGlvbi50aW1lb3V0Lm1zID0gMTAwMAoKCmxvZy5yb2xsLm1zID0gNjA0ODAwMDAw" }

    ServerProperties 的值已使用 base64 进行编码。如果您使用 base64 解码器(例如 https://www.base64decode.org/)手动对其进行解码,则将获得用于创建自定义配置的原始配置文件的内容。在此情况下,您将获得以下内容:

    auto.create.topics.enable = true log.roll.ms = 604800000

列出您的账户中当前区域的所有 MSK 配置

  • 运行以下命令。

    aws kafka list-configurations

    以下是运行此命令后的成功响应示例。

    { "Configurations": [ { "Arn": "arn:aws:kafka:us-east-1:123456789012:configuration/SomeTest/abcdabcd-abcd-1234-abcd-abcd123e8e8e-1", "CreationTime": "2019-05-21T00:54:23.591Z", "Description": "Example configuration description.", "KafkaVersions": [ "1.1.1" ], "LatestRevision": { "CreationTime": "2019-05-21T00:54:23.591Z", "Description": "Example configuration description.", "Revision": 1 }, "Name": "SomeTest" }, { "Arn": "arn:aws:kafka:us-east-1:123456789012:configuration/SomeTest/abcdabcd-1234-abcd-1234-abcd123e8e8e-1", "CreationTime": "2019-05-03T23:08:29.446Z", "Description": "Example configuration description.", "KafkaVersions": [ "1.1.1" ], "LatestRevision": { "CreationTime": "2019-05-03T23:08:29.446Z", "Description": "Example configuration description.", "Revision": 1 }, "Name": "ExampleConfigurationName" } ] }