Skip to main content

前置条件梳理

在迁移至 AutoMQ 之前,务必验证以下条件和约束,以确保不影响生产环境的业务运行。

功能兼容性梳理

受限于版本支持情况的差异,目前 AutoMQ Cloud 仅提供 Kafka Server 服务,暂未提供其他生态组件的托管服务。因此,迁移到 AutoMQ 之前需要确认如下功能是否使用,并参考如下指引进行处理:

  • Kafka Server: AutoMQ 提供成本更优、弹性更强的 Kafka Server,兼容 Apache Kafka 0.9.x ~ 3.4.x 版本 ,如果当前使用的 Apache Kafka Server 版本不在支持范围中,请联系我们获取支持和更新。

  • Kafka Client: AutoMQ 兼容 Apache Kafka 原有 Client SDK,只需确认原有 SDK 版本在0.9.x ~ 3.4.x 之间 ,即可兼容。

  • Kafka Connector: AutoMQ 暂未提供 Kafka Connector 托管服务,如果当前使用了 Kafka Connector,建议继续维持原有服务,只需将 Connector 配置的 Kafka Server 接入点替换为 AutoMQ 实例接入点即可。

  • Kafka Schema Registry: AutoMQ 暂未提供 Schema Registry 托管服务,如果当前使用了 Kafka Registry,建议继续维持原有服务,只需将 Registry 配置的 Kafka Server 接入点替换为 AutoMQ 实例接入点即可。

除服务组件的差异外,迁移到 AutoMQ 之前需要确认如下功能是否使用,并参考如下指引进行处理。

  • ACL 功能: AutoMQ 当前版本暂无支持 ACL 功能,如果当前应用强依赖 ACL 功能进行权限控制,需要评估修改后的风险。

  • 接入点协议: AutoMQ 当前版本支持 PLAINTEXT 协议内网访问,如果当前应用使用了其他协议访问 Kafka,建议联系 AutoMQ 技术人员协助评估修改的风险。

业务范围梳理

生产环境中从 Apache Kafka 迁移到 AutoMQ,一般建议分批次逐步迁移,即逐步筛选源集群中的 Topic、ConsumerGroup,按照业务链路和业务范围分批次迁移。

因此建议按照如下流程进行业务范围梳理:

  1. 盘点源集群资源列表: 建议使用 Kafka Admin CLI 或其他工具导出源集群所有的 Topic 和 ConsumerGroup,按业务系统进行分类整理。提前清理无效、无人认领的 Topic、ConsumerGroup 资源。

建议检查源集群中的 Topic,提前清理长时间无写入和订阅的 Topic、ConsumerGroup,缩小待迁移范围。

  1. 按业务系统划分批次: 生产环境中建议按业务系统规划迁移批次,首先迁移离线类、非核心系统业务,逐步扩大迁移范围,避免非预期风险。

  2. 协调业务方人员配合迁移: Apache Kafka 迁移到 AutoMQ的过程中需要业务方配合更换接入点重启应用。因此执行迁移计划前需要协调业务方人员进行配合。

Apache Kafka Client 在建立服务端连接后即不会断开源集群的连接。因此,即使使用域名访问服务端,也仍然需要重启客户端应用才能连接到 AutoMQ 新集群。

集群环境准备

创建 AutoMQ 实例

执行迁移任务之前,需要提前创建 AutoMQ 实例,并确保 AutoMQ 实例处于运行中状态。创建 AutoMQ 实例需要关注如下注意事项:

  • 网络连通检查: 创建 AutoMQ 实例需要选择 VPC 和子网,请务必确认 AutoMQ 实例所在的 VPC 子网和当前 Apache Kafka 能够相互连通。否则后续将无法执行数据迁移和同步。

  • 实例规格检查: 创建 AutoMQ 实例时务必需要确认源集群的规模,根据源集群的峰值读写吞吐 选择合适的 AutoMQ 实例规格。避免迁移后期出现容量不足系统故障的风险。关于 AutoMQ 实例规格的定义请参考BYOC 计费说明▸

详细的实例创建说明,请参考体验 AutoMQ for Kafka▸

获取源集群配置

从 Apache Kafka 迁移到 AutoMQ 的原理是使用迁移工具从源集群同步存量数据和配置到新集群,并在合适的时机下切换客户端配置,从而实现访问新集群。

上述过程中从源集群同步数据和配置的过程需要获取源集群的配置。因此需要提前确认是否准备如下配置信息:

  • 源集群接入点: 迁移工具需要访问源集群,需要配置源集群的 Bootstrap 接入点列表。

  • 源集群接入协议: 迁移工具需要访问源集群,需要确认访问源集群的接入协议,目前支持 PLAINTEXT、SASL_PLAINTEXT 两种协议。

  • 源集群用户名密码(可选): 如果源集群需要使用 SASL_PLAINTEXT 协议访问,则需要配置用户名密码,并确保该用户名具备订阅所有 topic 的权限

  • 源集群网络防火墙策略(可选): 如果源集群配置了网络防火墙、安全组策略,则需要对 AutoMQ 所在的子网网段放行。

后续步骤

完成前置条件梳理且已经满足的情况下,可以进行后续的迁移流程,建议按如下顺序处理:

  • 实施迁移方案: 在完成前置条件梳理后,按照迁移方案方案分步骤实施。实施迁移方案▸