相比经典网络,专有网络(VPC)中的ECS实例更加安全并且支持更丰富的功能,例如支持绑定弹性公网IP(EIP)。本文介绍如何使用实例迁移计划功能将一台或多台ECS实例从经典网络迁移到专有网络。

前提条件

迁移前,请确保经典网络中的源ECS实例满足以下条件:
  • 磁盘条件:ECS实例没有挂载本地盘。如果ECS实例挂载了本地盘,请提交工单咨询迁移方式。
  • 带宽条件:ECS实例公网带宽大于0 Mbps。如果ECS实例分配了公网IP地址,但公网带宽为0 Mbps,需要先升级公网带宽。具体操作,请参见修改公网带宽
  • 地域条件:位于支持ECS实例迁移计划功能的地域,包括华北1(青岛)、华北2(北京)、华东1(杭州)、华东2(上海)、华南1(深圳)、中国(香港)、美国(硅谷)、新加坡。
    说明 华东1(杭州)地域可用区C中的部分ECS实例不支持迁移。

迁移影响

影响项目 说明
迁移时长 从源ECS实例停机到迁移后的ECS实例启动,约耗时15分钟。
说明 迁移后的ECS实例启动,代表计算网络资源已迁移完成。如果跨可用区迁移,在ECS实例启动后还会继续迁移磁盘数据,通常情况下迁移100 GiB的磁盘数据耗时4小时左右,期间磁盘I/O性能会短暂下降,且暂时不支持快照和磁盘相关的操作。
实例状态变化 迁移过程中会停止并重新启动ECS实例,建议您预约业务低谷的时间段进行迁移。
网络类型变化 从经典网络迁移至VPC。更多VPC的介绍,请参见什么是专有网络
软件授权码变化 迁移后,软件授权码可能会发生变化。
IP地址
  • 公网IP保持不变。
    注意 VPC中的ECS实例没有公网网卡,通过NAT方式访问公网,在ECS实例内只能查看到内网IP。如果应用依赖操作系统中可见的公网IP,请谨慎评估是否迁移。
  • 支持自定义是否保留内网IP。您也可以在迁移完成后自行修改内网IP,具体操作,请参见修改私有IP地址
磁盘识别名称 部分ECS实例会在迁移的同时升级底层虚拟化技术,可能导致磁盘识别名称会发生变化。在Linux实例中,磁盘会被识别为vda、vdb、vdc等名称。
  • 如果源ECS实例的磁盘识别名称已经是vda、vdb、vdc等,不会发生变化。
  • 如果源ECS实例的磁盘识别名称是xvda、xvdb、xvdc,迁移后会被识别为vda、vdb、vdc等。阿里云会为Linux实例自动修复/etc/fstab文件,但您仍需关注其他应用是否依赖旧的磁盘识别名称。
费用
  • 迁移本身不额外计费。包年包月ECS实例从新的计费周期(迁移完成)开始,实例规格的单价会发生变化,同等配置条件下VPC实例的费用低于经典网络实例。
  • 取消未生效和未支付的续费变配订单,您可以重新操作续费变配。
其他
  • ECS实例的ID、用户名、登录密码不变。
  • 如果负载均衡SLB的虚拟服务器组(VServerGroup)中添加了源ECS实例,迁移后的ECS实例不会自动添加,您需要手动添加。具体操作,请参见编辑虚拟服务器组

迁移准备工作

  1. 为源ECS实例的磁盘创建快照并备份数据。

    具体操作,请参见创建一个云盘快照

  2. (可选)如果源ECS实例关联了云数据库,需要提前将云数据库设置为混访模式。

    混访模式的云数据库可以同时接受经典网络类型和VPC类型ECS实例的访问,更多信息,请参见云数据库混访概述

  3. (可选)如果源ECS实例关联了具有白名单功能的云数据库服务(例如云数据库RDS),需要提前将目标虚拟交换机的网段加入白名单。

    具体操作,请参见设置白名单

  4. (可选)建议将应用服务设置为开机自启动,并做好可用性监控,方便在迁移后更快地恢复业务。
  5. 关闭或卸载源ECS实例上的服务器安全软件。
    说明 迁移时会更新ECS实例的设备驱动,因此需要暂时关闭或卸载已安装的服务器安全软件,例如安全狗、护士神、云锁。
  6. 对源ECS实例的系统盘,确保预留500 MiB以上的空间。
  7. 对目标VPC的虚拟交换机,确保预留内网IP地址的数量不少于待迁移ECS实例的数量。

