辰宿:VPC网络中省钱的秘密
今天和大家分享云计算平台上网络方面一些可优化成本的秘密,以及在云计算平台上真正使用这些产品时的省钱小技巧。
假设大家是创业公司的CTO,第一天需要把企业的网络组建起来,需要做什么事情呢?第一件事情就是要去买网络设备,包括交换机、路由器、网关和网闸等等。也许很多同学对于在物理世界中组建网络已经非常熟悉了,但因为有一些同学不太熟悉,所以简单分享一下,这里的路由器和家庭使用的路由器完全不是一个概念,它是数据中心级的路由器,这种路由器最便宜的也需要上千元,当网络规模大的时候这项费用达到五位数或者六位数也很常见。所以在这里需要投入很多资金,当购买完设备以后,需要租用机房的机架,通过网线将它们链接起来和服务器一起组成整个应用的部署环境。当部署完网络环境以后会发现其中一部分是面向互联网提供服务的,所以自然需要购买公网带宽。其实在物理世界里真正需要的不只是一根线,有可能很多根。这是因为在中国的互联网里,联通的用户访问电信的机房会很慢,同样电信用户访问联通机房也会很慢,所以当需要对不同运营商的用户提供服务的时候需要多根不同服务商的宽带。
随着业务发展可能会遇到很多问题,比如所租用的机房的机架位置不够了,但是业务的飞速增长,必须要租用新的机架,只好另找机房。也有可能是随着业务价值越来越大,需要考虑高可用和多中心部署这些问题,于是又租用了其他机房的机架。这个时候往往需要专线连接来满足高性能的内部调用或者高速的数据传输与同步,所以这部分也需要投入大量资金。而在实际情况下第三方的IDC专线费用会相当高。
随着业务规模进一步扩大,就出现了所谓的“两地三中心”的情况。当业务价值进一步提高,可能需要考虑远距离多地域的多中心部署,这时候需要专用的线路去保证整个企业应用的网络互通性。而所谓的长距离传输专线的价值就不是一般昂贵了。
其实整体看来可以将传统物理世界里的组网成本分成这样几块:数据中心成本,公网带宽成本也就是南北向组网成本,还有就是IDC也就是自己的部署环境里的组网称为东西向的组网成本。
而在这样的组网成本面前可以总结几句话就是:设备贵,带宽费,拉根专线,财务眼里都是泪。
而到了云计算平台上要做刚才那些事情有什么不同呢?首先需要创建VPC。很多云计算用户还不知道VPC是什么,简单而言,VPC就是在云计算平台上使用免费的路由器和交换机组建的可自定义网段的私网环境。在VPC里面可以添加用户的服务器和数据库。在云计算平台上IDC和虚拟设备等成本基本为零,仅仅针对某些需要带有特性或增值的虚拟网络设备的高级用户会收取一些费用,除此之外都是免费的。如果大家还没有用过VPC可以直接去阿里云官网上创建试试,阿里云VPC不仅一分钱都不要,还可以自定义很多功能,这使得使用VPC与用户在线下自己组建网络基本没有差别。
当然在这种途径下用户也需要购买公网带宽,但是云计算厂商提供的公网带宽和用户在线下直接找供应商购买的公网带宽有很大差别。所以具体哪个省钱,其中又有哪些技巧后面将详细分享。
接下来的一部分内容对应同城专线来搞定多中心部署。阿里云上推出的一款产品叫做高速通道,用户在控制台上或者通过API调用仅花费一两分钟时间做几个简单操作所得到的效果就相当于在物理世界里花费一两个月通过运营商在两个机房之间搭建一根专线的效果。所以这是很方便的,而其中的费用也可以通过对比来看一下优劣。
也许企业在拥抱云计算之前并不想把之前机房里面的服务器当做废铁扔掉,而是想拥有混合云的架构,把线下机房的服务器和云端的服务器结合在一起。但是除了阿里云以外几乎所有的云计算平台都没有提供远距离的VPC互通,因为这中间有很多技术门槛。大家可以直观地感受到阿里云在虚拟网络技术方面在业界的水平,阿里云支持远距离的VPC互通,自然也可以通过远距离接入来支持混合云架构。
之后的专线接入其实还是需要找运营商把自己的IDC和阿里云的数据中心接入点连接起来。这件事情依然是很烦恼和痛苦的,所以阿里云在专线接入方面推出了基于合作伙伴的方式:如果用户租用的机房是阿里云合作运营商的,就可以复用一根已经和阿里云连接好的线路,这样时间大大缩短了,成本也将大大降低。
之前讲了很多是为了让大家了解在物理世界里面将整个企业的网络架构组建起来需要哪些步骤,对应地在云计算平台上实现这些步骤有哪些成本优势。
接下来具体看看VPC的成本优势,先说数据中心的成本,主要是网络设备的成本。这张图表达意思很明确,红色部分是在云上的成本,这项成本基本上没有,因为在云计算平台上用到的路由器和交换机是免费的,只有用到一些带有超大规模能力网关或者增值服务的SLB实例的时候才会需要付费,而这个价格与传统世界中购买相应能力的设备的投入相比而言是很少的。
提到云计算这项技术对于成本的优化不得不提动态成本。假设图中蓝线是实际业务需求,有时增长快有时增长慢,也可能某段时间比较平稳;红线是在物理世界用传统的方式组建网络来满足业务需求的成本曲线。这条曲线有几个非常明显的阶跃,假想一下数据中心里面有价值8千元的核心交换机来支持核心业务,但是随着业务增长这个交换机无法满足业务需求,而市面上下一个规格的交换机可能就是2万或3万的,即使有9千或者1万的一般也不会选,因为我们不希望投入1万元使用两个月又需要升级,所以此时就会选择将路由器升级为2万的,几个月后又将升级为5万的。
而这几次升级中间有非常长的时间内硬件能力是浪费的。而在云计算平台上用户所花的钱都是与用户实际需要的资源成正比的,换句话说,云计算让用户的IT架构从面向预算变成了面向实际需求,使用户几乎是按使用付费。这就是为什么提到云计算对成本优化不得不提的动态成本优化。
对于公网带宽部分,我们先了解一下传统IDC世界和在云计算平台上购买公网带宽的区别,之后分享一些具有实战意义的省钱的技巧。
首先我们没有直接比较在运营商那里购买带宽和在云平台上购买带宽的价格,这是因为这两种方式的计费技术是不同的。在传统IDC世界中经常需要接一根联通的线再接一根电信的线,而在阿里云却不需要。云计算平台提供的公网带宽一般叫做BGP带宽,这是一个网络动态路由协议的名字,大家可以忽略这些技术细节,只需要记住一个事情就是BGP带宽有一个非常明显的特征就是无论来自什么运营商的终端用户来访问架在BGP带宽上的服务都会很快。所以这两种带宽在技术栈是有区别的,无法直接比较其绝对价值,但是动态成本还是可以比较的。在传统的IDC里面想找电信接一个1G的带宽线路,就需要保底1G签一年合同,当扩容的时候也需要提前告知运营商扩容周期。如果部署计划变更了,准备弃用这个机房搬到另外一个机房去,那么在原本机房购买的带宽的投入也就白费了。
但是在云计算平台上可以做到今天买了30M,明天可以升到100M,而后天降到5M,这都没有问题,这就是所谓的按需付费。
说到按需付费,我们来讲一下计费方式选择,这个是大家在实际使用云计算特别是Iaas层的产品包括虚拟服务器ECS,负载均衡SLB以及弹性公网IP等等这些资源的时候在公网付费方式部分都需要去选择的,我们需要选择是按带宽还是按流量的计费方式。
在云计算产品计费方式的选择上,包括阿里云和其他友商的用户按流量计费的居多。如果大家在上云之前对友商进行了调研的话会发现,特别是在美国,基本上看不到按照带宽付费的方式,其实只有国人特别喜欢使用按照带宽付费的这种方式,大家可以体会一下到底为什么。
接下来分享一下具体该怎么选。第一个需要参考的因素就是带宽的平均使用率,其实这些选择方式在阿里云产品文档里有专门的详细介绍,在这里还是大家详细说明一下。这张图是很明显的互联网业务的曲线,上午和中午这段时间流量比较低,但是到了午后流量就会上升,晚上的黄金时段流量也比较高,过了凌晨就会下降。首先假设按照带宽去购买计算一下需要多少带宽,假设图中横线的高度就是需要购买的带宽,这里一般而言要比实际的流量的最高峰高一点,因为互联网业务有一个显著的特征就是永远无法控制用户的行为,很可能某个时间段就会出现很多用户集中使用。
为了有弹性余量所以需要多买一些带宽,灰色的面积就是带宽乘以一天24小时的时长计算一下,当带宽利用率是百分之百时需要多少流量,阴影面积是业务实际使用的流量,使用阴影面积除以整个灰色的面积就按照带宽方式购买时的带宽综合利用率。简单的结论就是如果计算出的结果是带宽综合利用率高于30%的话,建议使用按带宽的付费方式;如果是低于15%的话建议选择按流量付费。
而对于中间这个阶段而言,怎样选择最划算呢?其实这是因人而异的,因为不同的业务还有其他不同的特征。比如说一个特征叫做峰值稳定性,就是假如说今天或者本周每天的峰值是100M,但是下个月有促销活动,一下就会上升到300M,而再下个月只需要150M就够了。当业务有这种特征的时候建议也选择按流量付费。大家回头想一想为什么今天SLB上的业务按流量计费的多,而ECS上按带宽计费的多。
接下来和大家分享另外一个在带宽这方面和成本相关的技巧问题,也就是共享带宽。之前有很多用户向阿里云提出这样功能的需求,阿里云现在已经支持了。共享带宽是什么意思呢?假如说现在有一套业务的六台机器,每台机器都是这样的一个流量的曲线,最简单的方式就是为每一台机器购买一个IP还有带宽,因为刚才提到的带宽需要比流量峰值更加高一点,但是每台机器都多买很多的带宽会极大浪费。
这样的例子中最典型的就是游戏业务,因为在游戏里一台ECS就是游戏里面的一个区,它们都会独占一个IP,独占一份带宽。因为游戏业务本身的流量特征导致大多数情况下按带宽计费更加划算,所以也就需要为每一台服务器都多购置带宽,因而产生了大量的浪费。
共享带宽的好处是什么呢?为了让大家可以直观地通过数据感受一下我们假设了一个场景,假设有三个业务,而三个颜色的曲线代表着各个业务的流量。如果按照右边的图,为每个服务器都购买带宽的话,大概需要购买300多兆的带宽;假如说可以共享带宽,把左边三个曲线每一个点的带宽都加起来就会发现,它们的和产生的流量曲线在高峰也超不过200兆。如果支持这样的模式,也就是网关上面总共购买200多兆的带宽给不同的业务复用,这样就可以节省不少的资金投入。
今天阿里云已经支持了这样的模式,不久之前新推出的一款产品叫做NatGateway,一句话描述它就是VPC里面的公网网关,非常容易理解。用户可以在公网网关上买IP和带宽,买到的带宽是为公网网关上所有的IP共享复用的,用户可以使用这些IP做DNAT和SNAT给后端的服务器使用,当然可以实现一台服务器独占一个IP或者很多个服务器独享一个或者一组IP,可以实现端口级别的映射也可以实现IP级别的映射,也可以实现SNAT这样一种典型的抓取互联网内容的架构方式。
只要是企业级用户都会关心可用性和性能这样两个问题。NatGateway的可用性是区域级别的,换句话说在同一个区域内挂掉一两个是不会造成大的影响的。至于性能方面,它的带宽不只5G,如果有哪个用户想要购买10G带宽问能不能支持,阿里云也会非常欢迎。
从技术架构上讲,阿里云Nat网关是彻底的分布式实现,其物理的吞吐量是没有上线的,而是只取决于部署的规模。
提到这里就再加一个东西就是SNAT,今天有非常多的用户向阿里云提出这样的需求。什么意思呢?就是说今天在服务器端,经常需要更新软件或者抓取互联网内容,所以经常需要服务器去主动地访问互联网,简单的架构方式是每个服务上都挂载一个公网IP,这个方式看上去实现比较简单,但是实际上管理的复杂度和安全风险都会很难把控。SNAT就是让没有公网IP的服务器使用网关的IP去访问互联网,其实今天大家每天都在使用这个功能,当我们手机连入WIFI的时候,手机是没有公网IP的而只有一个私网IP,而为什么能访问互联网就是因为实际上手机向外部发送数据包的时候在WIFI网关那里做了一次SNAT,只不过大家感知不到这个技术的存在。而当做自己的企业架构的时候就会出现这样的需求,阿里云的SNAT近期也将会发布,也会支持在Nat网关上,在VPC产品页面上将会有申请入口,希望大家能够关注。
讲完了南北向公网带宽成本的分析和使用技巧,我们进入最后一部分内容,就是东西向的组网成本,还要将这张图翻出来,注意这张图里面四个红色的地方实际上就是今天在云计算平台上的进行东西向组网的四个最基本的场景,分别是本地的VPC互通,异地的VPC互通,本地的专线接入也就是混合云的模式和异地的专线接入。
做一个简单的对比,把传统IDC当做比较的标地,今天云计算技术的其他厂商也当做比较的标地,还有就是阿里云以及通过阿里云的合作伙伴进行接入,通过这四种方式在上述四种场景之下支持的能力和成本情况的比较,大家就能形成一个非常直观的印象。
图中最左边的传统IDC只有两根柱子,换句话说传统IDC上没有所谓的专线接入这个概念,而只有所谓的同城专线和跨域专线。上面的一万或三万这样的价格是大致拟合出来的用户一个月需要为线路花多少钱买单。当然对于不同城市,不同距离不同运营商的价格也会有所不同,这里只是给出一个大概的量级。
其他的大多数云厂商基本上都会支持同地域的VPC互通,但是除了阿里云之外基本上没有云计算厂商支持跨地域的VPC互通,因为这中间有非常高的技术门槛。而且它们的本地和异地的IDC接入非常贵,因为这个钱不只是云计算平台收取的,大部分还是运营商收取的。
阿里云对于以上所有的这些场景都是支持的,只要用户需要就可以买到。至于成本可以横向比较一下,阿里云基本上在每一个场景下都具备价格优势,所以今天技术优势不仅仅是阿里云的主打点,用户在价格和成本上依然可以在阿里云上找到实惠。
而最后一个是通过阿里云的合作商去完成两种不同的专线接入场景,就像刚才说的如果用户租用的机房是阿里云的合作伙伴的机房,就能以非常低的时间成本和资金成本去完成这样的专线接入从而实现融合云架构。
回顾一下,我们对比了传统IDC的花费也就是虚拟设备和网络设备的花费,南北向就是公网带宽的花费,东西向就是跨机房间进行私网互通和生产网络互通的花费。通过分享大家应该对于企业级网络架构有了初步的概念,并且对于每一步的资金投入有了大致概念,最后希望大家的企业发展越来越快,产生这样的需求。因为有这样需求就意味着企业在一步一步长大,业务价值也在一步步增长。最后祝大家产品使用愉快,业务发展顺利。
更多深度技术内容,请关注云栖社区微信公众号:yunqiinsight。