本文介绍如何将经典网络中的ECS实例部分迁移到VPC,并且实现内网互通。

背景信息

您在经典网络中,已购买ECS实例(ECS_A和ECS_B)和RDS实例,其中ECS实例作为应用服务器,RDS实例作为数据库服务器,各实例之间通过内网连接。由于业务发展需要,需要将ECS实例(ECS_B)迁移到VPC,ECS实例(ECS_A)还是保留在经典网络。为了保持业务稳定,希望不改变ECS实例的内网IP地址,各实例之间内网能够互通。应用场景如下图所示。架构图
注意 已迁移ECS实例只支持和同一个实例迁移计划中的经典网络实例内网互通,不支持和实例迁移计划外的经典网络实例内网互通。

准备工作

在迁移前,建议完成如下操作:
  • 为ECS实例创建快照,备份数据。具体操作,请参见创建一个云盘快照
  • 迁移时会重启ECS实例,建议您将应用服务设置为开机自启动,并做好可用性监控。

更多信息,请参见迁移影响迁移准备工作

步骤一:迁移ECS实例

通过实例迁移计划,将应用服务器(ECS_B)迁移到VPC网络,具体操作如下所示。

  1. 登录ECS管理控制台
  2. 在左侧导航栏,单击运维与监控 > 实例迁移计划
  3. 在顶部菜单栏左上角处,选择地域。
  4. 单击创建迁移计划
  5. 配置迁移计划引导页,配置目标网络等信息,单击下一步
    1. 选择迁移的目标可用区与专有网络。
      设置可用区
      配置项 说明
      请输入计划名称 设置迁移计划名称,例如ECS_c2v_demo。
      选择目标可用区 从下拉列表中选择需要迁移的目标可用区,例如迁移到深圳 可用区B
      说明
      • 可用区选项是系统根据资源自动规划,您只能在下拉列表中选择对应可用区。
      • 一个实例迁移计划只能设置一个可用区,如果您需要设置多个可用区,需要创建多个迁移计划。
      选择迁移的目标专有网络 从下拉列表中选择(默认)系统自动创建专有网络,网段:10.0.0.0/8,系统自动创建目标专有网络。
    2. 设置安全组和MAC地址。
      网络属性
      配置项 说明
      目标安全组 系统自动选择(默认)克隆经典实例安全组
      说明 不支持克隆存在组组授权规则的安全组。
      优先保留MAC地址策略 选择需要保留的MAC地址,可选私网MAC公网MAC

      原业务环境中未绑定MAC地址,此处选择私网MAC

    3. 设置保留实例的内网IP和内网互通。
      内网互通
      配置项 说明
      保留实例内网IP 系统默认选择,保留ECS实例原来的内网IP地址。

      创建虚拟交换机策略默认选择自动,系统自动创建虚拟交换机。

      已迁移实例和该计划内还未迁移的经典实例保持内网联通 需要ECS_A和ECS_B互通,此处选择
  6. 选择待迁移实例引导页,选中ECS实例,单击下一步
    选择实例
  7. 预约迁移引导页,为实例设置迁移时间,单击创建验证
    说明 在迁移时需要重启ECS实例,建议您设置业务低谷的时间段进行迁移。
    设置时间
    1. 在实例的操作列,单击预约迁移时间
    2. 预约迁移时间对话框中,选择迁移时间。
      注意 只有在实例迁移计划中的经典网络实例才能和已迁移实例内网互通。因此,对于需要保留在经典网络的实例(ECS_A),您需要设置一个较长的预约迁移时间,让实例保留在实例迁移计划中。在预约时间临近时,如果ECS实例还需要保留在经典网络中,您需要重新设置预约迁移时间。建议您安排计划将经典网络中的实例迁移到VPC。
    3. 单击确定
  8. 创建验证对话框中,您可以查看迁移注意事项,并单击确认并创建
    说明 如果您的迁移计划不符合要求,系统将提示错误信息。此时您可以根据错误信息修改问题后重新创建迁移计划。
    迁移计划创建完成后,系统将在指定时间自动为您迁移ECS实例。ECS_B正常迁移完成后,如下图所示。如果迁移过程中出现问题,请参见常见问题迁移计划结果
    迁移完成后,您可以在左侧导航栏选择实例与镜像 > 实例查看ECS。此时,ECS实例的网络类型已经变为VPC,内网IP地址保持不变。ecs迁移结果

