> ## Documentation Index
> Fetch the complete documentation index at: https://docs.automq.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 前置条件梳理

> 确保在迁移到 AutoMQ 之前验证所有前置条件，以保证不影响生产环境业务运行，AutoMQ 提供云原生扩展性和与Kafka的 100% API 兼容性。

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

## 功能兼容性梳理

AutoMQ 仅提供 Kafka Server 服务，未提供其他生态组件的托管服务。因此，迁移到 AutoMQ 之前需要确认如下功能是否使用，并参考如下指引进行处理：

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

* **Kafka Client：** AutoMQ 兼容 Apache Kafka 原有 Client SDK，只需确认原有 SDK 版本在**0.10.x \~ 3.9.x 之间** ，即可兼容。

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

* **接入点协议：** AutoMQ 支持 PLAINTEXT、SASL\_PLAINTEXT、SASL\_SSL、mTLS 协议内网访问，如果当前应用使用了其他协议访问集群，建议联系 AutoMQ 技术人员协助评估修改的风险。

## 业务范围梳理

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

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

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

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

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

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

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

## 集群环境准备

### 创建 AutoMQ 实例，并确保实例容量符合要求

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

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

<Tip>
  使用 Kafka Linking 需确保 AutoMQ 实例版本 >= 5.0，如果不满足，请先升级实例版本。
</Tip>

* **实例容量规格检查：** 创建 AutoMQ 实例时务必需要确认源集群的吞吐规模，根据源集群的**峰值读写吞吐** 选择合适的 AutoMQ 实例规格。避免迁移后期出现容量不足系统故障的风险。

<Tip>
  使用 Kafka Linking 时，建议目标 AutoMQ 实例容量在源集群峰值吞吐规格的基础上额外**预留 50%** ，以满足 Kafka Linking 对集群容量的消耗。

  *举例：*

  *源 Kafka 集群峰值吞吐 100MBps，使用 Kafka Linking 迁移到 AutoMQ，则迁移期间建议预留 100\*150%=150MBps，迁移完成后可以缩容到和源集群同等规格。*
</Tip>

详细的实例创建说明，请参考[体验 AutoMQ▸](/zh/automq-cloud/getting-started/experience-automq)。

### 获取源集群配置

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

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

* **源集群接入点：** 迁移工具需要访问源集群，需要配置源集群的 Bootstrap 接入点列表。

* **源集群接入协议：** 迁移工具需要访问源集群，需要确认访问源集群的接入协议，Kafka Linking 支持 PLAINTEXT、SASL\_PLAINTEXT、SASL\_SSL、mTLS 协议。

* **源集群用户名密码（可选）：** 如果源集群需要使用 SASL\_PLAINTEXT 、SASL\_SSL协议访问，则需要配置用户名密码，并确保该**用户名具备订阅所有 topic 的权限** 。

* **源集群网络防火墙策略（可选）：** 如果源集群配置了网络防火墙、安全组策略，则需要对 AutoMQ 所在的子网网段放行。

## 后续步骤

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

* **实施迁移方案：** 在完成前置条件梳理后，按照迁移方案方案分步骤实施。[实施迁移方案▸](/zh/automq-cloud/migrate-to-automq/executing-migration)
