源自Azure的Azure stack作为一款业界唯一的和领先的公有云平台一致的混合云平台,能够帮助企业客户从自有数据中心交付Azure云服务。它作为微软混合云战略中的重头戏,官方宣称其将在今年年中GA了。上海仪电集团高度重视这一产品,同时成立了一个专门的团队来跟踪最新的Azure Stack技术动态并积极推动Azure Stack在中国落地。在今后一段时间内容,我们将在过去一年间追踪Azure Stack的技术内容汇总为Azure Stack技术深入浅出系列文章分享给对微软混合云产品感兴趣的相关人员。
本篇文章作为Azure Stack技术深入浅出系列的第一篇,将描述我们目前在构建基于Azure Stack混合云业务解决方案方面所面临的网络连通困难,以及相关技术人员为解决这一问题所做出的努力及技术探索。
1. ExpressRouter与Site2Site VPN
1.1微软ExpressRoute服务和Site2Site VPN服务介绍
Express Route(ER):Azure ExpressRoute可让你通过连接服务提供商(这里是上海电信)扩展到 Azure 云。使用 ER 可与Azure云服务建立连接。ER 连接不通过公共Internet 。与通过 Internet 的典型连接相比,ExpressRoute连接提供更高的可靠性、更快的速度、更低的延迟和更高的安全性。
详细的ER的介绍可以参考 微软官网文档 https:// www.azure.cn/documentation/services/expressroute/
S2S VPN:是一种站点到站点通过VPN技术互联的azure 服务。详细介绍可以参考 微软官网文档](https:// www.azure.cn/documentation/articles/ vpn-gateway-howto-site-to-site-resource-manager-portal/
也可参考前面写过一篇 关于ER的博文
1.2 ER+S2S VPN配置设计
1.2.1 站点到站点VPN做为ExpressRoute的故障转移路径
可以将站点到站点 VPN 连接配置为 ExpressRoute 的备份。这仅适用于链接到 Azure 专用对等路径的虚拟网络。对于可通过 Azure 公共线路访问的服务,没有基于 VPN 的故障转移解决方案。ExpressRoute 线路始终是主链接。仅当 ExpressRoute 线路失败时,数据才会流经站点到站点 VPN 路径,参见下图。
1.2.2 站点到站点VPN作为ExpressRoute的补充
可以对网络进行配置,使得部分站点通过站点到站点 VPN 直接连接到 Azure,部分站点通过 ExpressRoute 进行连接。参见下图。
1.3 ER+S2S VPN混合云连通实验
公司的ER+S2S VPN混合云实验环境打通了公司的Azure公有云订阅和位于紫竹微软的私有云环境,详细的架构图及网络规划如下图。(这里非常感谢微软ER团队的支持)
Azure公有云和私有云环境通过ExpressRoute和站点到站点 VPN方式连通,这种连通方式可以将站点到站点 VPN 配置为 ExressRoute 的安全故障转移路径,实现高可用。或者使用站点到站点 VPN 连接到不是通过 ExpressRoute 进行连接的站点,承载一些对网络延时不敏感的流量。
2. 混合云实验环境网络拓扑
2.1 ExpressRoute架构
Azure ExpressRoute 可让你通过连接服务提供商所提供的专用连接,将本地网络扩展到 Azure 云。使用 ExpressRoute 可与 Azure云服务建立连接。
ExpressRoute 连接不通过公共 Internet 。与通过 Internet 的典型连接相比,ExpressRoute 连接提供更高的可靠性、更快的速度、更低的延迟和更高的安全性。ExpressRoute的架构参见下图。
ExpressRoute的优势如下:
- 通过连接服务提供商在本地网络与 Azure 云之间建立第 3 层连接。可以通过点到点以太网,或通过以太网交换经由虚拟交叉连接来建立这种连接。
- 跨地缘政治区域中的所有区域连接到 Azure 云服务。
- 通过 ExpressRoute 高级版附加组件从全球连接到所有区域的 Azure 服务。
- 通过行业标准协议 (BGP) 在你的网络与 Azure 之间进行动态路由。
- 在每个对等位置提供内置冗余以提高可靠性。
- 连接运行时间 SLA https://www.azure.cn/support/legal/sla/。
2.2 混合云实验环境网络拓扑
测试用混合云环境依托上海电信的两条点到点物理线路,将位于南汇的Azure公有云数据中心和位于紫竹的微软lab环境做二层打通。在两条物理线路上运行Azure ExpressRoute服务,实现公有云和私有云的连通。详细的网络拓扑图如下。
3. ExpressRoute费用
ExpressRoute费用分为两部分,电信运营商的费用和Azure ExpressRoute服务的费用。
3.1 电信运营商的费用
这一块方案都是开两条线路,两台交换机分别做接入,带宽为两条线路的带宽之和,这样两条线路相互做备份,实现高可用。
详细价格可以咨询上海电信ER业务专员。
3.2 Azure ExpressRoute的服务费用
服务费用分为两种计费方式,按照带宽计费和按照流量计费(流量只计算从公有云下载数据的流量,建议如果下载量不大的情况下,采用按流量计费的方式)。
详细Azure ExpressRoute服务的计费细节参见azure 官网的价格表:https:// www.azure.cn/pricing/details/expressroute/
4. ExpressRoute的配置方法
下面的步骤说明了预配端到端 ExpressRoute 线路所要执行的任务。
- 使用 PowerShell 配置 ExpressRoute 线路。详见Powershell脚本“ER-Webinar-Script”。
- 从服务提供商订购连接(中国电信)。此过程根据情况而有所不同。有关如何订购连接的详细信息,请联系你的连接服务提供商。
- 通过 PowerShell 验证 ExpressRoute 线路预配状态,以确保线路预配成功。详见Powershell脚本“ER-Webinar-Script”。
- 配置路由域。连接服务提供商管理第 3 层,他们将为你的线路配置路由。
- 启用 Azure 专用对等互连 - 只有启用此对等互连才能连接到部署在虚拟网络中的 VM/云服务。
- 启用 Azure 公共对等互连 - 如果你想要连接到托管在公共 IP 地址上的 Azure 服务,则必须启用 Azure 公共对等互连。如果你已选择为 Azure 专用对等互连启用默认路由并想要访问 Azure 资源,则必须执行上述操作。
- 将虚拟网络链接到 ExpressRoute 线路 - 可以将虚拟网络链接到 ExpressRoute 线路。请按照说明 将 VNet 链接(https:// www.azure.cn/documentation/articles/ expressroute-howto-linkvnet-arm/)到你的线路。这些 VNet 可以位于 ExpressRoute 线路所在的同一 Azure 订阅中,也可以位于不同的订阅中。
详细的配置请参见ExpressRoute的Powershell脚本“ER-Webinar-Script”。
详细的配置方法详见 官网文档 https:// www.azure.cn/documentation/articles/ expressroute-howto-coexist-classic/.
5. ExpressRoute测试结果
5.1 网络延迟测试
- 下图是从本机(研究院内网的一台PC)ping到研究院内网的wiki服务器,看图延时基本在10ms以内,有一定的抖动。
2.下图是从本机(研究院内网的一台PC)ping到宜山机房的一台服务器,研究院内网和宜山路机房通过一条100M的专线相连接,看图延时基本在10-30ms左右,抖动较大。
3.下图是从本机(公司内网的一台PC)ping到宝山机房的一台服务器的外网地址,公司内网和宝山机房只能通过外网(WAN)访问,看图延时基本在10-30ms左右,抖动较大。图2是从本机(公司内网的一台PC)ping到百度服务器,延时基本在30ms左右。
4.最后是从我们Azure共有云的一台电脑到微软私有云环境的网关地址,两者通过Azure的ExpressRoute相连,可以发现每个包的反馈时间非常稳定在4ms左右,通过对比,通过Azure ExpressRoute的混合云方案基本和纯内网环境的网络延时相当。
实验结论:通过Azure ExpressRoute相连的网络延时非常小,网络抖动也很小,网络的QOS做的非常好,甚至优于我们研究院的内网环境。
5.2 网络带宽测试
Azure公有云账号 |
→ |
微软测试机器 |
外网地址:42.159.*.136 |
→ |
外网地址:183.195.*.76 |
内网地址:10.0.1.7 |
→ |
内网地址:192.168.12.10 |
从Azure共有云账户里的虚机里通过ftp传文件到微软测试机器中的传输速度如下:
被测文件 |
时间 |
205.16MB |
2分钟46秒(1.23MB/s) |
205.16MB |
2分钟46秒(1.23MB/s) |
205.16MB |
2分钟46秒(1.23MB/s) |
205.16MB |
2分钟47秒(1.23MB/s) |
205.16MB |
2分钟52秒(1.2MB/s) |
1.2GB |
16分钟39秒(1.23MB/s) |
从微软测试机器里通过ftp传文件到Azure共有云账户里的虚机中的传输速度如下
被测文件 |
时间 |
205.16MB |
2分钟46秒(1.23MB/s) |
205.16MB |
2分钟52秒(1.2MB/s) |
205.16MB |
2分钟47秒(1.23MB/s) |
205.16MB |
2分钟47秒(1.23MB/s) |
205.16MB |
2分钟52秒(1.2MB/s) |
1.2GB |
16分钟46秒(1.22MB/s) |
对比S2S VPN传输速度:
被测文件 |
时间 |
205.16MB |
2分钟9秒(1.59MB/s) |
205.16MB |
2分钟16秒(1.51MB/s) |
205.16MB |
2分钟13秒(1.54MB/s) |
205.16MB |
2分钟10秒(1.58MB/s) |
205.16MB |
5分钟14秒(0.65MB/s) |
205.16MB |
2分钟7秒(1.62MB/s) |
1.96GB |
37分50秒(903.6KB/S) |
1.2GB |
13分钟9秒(1.56MB/s) |
测试结论:
- ER的物理线路的带宽为10M,测试下来FTP传输数据的速度基本在1.2M/s这个级别,带宽稳定有保障,而S2S VPN更多的需要看当前网络环境的情况,在测试过程中还出现了多次FTP传输断掉。
- 通过实验我们发现ER线路的带宽决定于物理线路的带宽,由于是专线,网络带宽稳定,延时也非常小。而S2SVPN的方案更多的取决于当前网路状况,由于路由到公网,导致网络带宽、延时没有办法保证。
- 结合两种连通方案的特点,将站点到站点VPN做为ExpressRoute的故障转移路径是一个非常好的配置方案。
6. 小结与建议
- 很快,Azure Stack就要发布,相信届时会有很多的Azure Stack的使用者需要一个可靠的联通方案来支撑他们的混合云业务。从上文中的对比测试中可以发现,ExpressRoute作为一种保证网络带宽和运行时间的可靠联通方式,能很好的保证您本地数据中心和Azure公有云的访问和数据传输。同时,Azure 和 Azure Stack提供和各种各样的VPN接入方式,如上文中提到的site2site VPN可以实现数据中心和Azure云平台的网络连接,point2site VPN可以解决移动办公人员的网络接入问题,vnet2vnet可以实现混合云数据中心内的虚拟网络的网络联通。
- 通过ER这种可靠的网络联通方式和多种多样的VPN接入方式,来构建一个灵活可靠的混合云环境,快速灵活高效的实现我们的业务场景。
- 如果你对Azure Stack 深入浅出系列文章感兴趣,请及时关注我们的相关后续文章。在下篇文章中,Azure Stack产品经理将跟你分享Azure Stack在私有云领域将如何体现竞争力,适合什么样的业务场景,尤其将会在功能和业务方向上与国内火热的OpenStack系做一个深入的比较,敬请期待。
|