本文地址:http://www.cnblogs.com/taosha/p/6528730.html
在云计算的大时代,大型客户都有业务全球拓展的需求,考虑到成本,时间因素,一般都是选择云计算,现在云计算提供商有很多,客户在采取多云方案时,最头疼的就是国外和国内数据中心访问的时延与稳定性问题。最近就碰到一个案例,客户国内用了阿里云,现在考虑业务出海,将业务扩展到东南亚去(走出国门赚钱都是应该赞一下的),客户很担心海外公有云中心和国内阿里云的连接速度问题。本着为客户负责的态度,赶紧找了超给力的小伙伴浙大网新和线路供应商一起来做个测试,耳听为虚,眼见为实。
测试的拓扑如下图:
具体的步骤是:
- 在Azure门户(ARM Portal)中设置专线(Azure中英文术语叫Express Route),将线路密钥给到线路运营商;
- 运营商得到密钥后开通专线物理线路;
- 双方设置私有对等参数,开通路由连接;
- 在Azure创建VNET和VNET 网关,将Vnet关联到专线上;
- 在阿里云上创建虚机并建立Tunnel;
- 最终测试与结果
第一步,配置EXPRESSROUTE:
New portal下导航至ExpressRoute线路配置页面:
在线路选择中,发现海外Azure的线路供应商好多好多,
我赶紧回国内看一眼:
真清爽,有且只有一个选择,不用为选择而困惑了,资本主义太笨了,这么赚钱的生意让这么多家做还怎么赚钱啊,这是是题外话,感慨完我们继续。
完成后截图如下:
创建完成后,提供程序状态为未设置。将服务密钥提供给线路服务商,等待线路服务商开通线路。开通线路后,程序提供状态会自动变成已设置。
未开通前对等配置界面Azure 私有显示为已禁用,点击进去会看到全灰色,不可配置.
第二步,线路提供商开通线路
第三步,设置Azure私有对等的参数,
等待提供程序状态变为已设置后,可配置私有对等网络。
参数说明:
对等 ASN:
Microsoft Azure 使用 AS 12076 进行 Azure 公共和Azure 专用,保留了 AS 65515-65520 供内部使用。此处和线路提供商商定ASN 设为18084;
主要子网 & 辅助子网:
Azure 专用对等互连的 IP 地址:
可以使用专用 IP 地址或公共 IP 地址来配置对等互连。用于配置路由的地址范围不得与用于在 Azure 中创建虚拟网络或您的本地网络的地址范围重叠。
第一个 /30 子网用于主链路,第二个 /30 子网用于辅助链路。
对于每个 /30 子网,在路由器上使用 /30 子网的第一个 IP 地址。Microsoft 使用 /30 子网的第二个 IP 地址来设置 BGP 会话。
只有设置了两个 BGP 会话,Azure的可用性 SLA才有效。
专用对等互连示例:
如果你选择使用 a.b.c.d/29 来设置对等互连,它将拆分成两个 /30 子网。在以下示例中,我们可以了解 a.b.c.d/29 子网的用法。
a.b.c.d/29 拆分成 a.b.c.d/30 和 a.b.c.d+4/30 并通过预配 API 一路传递到 Windows Azure。使用 a.b.c.d+1 作为主要 PE 的 VRF IP,而 Windows Azure 将使用 a.b.c.d+2 作为主要 MSEE 的 VRF IP。使用 a.b.c.d+5 作为辅助 PE 的 VRF IP,而 Windows Azure 将使用 a.b.c.d+6 作为辅助 MSEE 的 VRF IP。
本例中,使用198.19.127.48/30和198.19.127.52/30 来设置专用对等互连。那么198.19.127.48将分配给 link1(线路提供商使用 198.19.127.49,而 Windows Azure 使用198.19.127.50)。
备份线路使用198.19.127.52/30 ,线路提供商使用 198.19.127.53,Windows Azure 使用 198.19.127.54)。
VLAN ID:
VLAN ID是客户自定义的intExpressRoutenal VLAN(C-tag)。不同的客户可以使用相同的VLAN ID(C-tag),对于IXP来说,会有一个唯一的S-tag进行标记,不需要客户配置网络底层的S-tag。可以使用1至4094之间的数字配置VLAN ID:
Azure 私有(专用对等互连):
可以通过专用对等域来连接虚拟网络内部署的 Azure 计算服务(即虚拟机 (IaaS) 和云服务 (PaaS))。专用对等域被视为进入 Microsoft Azure 的核心网络的受信任扩展。可以在核心网络和 Azure 虚拟网络 (VNet) 之间设置双向连接。这样,你便可以使用专用 IP 地址直接连接到虚拟机和云服务。可以将多个虚拟网络连接到专用对等域。
Azure公用(公共对等互连):
Azure 存储空间、SQL 数据库和 Web 应用等服务是使用公共 IP 地址提供的。你可以通过公共对等路由域私下连接到公共 IP 地址(包括云服务的 VIP)上托管的服务。可以将公共对等域连接到外围网络,并从 WAN 连接到公共 IP 地址上的所有 Azure 服务,而无需通过 IntExpressRoutenet 连接。启用公共对等互连后,您将能够连接到所有 Azure 服务。
第四步,新建VNET和网关,并将其关联至专线
New portal下导航到"虚拟网络"页面,点击"添加",新建虚拟网络Vnet,定义Azure虚拟网络的名称、地址空间(不要和对端网络的虚拟网络地址空间重叠)、子网名称及子网地址范围(不要和地址空间相同,需要保留一部分留给后续的虚拟网络网关子网使用)等设置。
创建成功后,截图如下:
添加网关子网:
新建虚拟网络网关:
New portal下导航至"虚拟网络网关"页面,点击"添加",为刚刚创建的VNET创建网关:
为VNET新建网关,点击OK和Create:
网关创建好后,截图如下:
创建VNET到EXPRESSROUTE线路的Link:
New portal连接页面,点击"添加":
新建new portal下VNET到EXPRESSROUTE线路的连接:
点击"确定":
创建成功后如图示:
第五步,配置阿里云到线路运营商的Tunnel及路由配置
阿里的机房在杭州,线路运营商的POP点在上海,本次配置阿里云到线路运营商的连接,过程如下:
在阿里云的linux虚机上配置Tunnel:
sudo ip tunnel add gre1 mode gre remote 180.169.21.133 local 118.178.231.70 ttl 255
sudo ip link set gre1 up
sudo ip addr add 198.19.122.86/30 dev gre1
然后在阿里云虚拟机上添加如下路由:
route add -net 10.0.0.0 netmask 255.255.255.0 gw 198.19.122.85
第六步,测试
从测试结果看网络连接是比较稳定的,ping时延保持在90ms以下,考虑到是从新加坡到国内阿里机房,跨越Great Wall,最后一段还是走的VPN,这个结果还是非常理想的。
另外本次测试使用的是1M专线,使用iperf测试,tcp带宽也保持在1Mbits /sec,效果非常好。
使用ping命令进行稳定性时延测试结果:
阿里云上的centos虚拟机默认已经安装好iperf,Azure上虚拟机需要安装iperf。
首先运行yum install epel-release安装Fedora 社区提供的第三方源。
然后运行yum install iperf即可安装iperf工具。
最后总结:
通过专线+VPN方式连通了新加坡微软Azure机房和中国国内的阿里云机房,时延在80-90ms,带宽稳定,非常满意,很多想出海的客户选择海外Azure有多了一个理由,提供了国内外多云架构的新思路,为了避免打广告嫌疑,就不说线路供应商名称了,有兴趣的话可以发邮件saltosha#microsoft.com。