View a markdown version of this page

使用控制台创建复制器 Amazon - Amazon Managed Streaming for Apache Kafka
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

使用控制台创建复制器 Amazon

注意

以下步骤侧重于在两个 MSK 集群之间创建复制器。MSK Replicator 还支持在自我管理的 Apache Kafka 集群和带有 Express 代理的 Amazon MSK 预配置集群之间进行复制。如果您要从自行管理的 Kafka 部署迁移,请参阅从非 MSK Apache Kafka 集群迁移到亚马逊 MSK Express 经纪商和,了解自管理为带有自我管理的 Apache Kafka 集群的 MSK Replicator 设置先决条件集群的特定先决条件。

复制器详细信息

  1. 在您的目标 MSK 集群所在的 Amazon 区域,在家中打开 Amazon MSK 控制台?https://console.aws.amazon.com/msk/ region=us-east-1#/home/。

  2. 选择复制器以显示账户中的复制器列表。

  3. 选择创建复制器

  4. 复制器详细信息窗格中,为新的复制器指定一个唯一的名称。

选择源集群

源集群包含要复制到目标 MSK 集群的数据。

  1. 源集群窗格中,选择源集群所在的 Amazon 区域。

    您可以通过前往 MSK 集群并查看集群详情 ARN 来查找集群的区域。区域名称嵌入在 ARN 字符串中。在以下示例中,ARN ap-southeast-2 是集群区域。

    arn:aws:kafka:ap-southeast-2:123456789012:cluster/cluster-11/eec93c7f-4e8b-4baf-89fb-95de01ee639c-s1
  2. 选择 MSK 集群作为集群类型,然后输入源集群的 ARN 或选择 Browse 将其选中。

  3. 为您的源集群选择子网。子网将根据您的集群选择自动填充。如果它们未填充,或者您想使用其他选项,则可以手动选择它们。必须至少选择两个子网。对于同区域的 MSK Replicator,您选择访问源集群的子网和访问目标集群的子网必须位于同一个可用区中。

  4. 为 MSK 复制器选择安全组以访问您的源集群。安全组将根据您的集群选择自动填充。如果它们未填充,或者您想使用其他选项,则可以手动选择它们。

    • 对于跨区域复制(CRR),您不需要为源集群提供安全组。

    • 对于同区域复制 (SRR),请转到位于的 Amazon EC2 控制台,https://console.aws.amazon.com/ec2/并确保您将为 Replicator 提供的安全组具有出站规则,允许流量流向源集群的安全组。此外,确保源集群的安全组具有入站规则允许来自为源提供的复制器安全组的流量。

      要向源集群的安全组添加入站规则,请执行以下操作:
      1. 在 Amazon 控制台中,选择集群名称,进入源集群的详细信息。

      2. 选择属性选项卡,然后向下滚动到网络设置窗格,以选择所应用的安全组名称。

      3. 转到入站规则,然后选择编辑入站规则

      4. 选择添加规则

      5. 在新规则的类型列中,选择自定义 TCP

      6. 端口范围列中,键入 9098。MSK 复制器使用 IAM 访问控制连接到使用端口 9098 的集群。

      7. 列中,键入您将在为源集群创建 复制器期间提供的安全组的名称(这可能与 MSK 源集群的安全组相同),然后选择保存规则

      要向 Replicator 为源提供的安全组中添加出站规则,请执行以下操作:
      1. 在 Amazon EC2 的 Amazon 控制台中,转到您在为源创建复制器时将提供的安全组。

      2. 转到出站规则,然后选择编辑出站规则

      3. 选择添加规则

      4. 在新规则的类型列中,选择自定义 TCP

      5. 端口范围列中,键入 9098。MSK 复制器使用 IAM 访问控制连接到使用端口 9098 的集群。

      6. 列中,键入 MSK 源集群的安全组的名称,然后选择保存规则

注意

或者,如果您不想使用安全组限制流量,则可以添加允许所有流量与来源0.0.0.0/0的入站和出站规则。

选择目标集群

目标集群是将源数据复制到的 MSK 预配置集群或无服务器集群。

注意

