文档

各源环境迁移至阿里云

更新时间:

SMC支持多种Windows以及Linux操作系统版本,您可以将自建IDC机房、本地虚拟机或者其他云厂商等环境中的源服务器迁移至阿里云。本文介绍迁移源服务器前的准备工作,以及如何使用SMC迁移源服务器至阿里云。

背景信息

SMC支持多种迁移源环境,支持不停机将源服务器(包括系统盘和数据盘)从物理机、本地虚拟机(VMware、Xen、KVM、Hyper-V等)、其他云厂商(AWS、Azure、Google Cloud、腾讯云等)迁移至阿里云。如果需要保证源服务器和数据完全同步,可以先将源服务器中的数据迁移至阿里云,然后使用增量迁移,在自定义的时间段内将源服务器系统产生的增量数据同步至阿里云。具体操作,请参见增量迁移源服务器

在迁移前,您需要在源服务器中完成准备工作。不同操作系统对应的准备工作,请参见:当您在源服务器中完成迁移前的准备工作后,即可开始迁移源服务器。具体操作,请参见迁移源服务器至阿里云

此外,阿里云ECS实例之间也支持使用SMC进行服务器迁移。具体操作,请参见跨账号和同账号ECS实例间迁移

评估迁移时间与测试传输速度

迁移周期主要分为迁移前、迁移过程中、迁移后三部分。迁移周期时长与待迁移服务器的数量和实际数据量成正比,建议您根据实际迁移测试演练进行评估。更多信息,请参见评估迁移时间与测试传输速度

Windows系统迁移前准备工作

您需要在源服务器中,完成以下准备工作:
  • 创建快照以备份数据。
  • 确保系统时间与所在地域的标准时间一致。
  • 确保源服务器可以访问以下网址或服务器端口:
    • 服务器迁移中心SMC的接入地址以及端口号:https://smc.aliyuncs.com:443
    • 迁移过程中,数据传输需要访问中转实例的8080端口以及8703端口。
      说明 迁移过程中,SMC自动创建、启动、停止和释放中转实例(实例名称默认为No_Delete_SMC_Transition_Instance)。中转实例的默认安全组在入方向开放了8080和8703端口,这是中转实例的迁移服务端口。
  • 检查并确保Windows系统VSS服务为启动状态。
  • 检查是否安装了QEMU Guest Agent软件。如果安装了此软件,您需要先卸载。具体操作,请参见常见问题
  • 检查授权应用。源服务器迁移到阿里云后,系统底层硬件设备会发生变化,可能会导致一些跟硬件绑定的应用许可证(License)失效,您需要做好检查。
  • 您还需要根据源服务器所处的环境不同,进行针对性检查。具体说明如下:
    • 如果您待迁移的源服务器为物理机,则需要检查虚拟化应用。阿里云的普通ECS实例不支持嵌套虚拟化软件,因此不再支持VMware Workstation、Virtual Box或者Hyper-V等只能在物理机环境使用的虚拟机软件。
    • 如果您待迁移的源服务器为AWS、Azure或者Google Cloud等云服务器,则需要检查网络环境。
      • 如果是跨国际地域,由于网络环境较不稳定,具体操作,请参见跨国际地域迁移的操作步骤
      • 如果您的网络可以打通VPC内网,建议在创建迁移任务时网络模式选择内网传输。使用内网传输能获得比通过公网更快速更稳定的数据传输效果,提高迁移工作效率。
    • 如果您待迁移的源服务器为其他QEMU KVM虚拟化云平台ECS Windows系统,则需要检查系统中是否安装了QEMU Guest Agent VSS Provider服务。

      如果已安装该服务,您可以尝试在类似于C:\Program Files (x86)\virtio\monitor的目录下找到并执行uninstall.bat脚本,卸载QEMU Guest Agent软件。

Linux系统迁移前准备工作

