本文介绍阿里云ECS实例间的迁移场景和操作步骤。

背景信息

阿里云ECS实例间迁移,建议您首先考虑使用阿里云的镜像复制和镜像共享功能。具体操作步骤,请参见 复制镜像共享或取消共享镜像 。这两个功能不适用时,您可以参见下列场景完成准备工作并进行服务器迁移。 不同场景的准备工作完成后,即可开始正式的迁移操作。详情请参见 迁移服务器。如果您是第一次进行服务器迁移,建议先使用测试机演练。

相同VPC下的ECS实例迁移

此场景适用于ECS磁盘缩容。更多详情,请参见云盘缩容

在此场景中,建议在创建迁移任务时网络模式选择内网传输。使用内网传输能获得比通过公网更快速更稳定的数据传输效果,提高迁移工作效率。

不同VPC下的ECS Windows实例迁移

此场景适用于不同账号、不同地域或不同VPC下的ECS Windows实例迁移。

在迁移之前,请先完成以下准备工作:
  • 创建快照以备份数据。
  • 检查授权应用。

    不同VPC下ECS实例迁移到阿里云后,系统底层硬件设备会发生变化,可能会导致某些与硬件绑定的应用许可证(License)失效,您需要做好检查。

  • 检查网络环境。
    • 如果您的网络是跨国际地域,由于网络环境不稳定,迁云速度可能较慢。
    • 如果您的网络可以打通VPC内网,建议在创建迁移任务时网络模式选择内网传输。使用内网传输能获得比通过公网更快速更稳定的数据传输效果,提高迁移工作效率。
  • 检查并确保Windows系统VSS服务为启动状态。
  • 检查是否安装了QEMU Guest Agent软件。如果安装了此软件,您需要先卸载。具体操作,请参见Windows服务器卡在Prepare For Rsync Disk 0阶段,怎么办?

不同VPC下的ECS Linux实例迁移

此场景适用于不同账号、不同地域或不同VPC下的ECS Linux实例迁移。

在迁移之前,请先完成以下准备工作:
  • 创建快照以备份数据。
  • 检查授权应用。

    不同VPC下ECS实例迁移到阿里云后,系统底层硬件设备会发生变化,可能会导致某些与硬件绑定的应用许可证(License)失效,您需要做好检查。

  • 检查网络环境。
    • 如果您的网络是跨国际地域,由于网络环境不稳定,迁云速度可能较慢。
    • 如果您的网络可以打通VPC内网,建议在创建迁移任务时网络模式选择内网传输。使用内网传输能获得比通过公网更快速更稳定的数据传输效果,提高迁移工作效率。

迁移服务器

