硬气技术文!如何让阿里云连接企业自己的机房

时间:2024-02-21 22:34:11

文作者上海驻云 高级架构师 李俊涛

前言

    随着云计算技术和市场的全面成熟,越来越多的企业客户开始规划梳理自己的应用系统,如何把这些应用系统平滑迁移到阿里云等主流的公共云平台成为决策者们首要思考的问题。总体来讲企业系统的上云,主要包含下面几个步骤,系统评估,应用迁移,数据迁移,系统测试,数据割接,系统割接等,其中在系统评估阶段,网络规划是不可或缺的。

    如何规划阿里云上的网络结构,如何申请运营商专线连接自建IDC机房和阿里云VPC,如何做主备线路的高可用和故障切换。笔者参与实施了永旺商超,饿了么,华大基因等企业客户上云过程中的网络架构设计与实施,结合实际经验和大家一起分享如何解决这些网络问题。

阿里云VPC使用场景

    阿里云VPC(Virtual PrivateCloud)是软件定义网络的一种实现,与之相对于的是阿里云经典网络,在经典网络里创建一个ECS实例,该实例的公网IP地址和私网IP地址是系统分配的,不能变更;在VPC里面用户可以自定义网络地址段,设定机器的私网IP地址,通过虚拟交换机、虚拟路由器的方式搭建自己的云端局域网。使用VPC最主要的优势在于:

    1.安全性更高。经典网络对不同的租户间的网络隔离是三层隔离,而VPC网络对于不同VPC间的网络是二层隔离,相当于给用户划分VLAN的方式,因此从内网隔离角度更加彻底和安全。

    2.网络互通更方便。云上的VPC网络可以自定义云端的局域网,方便与用户线下IDC机房打通,以及云上不同地域的VPC之间的互通。

 

    公有云的主要服务商里面,AWS,Asure默认使用VPC,腾讯云,金山云等也都支持VPC网络;所以VPC在企业级客户上云过程中会成为默认网络选择。典型的使用场景如下图所示:

图1 企业VPC使用场景

    上图描述用户线下IDC机房与阿里云VPC打通的方式,可以通过租用运营商专线线路,也可以利用公网网络建立隧道VPN通道。如果是阿里云不同地域(Region)的VPC之间可以直接使用阿里云的“高速通道”产品来打通。

 

运营商专线接入阿里云

专线的使用场景如下图所示

图2 专线使用场景

   用户专线接入主要包含如下几个步骤:

一、统计当前企业自有网段,确定VPC IP和VPC ID

    为了防止在建设VPC混合云时产生IP地址冲突的情况,需要在建设VPC之前,做好对VPC的网络地址规划,即充分了解企业当前的已用和计划预留的所有IP地址网段,记录下来作为“用户自有机房IP段”并根据预计ECS的数量进行VPC网络的规划。

 

二、用户专线申请

    2.1 获取阿里云专线接入点信息

      用户选择一家基础电信运营商,申请从用户自有机房到用户在阿里云VPC地域的专线。阿里云专线的接入点位置,通过给阿里云官网开工单可以获得,工单中需要标明VPC ID。

    2.2 与运营商签订专线合同

      用户与选定的运营商签订合同,一般30个工作日内会完成专线实施。该过程更加运营商要求不一样,可能需要IDC机房主体单位和阿里云主体分别对专线接入申请签章。

    2.3 获取专线接口IP地址段

      用户的专线完成后,需指定专线两端接口的IP地址。分别是“专线用户端接口IP”和“专线阿里端接口IP”。并通过工单系统向阿里云官网反馈。

 

三、填写《专线接入信息表》,分别完成线下和云上的路由设置

    用户需完成《专线接入信息表》,阿里云后台工程师会按照表格内容完成用户自有网段IP地址回指,届时用户也需在自有专线交换机上将VPC IP段指向专线阿里端接口IP。

 

表1 专线接入信息表

    经过上述的专线接入流程,用户的IDC机房和阿里云VPC节点之间就通过专线连接起来了。从图2的专线示意图我们可以看到,为了保证专线线路的高可用,建议客户接入两条专线分别作为主线路和备用线路,当出现故障可以及时切换到备用线路,不影响系统可用性。但是,同时申请两条专用线路会大幅增加实施成本。所以在合适的场景里面,可以选择备用线路不使用专线,而是用建立Site to Site隧道VPN方式。

    有了这种隧道VPN实现方式,现在已经专线接入阿里云VPC,并且只有一条裸光纤的客户,可以在现有基础上,增加一条隧道VPN,实现线路的高可用。下面开始介绍阿里云隧道VPN的使用步骤。

 

使用FlexGW搭建隧道VPN

    隧道VPN在网络架构中被广泛使用,两端通过公网线路创建了一条加密隧道,所有的数据交换通过隧道完成。市场上主要的路由器和防火墙设备都支持隧道VPN,例如Cisco,Juniper,H3C, 山石网科,交大捷普等。相比专线接入,隧道VPN在可扩展性,投入成本,实施周期上都有很明显的优势,而在线路稳定性和安全性上,运营商专线会更加突出。

    阿里云VPC目前不支持把路由器或者防火墙等物理设备迁移至阿里云机房,在阿里云端做隧道VPN可以使用官方推荐的FlexGW工具。该工具支持Site to Site VPN,拨号VPN,TCP端口映射等功能。用户在Vswitch环境下使用FlexGW镜像开通一台ECS服务器作为阿里云端的网络设备和线下建立隧道VPN。

