ECS实例从经典网络迁移到专有网络

由于经典网络类型的ECS实例预计于2025年02月28日起停止服务(请参见公告),建议您将经典网络ECS实例迁移到专有网络,相比经典网络,专有网络(VPC)中的ECS实例更加安全并且支持使用弹性公网IP(EIP)等更丰富的功能。本文介绍如何使用实例迁移计划功能将一台或多台ECS实例从经典网络迁移到专有网络。

前提条件

重要

现支持ECS实例迁移计划功能的地域,包括华北1(青岛)、华北2(北京)、华东1(杭州,可用区C中的部分ECS实例不支持迁移)、华东2(上海)、华南1(深圳)、中国(香港)、美国(硅谷)、新加坡。

迁移前,请确保经典网络中的源ECS实例满足以下条件:

  • ECS实例没有挂载本地盘。如果ECS实例挂载了本地盘,请提交工单咨询迁移方式。

    通过以下步骤查看是否挂载了本地盘

    1. 登录ECS管理控制台

    2. 在左侧导航栏,选择实例与镜像 > 实例

    3. 在实例列表,目标实例配置列查看是否有本地盘信息。

    如果有,表示该实例挂载了本地盘。否则表示没有挂载本地盘。实例挂载本地盘

  • 如果ECS实例分配了公网IP地址,但公网带宽为0 Mbps,需要先升级公网带宽到大于0 Mbps。公网带宽为0 Mbps时会导致迁移后ECS实例公网IP地址丢失。具体操作,请参见修改公网带宽峰值

了解迁移影响

重要

网络迁移会对实例状态、网络类型、IP地址等产生影响。请您在迁移前,务必仔细了解以下迁移影响。

影响项目

说明

迁移时长

从源ECS实例停机到迁移后的ECS实例启动,约耗时15分钟。

重要
  • 迁移后的ECS实例启动,代表计算网络资源已迁移完成,您就可以正常使用业务。

  • 如果跨可用区迁移,在ECS实例启动后还会继续迁移磁盘数据,通常情况下迁移100 GiB的磁盘数据耗时4小时左右,期间磁盘I/O性能会短暂下降,且暂时不支持对快照和磁盘进行相关操作。迁移磁盘数据过程中不影响您业务的正常使用,对于非高度敏感业务,几乎无感知磁盘I/O性能的下降。

实例状态变化

迁移过程中会停止并重新启动ECS实例,建议您预约业务低谷的时间段进行迁移。

网络类型变化

从经典网络迁移至VPC。更多VPC的介绍,请参见什么是专有网络

重要

从经典网络迁移至VPC后,不支持再迁移回经典网络。

软件授权码变化

迁移后,软件授权码可能会发生变化。

针对授权码发生变化的解决方案

  • 该应用没有迁移许可计划:建议您联系软件供应商或者渠道伙伴提交验证表单,重新授权。

  • 该应用通过绑定MAC地址注册:部分软件采用绑定MAC地址注册合法环境。由于迁移专有网络VPC后,只保留一个MAC地址(公网MAC地址或私网MAC地址),如果没有保留已绑定的MAC地址,会出现授权失败的情况。建议您联系软件供应商,确认在ECS实例上注册该软件时是否以绑定MAC地址的形式,并重新绑定MAC地址。更多信息,请参见弹性网卡概述

公网/私网IP地址

  • 公网IP地址:保持不变。

    重要

    在专有网络中,公网IP存在于网关设备上,并不在ECS实例的网卡上,所以ECS实例操作系统内看不到公网IP,只能查看到内网IP。如果您的应用需要从ECS实例操作系统中获取到公网IP的地址,需要您在迁移后进行额外配置,具体操作请参见使用VPC附加网段实现EIP网卡可见

  • 私网IP地址:支持自定义是否保留内网IP。您也可以在迁移完成后自行修改内网IP,具体操作,请参见修改私有IP地址

    重要

    建议您选择保留内网IP,选择不保留时,您需要在迁移后将使用到原内网IP的文件,业务程序,其他云产品白名单等修改为新的内网IP,例如修改Linux系统ECS实例的/etc/hosts文件。

磁盘识别名称

  • Linux实例:部分ECS实例会在迁移的同时升级底层虚拟化技术,可能导致磁盘识别名称发生变化。在Linux实例中,磁盘会被识别为vda、vdb、vdc等名称。

    • 如果源ECS实例的磁盘识别名称已经是vda、vdb、vdc等,不会发生变化。

    • 如果源ECS实例的磁盘识别名称是xvda、xvdb、xvdc,迁移后会被识别为vda、vdb、vdc等。阿里云会为Linux实例自动修复/etc/fstab文件,但您仍需关注其他应用是否依赖旧的磁盘识别名称。

  • Windows实例:不受影响。

费用

  • 迁移本身不额外计费。迁移前后ECS实例规格的单价不会发生变化。

  • 迁移至VPC后会取消先前经典网络实例的未生效和未支付的订单。

其他

  • ECS实例的ID、用户名、登录密码不变。

  • 如果负载均衡SLB的虚拟服务器组(VServerGroup)中添加了源ECS实例,迁移后的ECS实例不会自动添加,您需要手动添加。具体操作,请参见编辑虚拟服务器组

    重要

    负载均衡SLB的虚拟服务器组已不再支持添加经典网络ECS实例

视频教程

说明

此视频教程仅为参考示例,详细操作流程与问题处理请继续阅读以下内容。