步骤一:创建迁移计划

  1. 登录ECS管理控制台
  2. 在左侧导航栏,选择运维与监控 > 实例迁移计划
  3. 在顶部菜单栏左上角处,选择地域。
  4. 单击创建迁移计划
  5. 配置迁移计划页面,配置目标VPC、网络属性、网络连通性相关的信息,然后单击下一步
    1. 设置目标可用区与专有网络。
      设置网络
      配置项 说明
      请输入计划名称 自定义迁移计划名称。
      选择目标可用区 从下拉列表中选择迁移后ECS实例所属的目标可用区。可选的可用区由系统根据资源情况自动规划,如果您需要将源ECS实例迁移至指定的可用区,但下拉列表中没有该可用区,请提交工单咨询。
      说明 一个实例迁移计划仅支持选择一个目标可用区。如果您需要将多台源ECS实例分别迁移至多个目标可用区,请根据需要分别创建多个迁移计划。
      选择迁移的目标专有网络 从下拉列表中选择迁移后ECS实例所属的目标专有网络。目标专有网络的网段设置决定了能否保留源ECS实例的内网IP,如下所示:
      • 如果需要保留源ECS实例的内网IP,必须选择网段为10.0.0.0/8的VPC。根据是否自行创建了此类VPC选择:
        • 如果您尚未创建网段为10.0.0.0/8的VPC,选择(默认)系统自动创建专有网络,网段:10.0.0.0/8即可,系统将自动创建网段为10.0.0.0/8的VPC。
        • 如果您已经创建了网段为10.0.0.0/8的VPC,则选择该VPC。
      • 如果无需保留源ECS实例的内网IP:根据自己的网络规划,选择网段不是10.0.0.0/8的其他VPC。
    2. 设置实例网络属性。
      网络属性
      配置项 说明
      目标安全组 选择迁移后ECS实例所属的安全组。
      • (默认)克隆经典实例安全组:克隆源ECS实例所属的经典网络安全组,目标安全组的安全组规则和该经典网络安全组保持一致。

        如果您将选择迁移的目标专有网络设置为(默认)系统自动创建专有网络,网段:10.0.0.0/8,则仅支持选中该选项自动克隆经典网络安全组。

        说明 不支持克隆存在组组授权规则的安全组。
      • 指定安全组:从下拉列表中选择您已经创建的安全组。
        说明 如果该安全组的安全组规则设置不当,在迁移后会影响ECS实例的网络访问,请确保安全组规则设置符合您对网络访问的预期。
      优先保留MAC地址策略 在经典网络中,如果ECS实例分配了公网IP,会同时拥有公网MAC地址和私网MAC地址;在专有网络中,ECS实例则只拥有私网MAC地址,通过NAT方式映射实现访问公网。因此,您需要选择迁移后使用哪一个MAC地址,请根据业务系统需要选择保留私网MAC公网MAC
      • 如果业务系统绑定了MAC地址,例如业务系统中直接配置了MAC地址、部分软件采用绑定MAC地址的方式注册,请选择保留对应的MAC地址。
      • 如果业务系统没有绑定MAC地址,则任选一项保留即可。
    3. 设置实例网络连通性。
      实例连通
      配置项 说明
      保留实例内网IP 选择是否保留源ECS实例的内网IP地址。如果保留,需要设置如何创建虚拟交换机;如果不保留,需要选择已创建的虚拟交换机。
      • :保留源ECS实例的内网IP地址。这时需要继续设置创建虚拟交换机策略
        • 创建虚拟交换机策略自动时,由系统根据内网IP地址自动创建网段符合要求的虚拟交换机。请确保对应的网段未被其他虚拟交换机占用,否则虚拟交换机会创建失败。
          说明 如果您将选择迁移的目标专有网络设置为(默认)系统自动创建专有网络,网段:10.0.0.0/8,则系统自动保留源ECS实例内网IP并自动创建虚拟交换机,创建虚拟交换机策略仅支持设置为自动
        • 创建虚拟交换机策略手动时,您需要自行创建符合目标可用区、源ECS实例的内网IP地址要求的虚拟机交换机。
          说明 仅在选择迁移的目标专有网络设置为自行创建的网段为10.0.0.0/8的VPC时,才支持将创建虚拟交换机策略设置为手动
      • :不保留源ECS实例的内网IP地址,继续从下拉列表中选择您希望使用的虚拟交换机即可。
        说明 如果在下拉列表中找不到您已经创建的虚拟交换机,可能原因是该虚拟交换机不在迁移ECS实例的目标可用区,请在目标可用区重新创建虚拟交换机。具体操作,请参见创建和管理交换机
      已迁移实例和该计划内还未迁移的经典实例保持内网联通 在迁移计划包括了多台ECS实例时,已迁移至VPC的ECS实例和经典网络中其他尚未迁移的源ECS实例是否保持内网联通,内网联通的设置方法由是否保留了源ECS实例的内网IP地址决定。
      • 保留了源ECS实例的内网IP地址
        • 无需内网联通:选择
        • 需要内网联通:选择,并在下一步选择待迁移实例页面中添加所有需要内网联通的源ECS实例(您可以分别设置迁移时间控制迁移顺序)。
          说明 未添加至迁移计划的源ECS实例将无法通过内网与迁移至VPC的ECS实例联通,且预约迁移后,将不能继续添加ECS实例或删除已添加的ECS实例。
      • 不保留源ECS实例的内网IP地址
        • 无需内网联通:无需额外配置,继续下一步操作即可。
        • 需要内网联通:请在启动迁移前自行为源ECS实例配置ClassicLink链接,具体操作,请参见经典网络和专有网络互通
  6. 选择待迁移实例页面,添加待迁移的源ECS实例,然后单击下一步
    如果您将保留实例内网IP设置为,并且需要已迁移至VPC的ECS实例和经典网络中其他尚未迁移的源ECS实例保持内网联通,必须添加所有需要内网联通的源ECS实例(您可以分别设置迁移时间控制迁移顺序)。
    说明 未添加至迁移计划的源ECS实例将无法通过内网与迁移至VPC的实例联通,且预约迁移后,将不能继续添加ECS实例或删除已添加的ECS实例。

    示例如下图所示,①为需要先迁移的ECS实例,②为需要后迁移的ECS实例。

    选择实例
  7. 预约迁移页面,设置迁移的时间,然后单击创建验证
    在迁移过程中需要停止并重新启动ECS实例,建议您预约业务低谷时间段。支持为各ECS实例分别设置迁移时间:
    • 为单台ECS实例设置迁移时间:在该ECS实例的操作列,单击预约迁移时间进行配置。
    • 为多台ECS实例批量设置迁移时间:选中多个实例,然后单击批量预约迁移时间进行配置。
    • 为全量ECS实例设置统一的迁移时间:单击设置统一迁移时间进行配置。
    注意
    • 对需要暂时保留在经典网络并进行内网联通的ECS实例,请设置较晚的迁移时间,并且在迁移启动前再次评估是否需要将这些ECS实例也迁移到VPC。
    • 可设置的迁移时间限制如下:
      • 不得早于当前时间。
      • 不得晚于ECS实例的到期时间。

      另外创建迁移计划后,部分磁盘需要先进行三副本校验,校验时长取决于磁盘大小和校验队列排队情况,待校验完成后才开始迁移。请您根据系统提示设置预约迁移时间。

  8. 创建验证对话框,查看迁移注意事项,并验证迁移计划配置是否符合要求。
    • 如果迁移计划配置符合要求:选中迁移提示信息,然后单击确认并创建
    • 如果迁移计划配置不符合要求:系统将提示错误信息,您可以根据错误信息定位问题,并重新创建迁移计划。