图4 FlexGW使用场景

    上图展示了FlexGW在阿里云VPC里面工作的场景,VPC2是一个“192.168.0.0/24”网段的Vswitch,在这个Vswitch下面有3台ECS服务器,其中“192.168.0.1”作为网关服务器,部署了FlexGW工具。“192.168.0.2”和“192.168.0.3”这两台服务器部署用户的应用系统。在VPC控制台申请一台弹性EIP并绑定到“192.168.0.1”这台服务器,在浏览器中输入“https://EIP”的URL地址就可以通过Web界面来设置VPN隧道的相关配置信息。

    和专线接入流程类似,隧道VPN的搭建主要包含如下几个步骤:

一、收集两端网络地址段信息

    与专线接入一样,在建立隧道VPN之前需要统计线下和阿里云端的网段地址信息,隧道IKE,ESP的协议,加密密钥等,如下表所示:

表2 隧道信息收集表

二、通过FlexGW界面配置隧道信息

    依据收集到的隧道信息,通过FlexGW的Web控制台操作做隧道云端的配置,如下图所示

图5 隧道配置

    隧道配置完成后,分别开启两端的隧道vpn服务,确认隧道状态,两端网络即可相互打通。

三、分别设置两端路由信息

    隧道建立起来后,两端子网里面的机器相互访问还需要做路由设置。以阿里云VPC为例,需要在VPC管理控制台设置路由的下一跳,添加路由规则,把“172.16.0.0/12”网段的下一跳指向“FlexGW的ECS实例ID”即可。同时添加相应的SNAT和DNAT的映射关系。线下和云端的网络完成打通,两端机器可以相互访问。

    这里补充说明一下,阿里云VPC目前已经支持HAVIP,利用HAVIP可以做FlexGW隧道本身的高可用。在VPC环境中准备两台FlexGW镜像的ECS,设置路由下一跳的时候,不是具体一台ECS的实例ID,而是HAVIP的地址。这样利用HAVIP功能和两台ECS之间的Keepalive机制保障,就可以在一台ECS挂掉的情况下,隧道直接切换到另外一台ECS上,并不影响隧道本身的使用。

    目前为止,专线和隧道VPN两种网络接入方式都已经完成。如何在两条通路上做线路的高可用,接下来详细展开。

主备线路切换与故障演练

    主备线路的切换过程,我们以客户实例为例来阐述。由于专线申请流程和周期比较长(30个工作日左右),客户用隧道VPN在生产系统中使用了一段时间。在运营商通知专线实施完成后,需要把主线路切换到专线线路上,同时模拟了线路故障导致的主备线路切换。总体来说完成下面三件事情:

    1.专线主线路的生效

    运营商专线接入到阿里云物理机房后,会通知用户接入完成。客户需要通过工单联系阿里云工程师,按照表1专线接入表的信息发布路由,并约定调试时间。添加路由后,可以在VPC控制台查看到路由信息如下:

图6 VPC路由信息详情

    该用户实例中,“10.172.0.0/25”是线下网段地址,“10.200.0.0/24”是阿里云端的网段地址。从图中可以看到,在VPC里面添加路由规则,线下网段“10.172.0.0/25“的下一跳到了一个VCON开头的设备地址,两端路由设置成功后,专线线路正常工作。

    从IDC网段的一台机器上可以PING通阿里云VPC里面一台ECS服务器,跟踪路由验证在到云端的第一跳地址是“10.172.0.130”,该地址正是专线接入申请表1中分配给云端的接入口地址。

图7 主线路路由跟踪情况

    1.模拟专线故障,切回隧道VPN备用线路

    在验证完专线主线路正常工作后,通过物理上拔下接口的方式模拟主线路的故障,发现原来的PING通路正常工作,并通过路由跟踪发现到云端后的下一掉地址变成了“10.200.0.1”,该地址是用作隧道VPN的ECS内网地址。得出结论主线路正常切换到了备用隧道VPN线路。

图8 备用线路路由跟踪情况

    1.模拟隧道故障,切回专线主线路

    确认主线路正常切换到备用线路后,最后一步验证备用线路故障,是否可以顺利切回到主线路。模拟方式是强制停掉阿里云ECS上的VPN服务。验证PING通路正常工作,并且通过路由跟踪云端ECS访问线下IDC机器的路由发现,下一跳的地址是“10.172.0.129”,该地址是表1中分配给线下IDC接口的地址。

图9 切换回主线路后路由跟踪情况

    经过上面三个步骤的演练,确认了主备线路的无缝切换达到预期,专线主线路和隧道VPN的高可用网络设计方案的可行性得到验证。

 

小结

    通过实际客户案例,本文阐述了专线和隧道VPN相互做主备线路的主要思路与步骤。为大量有混合云使用需求的客户提供了技术上的保障。混合云的使用也会成为未来企业级客户上云过程中的必经阶段。

    同时,结合对线路的高可用性要求和成本的综合考虑,企业级客户在实际网络结构设计中有很多选项,例如同时接入两根裸光纤为主备线路,裸光纤和MPLS专线为主备线路,也可以选择利用HAVIP和Keepalive机制保证隧道本身的高可用来达到目的。选择最合适的方式来满足企业的上云需求,保证网络线路的高可用,让客户的系统安全高效平稳的迁移到云端,我们为您提供最强的技术保障。