步骤二:迁移RDS实例

通过RDS切换网络类型功能,将数据库服务器(RDS实例)迁移到VPC网络,具体操作如下所示。更多信息,请参见切换网络类型

  1. 获取系统自动创建的VPC信息。
    1. 选择实例与镜像 > 实例
    2. 单击已迁移到VPC的实例ID。
    3. 在实例详情页,单击专有网络ID和虚拟交换机ID,获取专有网络ID、虚拟交换机ID和虚拟交换机的可用区信息。
      网络信息
      名称 示例
      专有网络ID vpc-wz9avqy2c3fw8w4******
      虚拟交换机 vsw-wz98loggfq88msu******
      虚拟交换机可用区信息 深圳 可用区B
  2. 获取经典网络RDS的网络信息。
    1. 登录RDS管理控制台
    2. 在左侧导航栏单击实例列表
    3. 在顶部菜单栏左上角处,选择地域。
    4. 单击目标RDS实例ID。
    5. 查看RDS实例的地域及可用区信息。
      rds地域及可用区
      • 如果可用区和上一步骤中虚拟交换机的可用区一致,则执行下一步。
      • 如果可用区和上一步骤中虚拟交换机的可用区不一致,则需要先创建同一可用区的虚拟交换机,再执行下一步。关于如何创建虚拟交换机,请参见使用交换机
      说明 本示例中,虚拟交换机和RDS都在华南1(深圳)可用区B,无需新建虚拟交换机。
  3. 在左侧导航栏单击数据库连接
  4. 单击切换专有网络
  5. 在弹出的对话框中,选择VPC和交换机,并保留经典网络地址。
    rds切换
    配置项 说明
    选择VPC 选择步骤1中查询的VPC ID(例如vpc-wz9avqy2c3fw8w4******)。
    选择虚拟交换机 选择同可用区的虚拟交换机ID(例如vsw-wz98loggfq88msu******)。
    说明 如果是新建的虚拟交换机,请选择新的虚拟交换机ID。
    保留原经典网络 选中保留原经典网络,并设置过期时间(例如120天以后)。
    说明 在经典网络地址到期前,请将经典网络的ECS迁移到VPC中,以实现业务平滑迁移到VPC。更多信息,请参见临时混访方案(同时保留经典网络和专有网络地址)
  6. 单击确定
    迁移完成后,您可以在左侧导航栏单击数据库连接。此时,RDS的网络类型已经变成专有网络,其中经典网络的内网连接串地址保持不变,VPC的内网连接串地址已变动。rds迁移结果

步骤三:检查迁移结果

完成网络迁移后,通过访问业务系统,检查业务系统是否正常运行。

  1. 通过浏览器访问Web应用。
  2. 查看Web应用是否能够正常访问。
    • 经典网络的ECS实例(ECS_A),能够正常访问。访问结果
    • VPC的ECS实例(ECS_B),不能访问。vpc访问结果

    如上图所示,留在经典网络的实例(ECS_A)的业务系统能够正常运行;迁移到VPC的ECS实例(ECS_B)的业务系统访问异常。

  3. 修改迁移到VPC的ECS实例(ECS_B)的配置信息。

    由于RDS实例中VPC的内网连接串地址变动,您需要修改ECS_B的配置信息,以保证ECS_B和RDS实例能够正常连接。根据业务系统不同,需要修改的方式不一样,具体操作请联系您业务系统的开发和运维人员。

    例如,在WordPress中,您需要在wp-config.php中修改数据库的连接地址,具体操作如下所示。

    1. 远程登录ECS实例(ECS_B)。具体操作,请参见通过密码认证登录Linux实例
    2. 运行以下命令,进入wp-config.php文件所在目录(例如路径为/var/www/html)。
      cd /var/www/html
    3. 使用vi编辑器编辑wp-config.php
      修改rds连接地址

      将上图原RDS内网连接串地址,替换为VPC中RDS的内网连接串地址。

  4. 重新检查ECS_B的Web应用是否能够正常访问。
    访问web

    如上图所示,修改ECS实例的配置文件后,业务系统能够正常运行。