本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
从非 MSK Apache Kafka 集群迁移到已配置的 Amazon MSK
您可以使用 MSK Replicator 将 Apache Kafka 工作负载从自管理环境迁移到亚马逊 MSK 预置集群。MSK Replicator 支持从启用双向 TLS (mTLS) 或 (OAuth) 身份验证的 Kafka 部署(Kafka 版本 2.8.1 或 SASL/OAUTHBEARER 更高版本)迁移数据。 SASL/SCRAM
注意
SASL/SCRAM只有 MSK Replicator 需要 SASL/OAUTHBEARER 进行身份验证、mTLS 或身份验证才能连接到您的自我管理的 Kafka 集群。您的客户端应用程序可以继续使用其现有的身份验证机制。
先决条件
开始之前,确保您已准备好以下事项:
运行 2.8.1 或更高版本的源 Apache Kafka 集群
SASL/SCRAM、mTLS 或在源集群上启用 SASL/OAUTHBEARER 身份验证
在源集群上配置的 SSL 加密
通过 Amazon Site-to-Site VPN 或 Amazon 直接连接进行网络连接
为访问密钥管理器配置的 VPC 子网
有关详细说明,请参阅使用自管理 Apache Kafka 集群为 MSK Replicator 设置先决条件。
第 1 步:创建 Amazon MSK 预置集群
创建启用 IAM 身份验证的 MSK 预置集群。在三个可用区中至少有三个经纪人。请参阅准备目标集群。
第 2 步:创建 IAM 执行角色
附加AWSMSKReplicatorExecutionRole托管策略并配置的信任策略kafka.amazonaws.com。为 per Amazon Secrets Manager ( Amazon KMS 如果您的密钥是 CMK-encrypted)添加内联权限mTL 和客户管理密钥的其他 SER 权限 SASL/SCRAM SASL/OAUTHBEARER。请参阅使用自管理 Apache Kafka 集群为 MSK Replicator 设置先决条件。
第 3 步:在自管集群上配置 SASL/SCRAM、mTLS 或 SASL/OAUTHBEARER SSL
在自管集群上配置身份验证。对于 SASL/SCRAM,创建具有所需 ACL 权限的专用 SCRAM 用户。对于 mTLS,使用客户端证书身份验证配置 SSL 侦听器。对于 SASL/OAUTHBEARER,为 OAUTHBEARER 配置您的代理并注册提供访问令牌的身份提供商 (IDP)。配置 SSL 证书。请参阅使用自管理 Apache Kafka 集群为 MSK Replicator 设置先决条件。
步骤 4:将凭据存储在 Amazon Secrets Manager
使用适合您的身份验证类型的键值对创建密钥。对于 SASL/SCRAM、包含usernamepassword、和certificate字段。对于 mTL,包括certificate和privateKey字段(加密私钥privateKeyPassword也是可选的)。要 SASL/OAUTHBEARER 使用客户端凭证机制,请包含client_id和client_secret字段。请参阅使用自管理 Apache Kafka 集群为 MSK Replicator 设置先决条件。
步骤 5:创建复制器
使用EARLIEST起始位置、相同主题名称复制并synchroniseConsumerGroupOffsets设置为的 CreateReplicator API true。调用的 IAM 委托人CreateReplicator必须具有中所述的 API 调用者权限创建 MSK 复制器所需的 IAM 权限。如果您计划为回滚功能设置双向复制(步骤 6),还consumerGroupOffsetSyncMode要在正向和反向复制器ENHANCED上都设置为。等待大约 30 分钟,让复制器进入运行状态。请参阅CreateReplicator 自建的 Kafka 集群的 API 示例。
步骤 6:(可选)设置双向复制
从 MSK 配置的集群创建反向复制器返回自管理集群,以实现回滚功能。在反向复制器中识别两个集群,完全按照您在正向复制器中识别它们的方式识别它们。请参阅双向复制示例。
第 7 步:监控复制进度
监控以下指标:
MessageLag(应达到 0)ReplicationLatencyConsumerGroupOffsetSyncFailure(应为 0)ConsumerGroupCountOffsetLag (MSK Cluster)和OffsetLag (Non-MSK Cluster)
有关更多信息,请参阅 监控复制。
第 8 步:迁移应用程序
请按照以下步骤迁移您的应用程序:
阻止生产者写入自管集群
使用 IAM 身份验证将生产者重新配置为 MSK 预置集群
监视
MessageLag直到达到 0在自建集群上阻止消费者
将消费者重新配置为 MSK 配置的集群
第 9 步:(可选)回滚到自建集群
如果配置了双向复制,则可以反向迁移步骤以回滚到自建集群。反向复制器(已配置 MSK → 外部)将使自管理集群保持同步,因此可以将消费者重定向回而不会丢失数据。