默认情况下,MSK Replicator 会在目标集群中创建新主题,并在主题名称中添加自动生成的前缀(例如)。<sourceKafkaClusterAlias>.topic这样可以将复制的主题与目标集群中的其他主题区分开来,并避免循环复制。您可以使用 DescribeReplicator API 或 MSK 控制台上的 Replicator 详细信息页面在 “sourceKafkaCluster别名” 字段下找到前缀。或者,您可以使用相同的主题名称复制。请参阅主题命名(前缀与相同)

  1. 目标集群窗格中,选择目标集群所在的 Amazon 区域。

  2. 选择 MSK 集群作为集群类型,然后输入目标集群的 ARN 或选择浏览将其选中。

  3. 为目标集群选择子网。子网将根据您的集群选择自动填充。如果它们未填充,或者您想使用其他选项,则可以手动选择它们。至少选择两个子网。

  4. 为 MSK 复制器选择安全组以访问您的目标集群。安全组将根据您的集群选择自动填充。如果它们未填充,或者您想使用其他选项,则可以手动选择它们。有关使用安全组的更多信息,请参阅 Amazon VPC 用户指南中的使用安全组控制 Amazon 资源流量

    对于 CRR 和 SRR,请前往 Amazon EC2 控制台,确保您将提供给 Replicator 的安全组具有出站规则,允许流量进入目标集群的安全组。此外,请确保目标集群的安全组具有入站规则,以接受来自为目标提供的复制器安全组的流量。

    要向目标集群的安全组添加入站规则,请执行以下操作:
    1. 在 Amazon 控制台中,选择集群名称,进入目标集群的详细信息。

    2. 选择属性选项卡,然后向下滚动到“网络设置”窗格,以选择所应用的安全组名称。

    3. 转到入站规则,然后选择编辑入站规则

    4. 选择添加规则

    5. 在新规则的类型列中,选择自定义 TCP

    6. 端口范围列中,键入 9098。MSK 复制器使用 IAM 访问控制连接到使用端口 9098 的集群。

    7. 列中,键入您将在为目标集群创建 Replicator 期间提供的安全组的名称,然后选择保存规则

    要向 Replicator 为目标提供的安全组中添加出站规则,请执行以下操作:
    1. 在 Amazon 控制台中,转到您将在为目标创建 Replicator 期间提供的安全组。

    2. 选择属性选项卡,然后向下滚动到“网络设置”窗格,以选择所应用的安全组名称。

    3. 转到出站规则,然后选择编辑出站规则

    4. 选择添加规则

    5. 在新规则的类型列中,选择自定义 TCP

    6. 端口范围列中,键入 9098

    7. 列中,键入 MSK 目标集群的安全组的名称,然后选择保存规则

注意

或者,如果您不想使用安全组限制流量,则可以添加允许所有流量与来源0.0.0.0/0的入站和出站规则。

配置复制器设置和权限

  1. 复制器设置窗格中,使用允许和拒绝列表中的正则表达式指定要复制的主题。默认情况下会复制所有主题。

    注意

    MSK 复制器仅按排序顺序复制最多 750 个主题。如果您需要复制更多主题,请创建单独的 Replicator。如果您需要为每个 Replicator 提供超过 750 个主题的支持,请前往 Amazon 控制台 Support Center 并创建支持案例

  2. 默认情况下,MSK Replicator 从最新(最新)的偏移量开始复制。或者,如果要复制现有数据,可以从最早(最旧)的偏移量开始复制。复制器创建后,您就无法更改此设置。此设置对应于CreateReplicator请求和DescribeReplicator响应中的startingPosition字段 APIs。

  3. 选择主题名称配置:

    • PREFIXED 主题名称复制(在控制台中为主题名称添加前缀):默认设置。

    • 相同的主题名称复制(在控制台中保留相同的主题名称):在目标集群中使用相同的名称复制主题。

    有关更多信息,请参阅 主题命名(前缀与相同)

  4. 默认情况下,MSK Replicator 会复制所有元数据,包括主题配置和使用者组偏移量 ACLs,以实现无缝故障转移。如果您不创建用于故障转移的 Replicator,则可以选择在 “其他设置” 部分关闭其中一个或多个设置

  5. 使用器组复制窗格中,使用允许和拒绝列表中的正则表达式指定要复制的主题。默认情况下,所有使用器组都会被复制。

    你也可以配置消费组偏移同步模式

    • Legacy(默认)— 当生产者写入源集群时,偏移量会同步(单向)。

    • 增强-无论生产者位于何处,消费者偏移量都会同步(双向)。需要相应的 Replicator 来将数据从目标集群复制回源集群。在为迁移或主动-主动架构设置双向复制时,请使用此模式。有关更多信息,请参阅 消费组偏移量同步

  6. 压缩窗格中,您可以选择压缩写入目标集群的数据。如果您使用压缩,我们建议使用与源集群中的数据相同的压缩方法。

  7. 在 “访问权限” 窗格中,执行以下任一操作:

    1. 选择创建或更新具有所需策略的 IAM 角色。MSK 控制台将自动为服务执行角色附加必要的权限和信任策略。

      用于创建或更新复制器 IAM 角色的 MSK 控制台
    2. 通过选择从 Amazon MSK 可以代入的 IAM 角色中选择提供您自己的 IAM 角色。我们建议将AWSMSKReplicatorExecutionRole托管 IAM 策略附加到您的服务执行角色。请参阅服务执行角色 (SER)

  8. 日志传送窗格中,您可以选择配置日志传输,以捕获复制日志并将其路由到所选目的地。默认情况下,不启用日志传输。您可以启用以下一个或多个目的地:

    • 传送到 Amazon CloudWatch 日志 — 分析、查询日志并设置警报。

    • 传输到 Amazon S3 — 在对象存储中存储和检索原始日志。

    • 传输到亚马逊 Data Firehose — 捕获、转换日志并将其传送到亚马逊 OpenSearch 服务或其他亚马逊数据 Firehose 目的地。

    有关更多信息,请参阅 MSK 复制器日志

  9. 复制器标签窗格中,您可以选择为 MSK 复制器资源分配标签。对于跨区域 MSK 复制器,在创建复制器时,标签会自动同步到远程区域。

  10. 选择创建

成功创建 MSK Replicator 并转换到 “运行” 状态大约需要 30 分钟。如果您的 MSK 复制器转换为 “失败” 状态,请参阅。对 Amazon MSK 复制器进行故障排除