请先了解注意事项,详情信息,请参见准备工作(迁移前必读)

  1. 下载并解压SMC客户端。
    1. 下载SMC客户端
      如果您的迁移源可以访问公网,也可以直接在迁移源上下载SMC客户端。
      说明 客户端会不定期更新,建议您登录 SMC控制台,在页面右上角单击 最新版本迁移客户端下载,获取并使用最新版本的SMC客户端。
    2. 将SMC客户端上传至迁移源。
    3. 解压SMC客户端。
      SMC客户端为Windows和Linux系统均提供32位和64位版本(i386表示32位,x86_64表示64位)。请根据迁移源的平台类型,选择相应的客户端版本。以Windows系统为例,解压后的客户端文件夹,如下图所示。
      说明 Linux系统中使用 unzip <SMC客户端压缩包名称>命令解压SMC客户端,如果您的源服务器未安装 unzip插件,请先安装。例如,CentOS 7的安装命令为 yum -y install unzip
      客户端版本
    4. 解压适配您迁移源系统版本的客户端压缩包。
      解压后文件夹中包含的目录和文件,如下图所示。 客户端主目录
      表 1. SMC客户端主要文件说明
      文件(夹)名 描述
      go2aliyun_client.exe (Windows版本)命令行主程序。
      go2aliyun_gui.exe (Windows版本) GUI主程序。GUI版本详情,请参见使用SMC客户端Windows GUI版本
      go2aliyun_client (Linux版本)命令行主程序。
      user_config.json 迁移源和迁移目标的配置文件。
      Excludes 排除不迁移文件目录的配置文件夹。
      client_data 迁移数据文件,包含ECS中转实例信息和迁移进度等。
  2. 可选:排除不迁移的文件或目录。
    说明 如果开启块复制功能迁移,则不支持排除不迁移的文件或目录。
    配置文件在SMC客户端的 Excludes目录下,包括以下文件。如果配置文件缺失或被误删,您可自行创建相应文件。
    • 系统盘配置文件:rsync_excludes_win.txt(Windows系统)或rsync_excludes_linux.txt(Linux系统)

    • 数据盘配置文件:在系统盘的基础上以disk[磁盘索引编号]后缀命名,如rsync_excludes_win_disk1.txt(Windows系统)或rsync_excludes_linux_disk1.txt(Linux系统)

    不同操作系统的服务器排除不迁移的文件或目录的配置示例,具体如下表所示:
    操作系统 系统盘 数据盘
    Windows
    • 待排除的文件和目录:
      C:\MyDirs\Docs\Words
      C:\MyDirs\Docs\Excels\Report1.txt
    • rsync_excludes_win.txt中添加内容:
      /MyDirs/Docs/Words/
      /MyDirs/Docs/Excels/Report1.txt
      说明
      排除Windows路径时,您需要:
      • 去掉路径前缀,例如:去掉上述示例中的C:
      • 将原路径中的\替换为/
    • 待排除的文件和目录:
      D:\MyDirs2\Docs2\Words2
      D:\MyDirs2\Docs2\Excels\Report2.txt
    • rsync_excludes_win_disk1.txt中添加内容:
      /MyDirs2/Docs2/Words2/
      /MyDirs2/Docs2/Excels2/Report2.txt
      说明
      排除Windows路径时,您需要:
      • 去掉路径前缀,例如:去掉上述示例中的D:
      • 将原路径中的\替换为/
    Linux
    • 待排除的文件和目录为:
      /var/mydirs/docs/words
      /var/mydirs/docs/excels/report1.txt
    • rsync_excludes_linux.txt中添加内容:
      /var/mydirs/docs/words/
      /var/mydirs/docs/excels/report1.txt
    • 待排除的文件和目录为:
      /mnt/disk1/mydirs2/docs2/words2
      /mnt/disk1/mydirs2/docs2/excels2/report2.txt
    • rsync_excludes_linux_disk1.txt中添加内容:
      /mydirs2/docs2/words2/
      /mydirs2/docs2/excels2/report2.txt
      说明 排除Linux路径时,需要去掉路径前缀。例如:去掉上述示例中的 /mnt/disk1
  3. 运行SMC客户端以导入迁移源信息。
    1. 进入适配您迁移源系统版本的客户端文件夹,运行SMC客户端。
      • Windows系统:选择以下任一方式运行。
        • GUI版本:双击运行go2aliyun_gui.exe应用程序。
        • 命令行版本:双击运行go2aliyun_client.exe应用程序。
        说明 程序运行时会提示需要管理员权限,单击 确定
      • Linux系统:根据迁移源操作系统对root权限和sudo权限的支持情况,选择运行方式。
        • go2aliyun_client所在目录下,使用root权限依次运行以下命令。
          chmod +x go2aliyun_client
          ./go2aliyun_client
        • go2aliyun_client所在目录下,使用sudo权限依次运行以下命令。
          sudo chmod +x ./go2aliyun_client
          sudo ./go2aliyun_client
        您也可以根据迁移源系统对权限的支持情况,不运行上述命令,而选择运行以下命令快速导入迁移源,可跳过下一步(即输入阿里云账号的访问密钥)。
        说明 阿里云账号的访问密钥AccessKey包括AccessKey ID和AccessKey Secret,如果您未创建AccessKey,请先创建。具体操作,请参见 创建AccessKey
        • 使用root权限
          ./go2aliyun_client --accessid=<AccessKey ID> --secretkey=<AccessKey Secret>
        • 使用sudo权限
          sudo ./go2aliyun_client --accessid=<AccessKey ID> --secretkey=<AccessKey Secret>
    2. 输入阿里云账号的访问密钥(AccessKey)。
      说明 如果您输入的AccessKey不正确,请在 user_config.json文件中删除 access_idsecret_key的值,并重新运行客户端。
      • Windows系统
        • GUI版本:在账号AK账号SK文本框中,分别输入AccessKey ID和AccessKey Secret后,单击运行。更多信息,请参见使用SMC客户端Windows GUI版本
        • 命令行版本: 输入访问密钥的AccessKey ID和AccessKey Secret,并按Enter键。
      • Linux系统
        输入访问密钥的AccessKey ID和AccessKey Secret,并按 Enter键。 输入AK
        可能会出现以下提示信息:
        • 若迁移源系统没有安装快照驱动,则SMC客户端会提示,具体如下图所示,您可根据需求选择是否安装快照驱动。
          • 如果在创建迁移任务中启用块复制,输入yes,自动安装快照驱动。
          • 如果在创建迁移任务中不启用块复制,输入no即可。
          说明 如果安装快照驱动失败,请勿在创建迁移任务时启用块复制,会导致迁移失败。
          123
        • 多数主流迁移源系统已默认安装rsync。若没有安装,则SMC客户端会提示,请输入yes自动安装rsync,如下图所示。安装rsync
        • 若迁移源系统的SELinux处于开启状态,则SMC客户端会提示您关闭。请输入yes自动关闭SELinux,如下图所示。关闭SELinux
    注意 请勿关闭客户端直至迁移完成。否则,迁移源将与SMC控制台失去联系,无法完成迁移。
  4. 登录SMC控制台
  5. 创建迁移任务。
    1. 在左侧导航栏,单击迁移源
    2. 找到目标迁移源,单击对应操作列下的创建迁移任务
      您可以从客户端界面获取迁移源ID,如下图所示,并根据迁移源ID找到目标迁移源。具体操作,请参见 如何查找迁移源获取迁移源ID
    3. 创建迁移任务页面,阅读迁移提示并配置迁移任务。

      迁移任务基本配置说明:

      • 目标地域(必填):您的源服务器要迁入的阿里云地域ID。地域详情,请参见地域和可用区
      • 任务名称:迁移任务的名称。
        说明 同一阿里云地域下,任务名称必须唯一。
      • 任务描述:迁移任务的描述。
      • 目标磁盘(GiB):设置目标服务器的磁盘结构。adad

        配置项说明表如下:

        配置项 是否必选 说明
        启用块复制
        • 选中启用块复制复选框:使用块复制能有效提升迁移传输速度的稳定性,同时能够保证跟源分区结构一致,但分区大小无法修改。此外分区<N>配置项后会生成开启块复制开关。
        • 不选中启用块复制复选框:使用默认的文件级别迁移,分区大小可修改。
        说明 迁移源为Windows操作系统时,块复制功能默认为开启状态,请勿关闭该功能。
        系统盘
        • 系统盘:目标阿里云服务器ECS系统盘的大小,单位为GiB。 取值范围:20~500。目标系统盘取值需要大于迁移源系统盘实际占用大小。例如,源系统盘大小为400 GiB,实际占用100 GiB,则目标系统盘取值需大于100 GiB。
          说明 默认值为迁移源系统盘大小,如无缩小系统盘容量需要,建议不要小于默认值。
        • 分区<N>:SMC能够根据迁移源的磁盘分区结果自动生成目标磁盘分区,单位为GiB。 取值范围:0~98。变量<N>表示第几个分区。如果迁移源的系统盘是单分区结构,则只会生成分区0
        • 启用块复制:仅当打开上述的启用块复制开关后,才会出现该开关。SMC会根据迁移源磁盘分区状态进行判断是否支持开启块复制。
          • 如果迁移源不支持分区开启块复制,则该开关无法打开。
          • 如果迁移源支持分区开启块复制,您可以打开开关,实现分区级别的磁盘迁移。
        数据盘<N>
        • 数据盘<N>:目标阿里云服务器ECS数据盘的大小,单位为GiB。 取值范围:20~32768。
          • 您可以设置数据盘前复选框的选中情况,自行选择是否生成目标数据盘。
          • 变量<N>表示第几个数据盘。
          • 目标数据盘取值需要大于迁移源数据盘的实际占用大小。例如,源数据盘大小为500 GiB,实际占用100 GiB,则目标数据盘取值需大于100 GiB。
        • 分区<N>:SMC能够根据迁移源的磁盘分区结果自动生成目标磁盘分区,单位为GiB。 取值范围:0~141。变量<N>表示第几个分区。如果迁移源的数据盘是单分区结构,则只会生成分区0
        • 启用块复制:仅当打开上述的启用块复制开关后,才会出现该开关。SMC会根据迁移源磁盘分区状态进行判断是否支持开启块复制。
          • 如果迁移源不支持分区开启块复制,则该开关无法打开。
          • 如果迁移源支持分区开启块复制,您可以打开开关,实现分区级别的磁盘迁移。
        说明 若您的迁移源没有数据盘,或数据盘未挂载,不会出现 数据盘配置项。更多信息,请参见 为什么新建迁移任务页面没有出现数据盘配置项?
      • 目标类型:设置迁移源迁移至阿里云的目标类型。
        • 选择云服务器镜像。配置项说明如下:
          配置项 是否必选 说明
          镜像名称 SMC为迁移源生成的目标阿里云镜像名称。
          说明 同一阿里云地域下,镜像名称必须唯一。
          许可证类型 选择许可证类型。
          自动增量同步 迁移任务是否自动同步源服务器增量数据至阿里云。
          • 开启该开关后,需设置以下配置项:
            • 同步重复频率:增量迁移任务周期性自动执行的时间间隔。
            • 最大镜像保留数:增量迁移任务默认保留的最大镜像数。
            迁移任务将自动周期性执行,并同步增量数据至阿里云。增量迁移的最佳实践,请参见增量迁移源服务器
          • 关闭该开关后,迁移任务仅执行一次。
        • 选择云服务器实例。配置项说明如下:
          说明 迁移源和目标实例的存储、操作系统等需要适配。迁移至目标实例最佳实践,请参见 源服务器迁移至目标实例
          smc-instance
          配置项 是否必选 说明
          目标实例 选择一个ECS实例作为目标实例。
          许可证类型 选择许可证类型。
          自动增量同步 迁移任务是否自动同步源服务器增量数据至阿里云。
          • 开启该开关后,需设置以下配置项:
            • 同步重复频率:增量迁移任务周期性自动执行的时间间隔。
            • 最大镜像保留数:增量迁移任务默认保留的最大镜像数。
            迁移任务将自动周期性执行,并同步增量数据至阿里云。增量迁移的最佳实践,请参见增量迁移源服务器
          • 关闭该开关后,迁移任务仅执行一次。
        • 选择容器镜像。配置项说明如下:
          说明 Windows操作系统的迁移源不支持迁移至容器镜像。迁移至容器镜像最佳实践,请参见 源服务器迁移至容器镜像
          配置项 是否必选 说明
          容器镜像命名空间 存放迁移生成的容器镜像仓库的命名空间。
          容器镜像仓库名称 存放迁移生成的容器镜像的仓库地址。
          容器镜像版本 存放迁移生成的容器镜像的版本信息。
          容器镜像RAM角色 绑定中转实例的实例角色。
      • 执行方式:迁移任务的执行方式。
        • 立即执行:创建迁移任务后立即启动。
        • 预约执行:创建迁移任务后,在设置的时间自动启动迁移任务。
          说明 预约执行时间最早可设置为当前时间后10分钟。
        • 只创建:仅创建迁移任务,需要手动启动迁移任务。

        默认值:立即执行

      标签与网络(可选)说明:

      • 迁移任务标签:为迁移任务绑定标签键值,便于查询与管理迁移任务。
        说明 同一个迁移任务最多可绑定20个标签。
      • 网络模式:传输迁移数据到中转实例使用的网络。中转实例会被创建在所选专有网络(VPC)、交换机(vSwitch)下,因此中转实例会被分配公网IP。adda

        配置项说明表如下:

        配置项 说明
        公网传输 迁移数据通过公网传输到中转实例。使用该模式,源服务器需能访问公网。根据实际需要,选择是否指定专有网络(VPC)和交换机(vSwitch)。
        • 指定VPC和vSwitch:迁移任务在您指定的VPC和vSwitch下创建中转实例。

          批量迁移时,为每个迁移任务指定相同的VPC和vSwitch,可提高VPC的复用率,每次批量迁移的最大值可达到100台迁移源。

        • 不指定VPC和vSwitch:迁移任务在系统自动新建的VPC和vSwitch下创建中转实例。

          批量迁移时,若不指定VPC和vSwitch,SMC会为每个中转实例创建一个VPC。

          说明 由于每个账号在一个地域下的VPC限额为10(包括您创建的VPC和SMC自动创建的VPC),因此每次批量迁移的最大值不超过10台迁移源。如需提高VPC限额,请 提交工单
        私网传输 迁移数据通过VPC内网传输到中转实例。使用该模式,需要将源服务器与阿里云VPC打通,并且必须指定VPC和vSwitch。
        说明 如果您能直接从自建机房(Integrated Data Center,IDC)、虚拟机环境或者云主机访问某一阿里云地域下的专有网络VPC,建议您使用该方式进行迁移。使用内网传输能获得比通过公网更快速更稳定的数据传输效果,提高迁移工作效率。您可以通过VPN网关、高速通道物理专线、智能接入网关将源服务器和云上VPC打通。更多信息,请参见 连接本地IDC
      高级配置(可选)说明:
      • Checksum验证:开启后,可增强数据一致性校验,但是可能会降低传输速度。

        默认值:关闭。

      • 传输限速:迁移过程中,数据传输的带宽上限限制,单位为Mbps。
      • 压缩率:迁移过程中,数据压缩传输的级别。 请根据您的实际需要,设置压缩率。
        • 在带宽有限的环境下,使用高压缩率,可提升数据的传输速度。
        • 在带宽很高的情况下,建议您不压缩传输数据,可减少对迁移源CPU资源的耗费。

        取值范围为0~10,默认值为7,0表示不压缩传输数据。

      • 中转实例规格:可根据实际需求选择中转实例规格。仅当目标类型选择云服务镜像容器镜像时,才出现此参数。
        • 选择中转实例规格:系统会选择该实例规格创建中转实例。若该实例规格库存不足,则迁移任务创建失败。
        • 不选择中转实例规格:系统默认会按照顺序选择实例规格来创建中转实例。
    4. 配置完成后,单击确定
  6. 启动迁移任务。
    说明立即执行的迁移任务请跳过本步骤。 只创建预约执行的迁移任务可以按照本步骤手动启动迁移任务。
    1. 在左侧导航栏,单击迁移任务
    2. 找到需要启动的迁移任务,在操作列单击开始任务
      • 如需批量启动迁移任务,勾选多个迁移任务,并单击开始/重试。每个迁移任务的状态必须为未开始已暂停出错
      • 如需暂停迁移任务,在迁移任务状态为同步中时,单击操作列中的暂停任务

后续步骤

迁移任务完成后,请根据您所选择的目标镜像类型执行以下操作:
  • 当目标镜像为云服务器镜像时,您可以通过自定义镜像创建实例。具体操作,请参见使用自定义镜像创建实例
  • 当您的目标镜像为容器镜像时,您可以通过容器镜像部署应用。具体操作,请参见验证容器镜像