专有网络VPC(Virtual Private Cloud)正受到越来越多用户的欢迎,已经成为云上用户的首选网络类型,也是阿里云默认推荐的网络类型。然而,云上还有很多存量用户在使用经典网络,这些用户如何从经典网络迁移到VPC呢?本文将介绍相关的迁移方案。
方案概述
阿里云将提供三种迁移方案。这三个方案可以独立使用,也可以组合使用,以满足不同的迁移场景。
混挂和混访方案
混挂和混访方案是一种系统平滑迁移方案,即用户通过在VPC中新建ECS等云产品实例,然后将系统平滑迁移到VPC。当所有系统都迁移到VPC后,再将经典网络内的资源释放,从而完成经典网络到VPC的迁移。
在使用本方案时,请注意:
本方案可以满足绝大部分系统的迁移要求,但无法实现有经典网络ECS和专有网络ECS私网通信需求的系统的迁移。
本方案仅用于经典网络迁移到VPC。
混挂
负载均衡(SLB)混挂,即一个负载均衡实例可以同时挂载经典网络和VPC类型的ECS作为后端服务器来接收监听转发的请求,支持虚拟服务器组形式的混挂。
支持混挂的负载均衡实例类型如下:
公网负载均衡实例
私网负载均衡实例(包括经典网络和VPC)
注意:VPC私网负载均衡实例同时挂载经典网络和专有网络ECS时,如果使用四层(TCP和UDP协议)监听,目前无法在经典网络ECS上获取客户端的真实IP,但在专有网络ECS上还可以正常获取客户端的真实IP。对七层监听(HTTP和HTTPS协议)没有影响,可以正常获取客户端的真实IP
混访
云数据库RDS和对象存储OSS等云产品支持混访,即支持同时被经典网络和专有网络中的ECS访问。注意需要使用不同的访问域名,一个是经典网络私网访问域名,另外一个是专有网络访问域名。
云数据库RDS支持混访的操作指南,参考经典网络迁移VPC-RDS等支持混访说明。
对象存储OSS的专有网络访问域名,参考访问域名和数据中心。
ClassLink方案
ClassicLink方案可以将一台经典网络ECS链接到一个VPC,从而实现经典网络ECS直接通过私网访问VPC内的云资源(如ECS,RDS,SLB等)。
ClassicLink功能已经在华北2(北京)、华南1(深圳)、华东2(上海)、华东1(杭州)上线,其它地域近期会陆续上线。该功能当前处于灰度中,如有需要请联系您的客户经理
使用ClassicLink方案时,请注意:
经典网络ECS实例只能通过ClassicLink链接到同账户、同地域的一个VPC。
ClassicLink链接没有传递性,经典网络ECS实例不能通过链接的VPC的高速通道访问另外一个VPC的云服务。
ClassicLink的VPC默认支持172.16.0.0/12网段。如果VPC使用的是其它网段,需要注意以下两点:
如果要Link到的VPC的网段是10.0.0.0/8,那么和经典网络ECS通信的交换机的网段必须是10.111.0.0/16。
如果要Link到的VPC的网段是192.168.0.0/16,那么需要在经典网络ECS中增加到192.168.0.0/16网段的路由。
已Link到VPC的经典网络ECS可以访问VPC内的所有资源,但VPC中的ECS只能访问已Link的经典网络ECS,不能访问未Link的经典网络ECS,也不能访问经典网络内的其它云产品。
宕机迁移、热迁移、过保迁移、停止、启动、重启、更换系统盘等操作,已建立的ClassicLink链接将保持不变。
单ECS迁移方案
单ECS迁移方案,即经典网络ECS通过本方案直接迁移到专有网络中(需重启ECS)。无需通过创建镜像、重新购买等步骤就能把实例迁移到专有网络。
1. 预约迁移
需要在ECS控制台的待办任务中选择预约实例迁移。默认情况下,符合迁移条件的实例会显示在预约窗口列表中。
2. 正式迁移注意:当前预约迁移必须先通过客户经理申请,请将需要迁移的实例列表提供给客户经理。待阿里云处理后,您方可通过控制台进行预约迁移。
完成预约后,本迁移工具将在预约时间点开始迁移。迁移完成后,您将收到迁移成功的短信消息提醒。
在使用单ECS迁移方案时,请注意:
暂不支持经典网络系列I类型实例进行迁移。
迁移过程中实例需要进行重启,请关注对系统的影响。
使用此迁移方案,ECS的公网地址和私网地址都会变化。
迁移的目标交换机的可用区必须和要迁移的ECS实例的可用区相同。
迁移过程中实例ID及登录信息不变。
包年包月购买方式的实例迁移过程中不需要额外付费。从新的计费周期开始,按照同规格专有网络的价格计算。
迁移前如有续费变配未生效订单或未支付订单,迁移后该订单将被取消且不能恢复,请您重新下单。
各迁移方案使用示例
混挂和混访方案迁移示例
迁移提醒
在正式迁移之前,请务必先了解专有网络和相关网络产品。专有网络和经典网络存在很大的不同,除了安全隔离外,专有网络让用户在云上具备了网络管理能力,但这些管理需要用户使用相关的网络产品实现。
注意:以下示例仅供参考,很多系统都比下面的迁移示例复杂很多。在迁移前需要仔细评估,梳理清楚系统依赖,制定严谨的迁移方案。
待迁移系统说明
待迁移的经典网络系统如下图所示,该系统使用了SLB、ECS、RDS、OSS四个产品。公网SLB实例有两台ECS作为后端服务器,ECS上的程序会访问RDS和OSS。现在要将这个系统迁移到VPC中。
步骤一 准备网络环境
首先,需要准备网络环境。创建专有网络和交换机,确定要迁移的专有网络和交换机的相关信息。
关于VPC的网络规划,参考网络规划。
步骤二 在专有网络中创建ECS并完成配置
如下图所示,在VPC中新建两台ECS,并在ECS上部署程序。注意将RDS和OSS的访问域名修改为专有网络的访问域名。配置完成后,需要仔细验证测试是否可以正常访问OSS和RDS。
前提条件
准备好RDS和OSS的专有网络访问域名。
RDS可以通过Open API/SDK将经典网络切换到VPC,切换时可以保留经典网络访问域名。切换后,RDS同时拥有了VPC和经典网络的访问域名。
RDS控制台的网络类型切换功能目前无法保留经典网络访问域名。
RDS网络类型切换,参考经典网络迁移VPC-RDS等支持混访说明。
参考访问域名和数据中心获取OSS的专有网络访问域名。
步骤三 将专有网络中的ECS添加到公网SLB实例
如下图所示,将在VPC中新建的ECS添加到公网SLB实例中。添加后,注意观察SLB实例中新加入的ECS的健康检查状态。可以将新加入的专有网络ECS的权重设置小一些,这样可以在健康检查状态正常但是有其它异常时,减少对系统的影响。同时,仔细观察系统状态、流量监控、日志等。
步骤四 将经典网络ECS从公网SLB实例中移除
如下图所示,当系统运行正常后,将经典网络ECS从公网SLB实例中移除。可以先将经典网络ECS的权重设置为0,待经典网络ECS上无请求流量时再移除。
步骤五 将RDS和OSS切换到专有网络中
如下图所示,将RDS和OSS切换到专有网络中。
RDS可以通过控制台完成网络类型切换,切换后RDS的经典网络访问域名就删除了;也可以通过Open API/SDK进行切换,同时保留经典网络和VPC的访问域名。OSS本身提供经典网络和VPC两个域名,不需要切换。
步骤六 释放经典网络ECS
如下图所示,系统运行一段时间无异常后,将经典网络ECS释放。因为公网SLB实例本身支持挂载专有网络ECS,不再需要迁移。因此,到这里整个迁移工作就完成了。
一个稍微复杂系统的迁移
考虑如下图所示的相对复杂点的系统迁移。公网SLB实例挂载了两台ECS,分别为ECS_1和ECS_2,这两台ECS需要访问一个私网SLB实例。私网SLB实例也挂载了两台ECS,分别为ECS_3和ECS_4,这两台ECS需要访问RDS和OSS。
在这个系统中,由于SLB只支持混挂,不支持混访。如果按上面的步骤先将公网SLB实例中的后端ECS,ECS_1和ECS_2迁移到VPC,会遇到VPC内的ECS无法访问经典网络中的私网SLB实例的问题。因此,不能这么迁移,而需要先迁移私网SLB实例及其后端ECS。基本步骤如下:
- 1. VPC内新建两台ECS,用于迁移私网SLB实例挂载的经典网络ECS_3和ECS_4。
- 2. 配置VPC内新建的这两台ECS,使用RDS和OSS的专有网络访问域名。
- 3. 在VPC内新建一个私网SLB实例,用于代替经典网络的私网SLB实例。
- 4. 配置VPC内的私网SLB实例,添加步骤一中新建的两台ECS作为后端服务器。
- 5. 在VPC内再新建两台ECS,用于迁移公网SLB实例的经典网络ECS_1和ECS_2。
- 6. 配置这两台新建的ECS。特别注意,此时需要将访问经典网络中的私网SLB的地址替换为VPC的私网SLB地址。
- 7. 接下来的过程就和上面的示例差不多一样了。
ClassLink方案使用示例
基本步骤
- 1. 在VPC控制台针对需要的VPC启用ClassicLink功能。
- 2. 在ECS控制台将经典网络ECS Link到VPC。
- 3. 安全组授权。
步骤一 VPC开启ClassicLink功能
- 1. 登录VPC管理控制台。
- 2. 在左侧导航栏,单击专有网络。
- 3. 单击专有网络的ID链接,进入详情页面。
- 4. 单击开启ClassicLink。
5. 在弹出的对话框中,单击确定开启该功能。
步骤二 将ECS实例链接到VPC
- 1. 登录ECS管理控制台。
- 2. 在左侧导航栏,单击实例。
- 3. 找到目标实例,单击更多 > 连接专有网络。
- 注意:确保ECS实例的地域和VPC的地域相同。
4. 在弹出的对话框中,选择一个专有网络,然后单击确定。
步骤三 安全组授权
最后,您需要添加相应的安全组规则:
如果经典网络ECS要访问专有网络的ECS,需要在专有网络的ECS的安全组内添加一条内网入方向允许Classic ECS的地址段访问的安全组规则。
如果专有网络内的ECS要访问经典网络的ECS,则同样需要在经典网络ECS的安全组内添加一条内网入方向允许专有网络ECS的地址段访问的安全组规则。
下面以经典网络ECS访问链接的VPC为例,示范如何添加安全组规则。
- 1. 登录ECS管理控制台。
- 2. 在左侧导航栏,单击实例。
- 3. 找到需要授权的专有网络ECS实例,单击实例ID链接进入实例详情页面。
- 4. 在左侧导航栏,单击本实例安全组。
- 5. 单击配置规则,然后添加如下一条安全组规则。
注意:当前ClassicLink的安全组授权暂时只支持地址段授权,后续会支持安全组授权。
步骤四 验证测试
在已经Link到VPC的经典网络ECS上通过ping等方式测试私网通信是否正常。
其他操作
您可以在ECS控制台查看经典网络ECS到VPC的连接状态,也可以取消经典网络ECS到VPC的链接。对于没有任何链接的VPC,您可以在VPC控制台关闭ClassicLink功能。
单ECS迁移方案使用示例
基本步骤
- 1. 预约迁移
- 2. 正式迁移
- 3. 查看迁移结果
步骤一 预约迁移
在预约迁移时,请注意:
当前预约迁移必须通过客户经理申请。请将需要迁移的实例列表提供给客户经理,待阿里云处理后,方可通过控制台进行预约迁移。
本迁移会重启ECS并更换ECS的公网和私网IP,请严谨评估对系统的影响并做好相应预案。
具体预约步骤如下:
- 1. 登录ECS管理控制台。
- 2. 在右上方的常用操作区域,单击待处理事件。
- 3. 在待处理事件页面,单击专有网络迁移页签。
- 4. 选择需要迁移的实例,然后单击预约迁移。
5. 在弹出的对话框中,选择要迁移到的专有网络、交换机、迁移时间等配置,然后单击确定。
6. 在左侧导航栏,单击全部事件,查看事件状态
步骤二 正式迁移
完成预约后,本迁移工具将在预约时间点开始迁移。
步骤四 查看迁移结果
您可以通过多种方式查看迁移结果:
在事件中查看事件状态。如果事件状态为执行完成表明已经成功迁移,如下图所示。
查看是否收到迁移成功的短信提醒。
登录到ECS管理控制台,在实例详情页面,查看实例的“网络类型”是否为“专有网络”。
常见问题
Q:SLB混挂开放了哪些地域?
国内地域都已经完成开放。
Q:ClassicLink方案开放了哪些地域?
目前开放了华北2(北京)、华南1(深圳)、华东2(上海)、华东1(杭州)地域,其它地域陆续开放中。
Q:RDS混访如何操作?哪些数据库类产品支持混访?
Q:OSS如何获得VPC访问域名?
Q:除了RDS以及OSS支持混访外,还有哪些产品支持?
RDS数据库之外的实例型云产品目前都还不支持混访。
OSS等非实例型云产品,且可以通过两个域名分别提供VPC和经典网络访问入口的,不需要额外再开发,本身就支持混访了。
Q:单ECS迁移什么时候能支持不变公网IP?
由于该功能比较复杂,当前还在研发中,暂时还没有精确的时间。