步骤二:完成迁移

迁移计划创建完成后,系统将在您预约的时间启动迁移,自动将ECS实例从经典网络迁移至VPC。迁移完成
迁移过程如下:
  1. 源ECS实例停机。
  2. 迁移ECS实例的计算网络资源。
  3. 迁移后的ECS实例启动。
  4. 继续迁移磁盘数据。
  5. 完成迁移。
说明 如果跨可用区迁移,在迁移完计算网络资源并启动ECS实例后,还会继续迁移磁盘数据。通常情况下迁移100 GiB的磁盘数据耗时4小时左右,期间磁盘I/O性能会短暂下降,且暂时不支持快照和磁盘相关的操作。

步骤三:检查迁移结果

  1. 在左侧导航栏,选择实例与镜像 > 实例
  2. 找到已迁移的ECS实例,单击实例ID。
  3. 实例详情页面,查看实例的网络类型。
    如果网络类型为专有网络,说明该ECS实例已成功迁移到VPC。查看结果
  4. 检查内网环境和业务运行环境。
    场景 迁移计划 后续操作
    经典网络中的ECS实例全部迁移到VPC
    • 选择迁移的目标专有网络设置为(默认)系统自动创建专有网络,网段:10.0.0.0/8
    • 已迁移实例和该计划内还未迁移的经典实例保持内网联通设置为
    检查业务系统运行是否正常。
    部分ECS实例迁移到VPC,部分ECS实例保留在经典网络
    • 选择迁移的目标专有网络设置为(默认)系统自动创建专有网络,网段:10.0.0.0/8
    • 已迁移实例和该计划内还未迁移的经典实例保持内网联通设置为
    检查业务系统运行是否正常。
    其他场景 选择迁移的目标专有网络设置为其他网段不是10.0.0.0/8的VPC。
    1. 根据需要检查网络连通性。
    2. 该场景下不支持保留源ECS实例的内网IP。如果业务中通过内网IP对接,需要配置为新的内网IP。
    3. 检查业务系统运行是否正常。