您需要在源服务器中,完成以下准备工作:
  • 创建快照以备份数据。
  • 确保系统时间与所在地域的标准时间一致。
  • 确保源服务器可以访问以下网址或服务器端口:
    • 服务器迁移中心SMC的接入地址以及端口号:https://smc.aliyuncs.com:443
    • 迁移过程中,数据传输需要访问中转实例的8080端口以及8703端口。
      说明 迁移过程中,SMC自动创建、启动、停止和释放中转实例(实例名称默认为No_Delete_SMC_Transition_Instance)。中转实例的默认安全组在入方向开放了8080和8703端口,这是中转实例的迁移服务端口。
  • 检查SELinux。对于CentOS/Red Hat系列内核系统,一般需要检查SELinux服务是否禁用或关闭。如果没有关闭,您可以采用下列方法之一将其关闭。
    • 运行setenforce 0命令临时将其关闭。
    • 修改/etc/selinux/config文件,配置SELINUX=disabled永久禁用SELinux。具体操作,请参见开启或关闭SELinux
  • 检查GRUB引导程序。部分低内核系统(如CentOS、Red Hat 5和Debian 7)以及Amazon Linux系列系统需要升级GRUB至2.02及以上版本。具体操作,请参见如何为Linux服务器安装GRUB?
  • 检查授权应用。源服务器迁移到阿里云后,系统底层硬件设备会发生变化,可能会导致一些跟硬件绑定的应用许可证(License)失效,您需要做好检查。
  • 您还需要根据源服务器所处的环境不同,进行针对性检查。具体说明如下:
    • 如果您待迁移的源服务器为物理机,则需要检查虚拟化应用。阿里云的普通ECS实例不支持嵌套虚拟化软件,因此不再支持VMware Workstation、Virtual Box或者Hyper-V等只能在物理机环境使用的虚拟机软件。
    • 如果您待迁移的源服务器为AWS、Azure或者Google Cloud等云服务器,则需要检查网络环境。
      • 如果是跨国际地域,由于网络环境较不稳定,具体操作,请参见跨国际地域迁移的操作步骤
      • 如果您的网络可以打通VPC内网,建议在创建迁移任务时网络模式选择内网传输。使用内网传输能获得比通过公网更快速更稳定的数据传输效果,提高迁移工作效率。
    • 如果您待迁移的源服务器为AWS EC2 Linux系统,则需要检查cloud-init。

      cloud-init服务是众多云平台用于自动初始化配置系统的服务软件,但AWS和阿里云的cloud-int服务配置无法完全兼容。从AWS迁移过来的系统可能会因为cloud-init启动失败导致无法正常启动,网络无法正常连通。建议您在迁移前使用阿里云的cloud-init配置,具体操作,请参见安装cloud-init,或者卸载原cloud-init服务。

    • 如果待迁移的源服务器为Google Cloud Linux系统,请确保已安装cloud-init。具体操作,请参见安装cloud-init
    • 如果待迁移的源服务器为UCloud Linux系统,则需要检查Linux系统内核是否为UCloud云平台定制。

      如果源服务器的内核是UCloud云平台定制,您需要注意,迁移后的Linux实例可能无法在ECS控制台正常启动或停止。原因是该UCloud Linux系统的内核可能与阿里云平台不兼容。您可以更换Linux系统内核,例如,对于CentOS操作系统,您可以更换为CentOS官方内核。您也可以寻求技术支持,详细信息,请参见联系我们

跨国际地域迁移的操作步骤

本操作适用于将AWS、Azure或者Google Cloud等云服务器迁移至阿里云,并创建对应的ECS实例。

  1. 将源服务器迁移到阿里云对应的国际地域。具体操作,请参见迁移源服务器至阿里云,并选择迁移至云服务器镜像。
    例如,EC2实例位于美国地域,您可以将其迁移至阿里云位于美国的地域。具体地域及地域ID,请参见地域和可用区
  2. 完成迁移后,将新建的镜像复制到目标阿里云地域。具体操作,请参见复制镜像
  3. 使用该镜像在目标阿里云地域创建实例。具体操作,请参见使用自定义镜像创建实例
    AWS EC2 Linux系统的SSH一般默认关闭root密码登录,您可以使用源服务器的用户名和SSH Key登录阿里云的ECS实例。

迁移源服务器至阿里云