迁移准备工作

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

    具体操作,请参见创建快照

    说明

    使用快照会产生计费。更多信息,请参见快照计费

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

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

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

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

  4. (可选)建议将应用服务设置为开机自启动,并做好可用性监控,以便在迁移后更快地恢复业务。

  5. 关闭或卸载源ECS实例上的服务器安全软件。

    说明

    迁移时会更新ECS实例的设备驱动,因此需要暂时关闭或卸载已安装的服务器安全软件,例如安全狗、护卫神、云锁。

  6. 对源ECS实例的系统盘,确保预留500 MiB以上的空间。否则可能导致虚拟化驱动安装失败,无法启动。

  7. 对目标VPC的虚拟交换机,确保预留内网IP地址的数量不少于待迁移ECS实例的数量。

开始迁移

迁移流程概览

image

步骤一:创建迁移计划

  1. 登录ECS管理控制台

  2. 在左侧导航栏,选择运维与监控 > icon1 > 实例迁移计划

  3. 在页面左侧顶部,选择目标资源所在的资源组和地域。地域

  4. 单击创建迁移计划

  5. 创建迁移计划须知对话框中,仔细阅读迁移须知后选中我已认真阅读并了解,然后单击开始创建

    image

  6. 配置迁移计划页面,配置目标VPC、网络属性、网络连通性相关的信息,然后单击下一步

    1. 设置目标可用区与专有网络

      设置网络

      配置项

      说明

      请输入计划名称

      自定义迁移计划名称。

      选择目标可用区

      从下拉列表中选择迁移后ECS实例所属的目标可用区。可选的可用区由系统根据资源情况自动规划,如果您需要将源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:无论实例是否有公网MAC,迁移后实例的MAC地址均为私网MAC。

        • 公网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实例的内网IP地址

        • 无需内网联通:无需额外配置,继续下一步操作即可。

        • 需要内网联通:请在启动迁移前自行为源ECS实例配置ClassicLink链接,具体操作,请参见经典网络和专有网络互通

  7. 选择待迁移实例页面,添加待迁移的源ECS实例,然后单击下一步

    如果您将保留实例内网IP设置为,并且如果您需要让已迁移至VPC的ECS实例和经典网络中其他尚未迁移的源ECS实例保持内网联通,则必须添加所有需要内网联通的源ECS实例(您可以分别设置迁移时间控制迁移顺序)。预约迁移后,将不能继续添加ECS实例。

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

    选择实例

  8. 预约迁移页面,设置迁移的时间,然后单击创建验证

    在迁移过程中需要停止并重新启动ECS实例,建议您预约业务低谷时间段。支持为各ECS实例分别设置迁移时间:

    • 为单台ECS实例设置迁移时间:在该ECS实例的操作列,单击预约迁移时间进行配置。

    • 为多台ECS实例批量设置迁移时间:选中多个实例,然后单击批量预约迁移时间进行配置。

    重要
    • 对需要暂时保留在经典网络并进行内网联通的ECS实例,请设置较晚的迁移时间,并且在迁移启动前再次评估是否需要将这些ECS实例迁移到VPC。

    • 可设置的迁移时间限制如下:

      • 不得早于当前时间。

      • 不得晚于ECS实例的到期时间。

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

  9. 创建验证对话框,查看迁移注意事项,并验证迁移计划配置是否符合要求。

    • 如果迁移计划配置符合要求:选中迁移提示信息,然后单击确认并创建

    • 如果迁移计划配置不符合要求:系统将提示错误信息,您可以根据错误信息定位问题,并重新创建迁移计划。

步骤二:完成迁移

迁移计划创建完成后,系统将在您预约的时间启动迁移,自动将ECS实例从经典网络迁移至VPC。迁移完成

说明

如果跨可用区迁移,在ECS实例启动后还会继续迁移磁盘数据,通常情况下迁移100 GiB的磁盘数据耗时4小时左右,期间磁盘I/O性能会短暂下降,且暂时不支持对快照和磁盘进行相关操作。迁移磁盘数据过程中不影响您业务的正常使用,对于非高度敏感业务,几乎无感知磁盘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. 检查业务系统运行是否正常。

(条件必选)处理迁移后相关问题

  • 如果未保留内网IP,但是存在关联服务使用原内网IP绑定域名场景时,请修改对应主机的/etc/hosts文件,将原内网IP修改为新的内网IP。

  • 如果未保留内网IP,还需要在其他云产品的白名单中移除废弃的原内网IP地址。

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

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

  • 如果源ECS实例长时间未重启或升级过内核,迁移后的ECS实例可能会出现文件系统检查fsck(File System Check)、相关配置改动失效、启动失败等问题。

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

  • 如果ECS实例挂载了NAS文件系统,还需要将经典网络类型的挂载点切换为专有网络VPC类型的挂载点。具体操作,请参见文件存储NAS实例从经典网络挂载点切换为VPC挂载点

常见问题

迁移后无法打开网站、服务不可用或者无法读写数据库。

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

迁移前能使用FTP服务,迁移后不能用了。

迁移到VPC的ECS实例不再保留公网网卡,这会导致FTP服务不可用。建议您:

  1. 转换实例公网IP为弹性公网IP(EIP)

  2. 使用VPC附加网段实现EIP网卡可见

说明

部分已停售的实例规格上一代入门级实例规格不支持挂载弹性网卡,这时建议您升级为具有兼容性的实例规格后采用以上方案,具体操作,请参见升降配方式概述

部分Windows实例迁移后,实例内部找不到数据盘。

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

  1. 登录ECS管理控制台

  2. 在左侧导航栏,选择运维与监控 > 云助手

  3. 选择ECS实例页签,在页面右上角单击创建/执行命令,然后创建并执行以下云助手命令。

    云助手命令设置示例如下表所示,其他参数保持默认值即可。更多参数的说明,请参见创建并执行命令

    参数

    取值

    命令类型

    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。

相关文档