后续步骤

  1. 如果ECS实例使用Linux系统,并且未保留内网IP,需要修改ECS实例的/etc/hosts文件。修改hosts
    1. 执行命令vi /etc/hosts打开文件。
    2. i进入编辑模式。
    3. 将原内网IP修改为新的内网IP。
    4. Esc退出编辑模式。
    5. 输入:wq,然后按回车键(Enter)。
  2. 如果未保留内网IP,还需要在其他云产品的白名单中移除废弃的原内网IP地址。

    例如,RDSSLBOSS容器服务等支持设置白名单的云产品。

  3. 如果跨可用区迁移ECS实例,可能影响和云数据库RDS、云数据Redis、云数据MongoDB等产品的联通性。请及时调整应用的配置,例如将对应的RDS实例等迁移至同一个可用区,确保能够持续提供服务。

    具体操作,请参见迁移可用区

  4. 如果源ECS实例长时间未重启或升级过内核,迁移后的ECS实例可能会有文件系统检查fsck(File System Check)、相关配置改动失效、启动失败等问题。
  5. (可选)处理因网卡被删除发生的授权码变化。

    在ECS实例上的软件绑定了MAC地址时,如果软件供应商认可阿里云的迁移证明,您可以重新授权;如果授权存在问题,请根据实际情况订正或者选择回滚。

  6. (可选)如果长时间未重启ECS实例,或者升级内核后未重启ECS实例,在重新启动ECS实例时系统会检查文件系统和更新相关配置。如果出现启动失败等问题,请及时提交工单联系阿里云。

常见问题

  • 迁移后无法打开网站、服务不可用或者无法读写数据库,为什么?

    可能是目标安全组没有开启相应通信端口,建议您尝试克隆原有的安全组规则。具体操作,请参见克隆安全组

  • 迁移后无法正常使用软件,提示授权码过期、授权码无效或者没有授权码,为什么?
    可能原因如下:
    • 该应用没有迁移许可计划:建议您联系软件供应商或者渠道伙伴提交验证表单,重新授权。
    • 该应用通过绑定MAC地址注册:部分软件采用绑定MAC地址注册合法环境。由于迁移专有网络VPC后,只保留一个MAC地址(公网MAC地址或私网MAC地址),如果没有保留已绑定的MAC地址,会出现授权失败的情况。建议您联系软件供应商,确认在ECS实例上注册该软件时是否以绑定MAC地址的形式,并重新绑定MAC地址。更多信息,请参见弹性网卡概述
  • 迁移前能使用FTP服务,迁移后不能用了,为什么?
    迁移到VPC的ECS实例不再保留公网网卡,会导致FTP服务不可用。建议您:
    1. 转换实例公网IP为弹性公网IP(EIP)
    2. 设置EIP网卡可见模式
    说明 部分已停售的实例规格上一代入门级实例规格不支持挂载弹性网卡,这时建议您升级为具有兼容性的实例规格后采用以上方案,具体操作,请参见升降配方式概述
  • 部分Windows实例迁移后,实例内部找不到数据盘,为什么?

    迁移后,部分Windows实例的云盘处于脱机状态,建议您通过以下方式批量设置云盘自动联机。更多信息,请参见Windows系统的ECS实例磁盘脱机处理方法

    1. 登录ECS管理控制台
    2. 在左侧导航栏,选择运维与监控 > 发送命令/文件(云助手)
    3. 单击创建/执行命令,然后创建并执行以下云助手命令。
      云助手命令设置示例如下表所示,其他参数保持默认值即可。更多参数的说明,请参见立即执行命令
      参数 取值
      命令类型 PowerShell
      命令内容
      @("san policy=onlineall") |diskpart
      选择实例 选中待修复Windows实例。
    4. 单击执行并保存
  • ECS实例从经典网络迁移到VPC后,使用FTP传输文件失败,为什么?

    经典网络中的ECS实例会有公网网卡和私网网卡,而VPC中的ECS实例只有私网网卡。因此,如果您的应用必须识别公网IP,就需要进行特殊配置。

    大部分客户端会使用FTP被动模式访问FTP Server,该模式下需要FTP Server将其IP地址告知客户端,由于专有网络下无法直接识别公网IP,就将内网IP告知了客户端,客户端使用该内网IP尝试访问就会失败。

    因此,使用VPC中ECS实例作为FTP Server时,建议主动将ECS实例的公网IP告知FTP Server程序。由于FTP Server程序类型众多,设置方式也存在差异,请您根据使用的程序类型搜索设置方法。以常见的vsftpd为例,打开vsftpd的配置文件,并加入以下内容:
    listen_ipv6=NO
    pasv_address=<PublicIP>
    说明<PublicIP>替换为ECS实例的公网IP地址,推荐使用弹性公网IP。

相关文档