开始迁移源服务器之前,请先准备阿里云账号并了解注意事项。更多信息,请参见准备工作(迁移前必读)

  1. 导入迁移源。
  2. 登录SMC控制台

  3. 创建迁移任务对话框中,配置相关参数后,单击创建

    服务器迁移参数配置说明如下表所示。

    参数

    说明

    迁移任务类型

    选择服务器迁移后,请认真阅读迁移提示。

    任务名称

    迁移任务的名称。

    说明

    同一阿里云地域下,任务名称必须唯一。

    任务描述

    输入迁移任务的描述。

    目标类型

    您可根据实际业务需求选择迁移任务的目标类型:

    云服务器镜像

    您可以将源服务器迁移为云服务器镜像,并通过云服务器镜像创建ECS实例。

    配置项说明如下:

    • 目标地域:目标地域指的是您的源服务器要迁入阿里云的地域。该参数为必填项。关于地域的更多信息,请参见地域和可用区

    • 镜像名称:SMC为迁移源生成的目标阿里云镜像名称。

    云服务器实例

    如果您已购买ECS实例,可以将源服务器迁移至ECS实例,源服务器和已购买的ECS实例的存储、操作系统等需要适配。迁移源和目标实例的存储、操作系统等需要适配。迁移至目标实例最佳实践,请参见源服务器迁移至目标实例

    重要
    • 创建迁移任务后,目标ECS实例中的原数据将会清除(轻量应用服务器的数据不会被清除)。如果ECS实例中存在重要数据,不推荐您使用该方式迁移。推荐您在迁移时,目标类型选择云服务器镜像,再通过镜像创建ECS实例。关于源服务器迁移到目标实例的更多信息,请参见源服务器迁移至目标实例

    • 迁移到目标实例时会创建的一块临时按量付费云盘作为数据中转使用,迁移完这个中转云盘会被自动释放。

    • 迁移到目标实例会先对目标实例进行更换操作系统,系统盘的自动快照会被清理,且无法恢复。您可以手动取消自动快照随云盘释放。具体操作,请参见设置自动快照随云盘释放

    配置项说明如下:

    • 目标地域:目标地域指的是您的源服务器要迁入阿里云的地域。该参数为必填项。关于地域的更多信息,请参见地域和可用区

    • 目标实例:选择一个ECS实例作为目标实例。

    重要

    为避免迁移失败,迁移过程中请勿停止、启动、重启或者释放目标实例。

    轻量应用服务器

    如果您已购买轻量应用服务器,可以将源服务器迁移至轻量应用服务器,源服务器和已购买的轻量应用服务器的存储、操作系统等需要适配。迁移至轻量应用服务器最佳实践,请参见源服务器迁移至轻量应用服务器

    配置项说明如下:

    • 目标地域:目标地域指的是您的源服务器要迁入阿里云的地域。该参数为必填项。关于地域的更多信息,请参见地域和可用区

    • 目标实例:选择一个轻量应用服务器作为目标实例。创建轻量应用服务器的具体操作,请参见创建轻量应用服务器

    重要
    • 为避免迁移失败,迁移过程中请勿停止、启动、重启或者释放目标实例。

    • 如果目标实例数据盘数量少于迁移源数据盘数量,迁移源的数据盘将不会全部迁移。

    • 如果目标实例磁盘大小小于迁移源磁盘大小,建议先对目标实例的磁盘进行扩容。具体操作,请参见扩容数据盘

    容器镜像

    说明
    • 仅x86架构Linux操作系统的迁移源支持迁移为容器镜像。

    • 迁移至容器镜像最佳实践的具体操作,请参见源服务器迁移至容器镜像

    配置项说明如下:

    • 目标地域:目标地域指的是您的源服务器要迁入阿里云的地域。该参数为必填项。关于地域的更多信息,请参见地域和可用区

    • 容器镜像命名空间:存放迁移生成的容器镜像仓库的命名空间。

    • 容器镜像仓库名称:存放迁移生成的容器镜像的仓库地址。

    • 容器镜像版本:存放迁移生成的容器镜像的版本信息。

    • 容器镜像RAM角色:绑定中转实例的实例角色。

    目标磁盘(GiB)

    设置目标云服务器的磁盘结构。根据业务需求配置相关参数:

    系统盘

    • 系统盘:目标阿里云云服务器系统盘的大小,单位为GiB。系统盘大小取值范围为20~2048。目标系统盘取值需要大于迁移源系统盘实际占用大小。例如,源系统盘大小为400 GiB,实际占用100 GiB,则目标系统盘取值需大于100 GiB。

      说明

      默认值为迁移源系统盘大小,如无缩小系统盘容量的需要,建议不要小于默认值。

    • 分区<N>:SMC能够根据迁移源的磁盘分区结果自动生成目标磁盘分区,单位为GiB。N的取值范围:0~14。变量<N>表示第几个分区。如果迁移源的系统盘是单分区结构,则只会生成分区0

    数据盘

    • 数据盘<N>:表示迁移后阿里云云服务器数据盘的大小,单位为GiB。 数据盘大小取值范围:20~32768。

      • 您可以设置数据盘前复选框的选中情况,自行选择是否迁移目标数据盘。

      • 变量<N>表示第几个数据盘。

      • 数据盘取值需要大于迁移源数据盘的实际占用大小。例如,源数据盘大小为500 GiB,实际占用100 GiB,则目标数据盘取值需大于100 GiB。

    • 分区<N>:SMC能够根据迁移源的磁盘分区结果自动生成目标磁盘分区,单位为GiB。 取值范围:0~14。变量<N>表示第几个分区。如果迁移源的数据盘是单分区结构,则只会生成分区0

    说明

    若您的迁移源没有数据盘,或数据盘未挂载,则不会出现数据盘配置项。更多信息,请参见为什么新建迁移任务页面没有出现数据盘配置项?

    块复制

    SMC会根据迁移源磁盘分区状态进行判断是否支持开启块复制。

    • 如果迁移源不支持分区开启块复制,则该开关无法打开。使用默认的文件级别迁移,分区大小可修改。

    • 如果迁移源支持分区开启块复制,则默认开启块复制,实现分区级别的磁盘迁移。使用块复制能有效提升迁移传输速度的稳定性,同时能够保证跟源分区结构一致,但分区大小无法修改。

    说明

    迁移源为Windows操作系统时,块复制功能默认为开启状态,无法关闭该功能。

    迁移演练

    迁移演练功能可以帮助您在实际迁移前充分了解迁移任务的可行性和风险,并可以获取迁移的数据量、迁移速度及其迁移总时长等信息,为您提供修复建议,从而减少实际迁移中可能出现的问题和损失。一般情况下,迁移演练所需时间约为5分钟,过程中按量收费资源将会消耗一定的费用。默认开启迁移演练

    更多信息,请参见配置迁移演练

    执行方式

    请根据是否开启迁移前演练,选择执行方式:

    开启迁移演练

    • 仅演练:仅创建迁移演练任务,迁移演练完成后,如果需要迁移服务器,需要手动启动服务器迁移任务。

    • 演练并迁移:迁移演练完成后,如果不存在状态为严重的演练项,系统自动启动服务器迁移任务。默认选择演练并迁移

    关闭迁移演练

    • 立即执行:创建迁移任务后立即启动。默认选择立即执行

    • 预约执行:创建迁移任务后,在设置的时间自动启动迁移任务。

      说明

      预约执行时间最早可设置为当前时间后10分钟。

    • 只创建:仅创建迁移任务,需要手动启动迁移任务。

    专家模式(可选)

    网络模式

    传输迁移数据到中转实例使用的网络。中转实例会被创建在所选专有网络(VPC)、交换机(vSwitch)下,因此中转实例会被分配公网IP。

    公网传输

    迁移数据通过公网传输到中转实例。使用该模式,源服务器需能访问公网。根据实际需要,选择是否指定专有网络(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打通,并且必须指定VPC和vSwitch。

    说明

    如果您能直接从自建机房(Integrated Data Center,IDC)、虚拟机环境或者云主机访问某一阿里云地域下的专有网络VPC,建议您使用该方式进行迁移。使用内网传输能获得比通过公网更快速更稳定的数据传输效果,提高迁移工作效率。您可以通过VPN网关、高速通道物理专线、智能接入网关将源服务器和云上VPC打通。更多信息,请参见连接本地IDC

    传输限速

    迁移过程中,数据传输的带宽上限限制,单位为Mbps。

    压缩率

    迁移过程中,数据压缩传输的级别。 请根据您的实际需要,设置压缩率。

    • 在带宽有限的环境下,使用高压缩率,可提升数据的传输速度。

    • 在带宽很高的情况下,建议您不压缩传输数据,可减少对迁移源CPU资源的耗费。

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

    Checksum验证

    默认关闭,开启后,可增强数据一致性校验,但是可能会降低传输速度。

    许可证类型

    选择许可证类型。

    镜像检测

    镜像检测功能主要检测镜像是否为有效镜像、镜像是否可以创建出功能齐全的ECS实例等。您可以在创建服务器迁移和VMware无代理迁移任务时使用镜像检测功能。

    镜像检测可以能帮您快速发现迁移后镜像或实例存在的潜在问题,并提供修复方案,使其符合阿里云标准,提升启动实例成功率。

    更多信息,请参见配置镜像检测

    自动增量同步

    迁移任务是否自动同步源服务器增量数据至阿里云。默认关闭自动增量同步。

    • 开启该开关后,需设置以下配置项:

      • 同步重复频率:增量迁移任务周期性自动执行的时间间隔。

      • 最大镜像保留数:增量迁移任务默认保留的最大镜像数。

      迁移任务将自动周期性执行,并同步增量数据至阿里云。增量迁移的最佳实践,请参见增量迁移源服务器

    • 关闭该开关后,迁移任务仅执行一次。

    迁移任务标签

    为迁移任务绑定标签键值,便于查询与管理迁移任务。更多信息,请参见使用标签管理迁移源和迁移任务

    说明

    同一个迁移任务最多可绑定20个标签。

    中转实例规格

    可根据实际需求选择中转实例规格。仅当目标类型选择云服务器镜像容器镜像时,才出现此参数。

    • 选择中转实例规格:系统会选择该实例规格创建中转实例。若该实例规格库存不足,则迁移任务创建失败。

    • 不选择中转实例规格:系统默认会按照顺序选择实例规格来创建中转实例。

    重要

    为避免迁移失败,迁移过程中请勿停止、启动、重启或者释放中转实例。迁移完成后,中转实例会自动释放。

  4. 在弹出的对话框中,仔细阅读迁移提示后,单击我确认我已知悉

相关操作

操作项

说明

验证迁移结果

该功能将使用阿里云提供的OOS模板ACS-SMC-CreateAndVerifyInstance,自动验证迁移任务生成的镜像能否成功创建实例,并正常启动。

  1. 在操作列单击验证迁移结果image..png

  2. 在弹出的对话框中了解验证流程,并单击立即验证

    您也可以单击自定义验证脚本参数,手动配置参数进行验证。

  3. 最新验证结果列,查看验证结果。

    • 验证通过:表示迁移结果无异常。您可以单击查看输出参数了解验证结果。

    • 验证未完成:表示迁移结果存在异常。您可以单击查看原因了解失败的原因,并根据原因排查问题。

    您也可以单击操作列...,并单击前往OOS查看历史验证获取OOS模板的历史执行信息。

查看目标实例

如果您选择操作系统迁移或者迁移的目标类型为云服务器实例时者,可以在操作列,单击查看目标实例,可查看目标实例的详情信息。

部署容器应用

如果您选择迁移的目标类型为容器镜像,可以使用容器镜像部署应用。更多信息,请参见验证容器镜像smc docker

查看迁移任务详细信息

迁移任务页面,单击迁移任务ID,即可查看迁移任务详细信息。

排查迁移问题

当迁移任务状态为出错时,表示迁移失败。此时,您需要:

  1. 操作列,单击查看日志,查看日志并修复问题。常见错误及修复方案的更多信息,请参见SMC FAQ故障排除

  2. 迁移任务页面,重启迁移任务。迁移任务会从上一次结束时的进度处继续迁移。

    说明

    如果中转实例已被释放,需要重新迁移。具体操作,请参见误释放了中转实例怎么办