经常会听到大家询问为什么在中国没有可靠的公有云服务。国际上成熟的云服务比如亚马逊AWS,微软Azure和Rackspace等移植到中国固然是难上加难,可是,国内土生土长的阿里云和盛大云等,即使没有政策上面的限制,也面临很多基础设施方面的问题。我一直坚信中国有全世界最聪明最有才华的工程师,技术上给些时间,不会有任何差距。但巧妇难为无米之炊,在中国建立“公有云”服务恐怕是世界上难度最大的。下面列出了这样一些我观察到的不同。
机房基础设施
在美国和欧洲,机房是资本密集型的生意,就好像房地产生意,Equinix,Coresite等是比较大的几家。机房是一种功能性的房地产,对抗震,制冷,电力等等都有不同的需求。Datacenter数据中心的建设和维护有严格的标准和认证,比如常听到的Tier4datacenter,即对不同层级和水准的机房数据中心都拥有一套严格的认证体系。
此外,还有管理方面的诸多认证,比如SAS70,ISO27000,甚至环境保护方面的认证LEEDCertification。大楼按照机房的要求建好以后欢迎租用。可以是整层,可以半层,甚至几个机柜都可以。公有云服务的提供商就按照自己的要求标准去看市场,很容易找到合适的DataCenter。
找不到也没关系,云服务公司有能力按照自己的标准建设机房,因为只需要买地,盖房子,申请电就可以,大大小小的网络运营商们会抢着把光缆拉进来的。所有机房都有meetmeroom,ISP(互联网基础设施服务商)都把光缆接进去互联。而且考虑在风能,水电便宜,地广人稀的地方建设机房。当地政府也会非常的欢迎。此外,国外的机房普遍比较新。IDC说机房的平均寿命是9年,Gartner则说7年的Datacenter已经过于老化。
在中国,机房首先是垄断的生意,只有少数有资源的公司才能经营。首推国有电信运营商。中国的机房可能95%以上是电信运营商建设的。上面我还没有说到网络,下面可以展开再说,这里我们只讨论基础设施的部分。运营商们可以硬件上建成看起来还像样的机房,管理上基本没有通过任何标准的认证。事实上造成一种现状,就是中国市场上基本找不过通过管理认证的数据中心。如果实地考察这些数据中心,可以看到的安全措施都往往执行不到位。比如一层层的门不是自动关闭,有时候一直敞开,属于不同客户的机柜进去后可以随意打开。还听说过有的机房工作人员忍不住在室内抽烟。
也许你受够了运营商,想找像美国那样独立运营的数据中心,选择真的不多,质量更良莠不齐。我看过北京东方广场地下室的机房,机房从安全上考虑实际上根本不可以建在地下室。但这家机房有众多世界500强客户。我还看过首都机场附近的机房,从安全上考虑机房也根本不应该靠近机场。上个月,北京某家独立数据中心因为断电,导致亚马逊和凡客等多个网站中断数个小时的服务。但没有办法,即便是亚马逊中国,也必须降低标准才能在中国找到数据中心,这种情况只能是最好的选择了。题外话是,亚马逊中国建立了把国内内容定期备份到亚马逊海外的云服务AWS上的机制,所以是各个网站里最快恢复服务的。在中国,线上业务对运维的挑战恐怕是全世界最大的。
世纪互联算是国内为数不多通过ISO认证的独立运营的数据中心。但在网络的互联上他们也非常依赖于运营商。看他的网站上说BGP(边界网关协议)的带宽全网400多Gbps。这个可能就是全球某个一线互联网公司的日常流量而已。而且,它们的机柜也一直处于供不应求的状况。中国互联网的发展速度非常快,互联网机房基本成为稀缺资源,即使这样那样的问题,仍然是供不应求的。
自建机房?这在中国目前还没有听说成为可能——我指的是真的像Google、Facebook那样从外到内的自建。只是若干年前听说某家国内的云服务公司要在祁连山利用风能的地方的建IDC,最后没有结果,而力荐这个项目的人也离开公司回美国了。
可能有人说:中国那么多互联网公司,在这样的机房条件下不都在提供服务吗?我们也诞生了那么多好的互联网公司啊。问题是对于云服务提供商来说,是把服务建设在机房里提供给开发者,再面向最终用户服务的。开发者自己的机房坏了,可以骂机房,云服务提供商的机房断电了,自己是千夫所指,骂谁都没有用。而且有实力做公有云服务的都是bigname的公司,大家爱惜羽毛,要做都要做高标准的。
网络环境
欧洲和美国的网络是完全的互联互通——美国FCC(联邦通信委员会)有强制的要求。运营商们有的有内容,有的有眼球,对等地位的免费互联,叫peering,不对等的要网间结算,叫买IPtransit。但价格也是绝对合理。
今年的行情,1Gbps左右的带宽,自己没有骨干网,到处和人家peering凑起来的接入商,大概1美元/Mbps。Tier1的ISP,拥有全国骨干网的几家,价格在3-5美元/Mbps。而拥有大量内容的客户,比如Facebook,Google,Netflix,以及云存储和CDN服务商们,可以得到大量免费的带宽,只有小部分需要购买。曾经听过一个数据是美国一家著名的CDN,70%的带宽是免费获得的。
在这个基础上,首先技术上BGP(边界网关协议)是普遍标准,仅仅就DNS服务这种云服务和CDN都会用到的基础服务来说,Anycast是普遍采用的技术。全网的CDN节点,只会给一个IP。无论是云服务还是CDN,除了个别非常老的服务提供商,几乎其它各家用的都是Anycast。其次,网络使用非常方便,我可以开1G的端口,可以开10G的端口,可以买几百Mbps,也可以按照流量使用付费——因为网络是自由互联的,接少数几家就可以得到全国的各个网络的覆盖,任何一个机房都有自己的meetmeroom。上百家的ISP,甚至世界各国的ISP都可以接进来,在这个房间里,做好互联。
而且机房之间和机房之内的通信也是自由的,拉光纤实现就好。所以AWS的EC2可以推出MultiAZ的概念——同一个地区,推出两个以上独立机房,应用架构可以平行部署在两个机房里,但两个机房又是光纤直连的,媲美同一个机房的内网速度。所以用户完全可以零成本的做到多个机房的部署,不怕单一机房的故障。
而中国的网络环境,至少我看到的是相当差的。即使亚洲的网络普遍存在垄断的情况,中国的情况也是非常恶劣的。两个主要运营商之间的互联互通非常少,我都懒得去CNNIC上查最新的两家之间的互联互通的带宽,因为事实就是秃头上面的虱子,这点带宽纯属摆设。主管部委的网站上公布的互联互通的指导价格是1000元人民币/Mbps,这可相当于是160美元/Mbps啊,这是一个让全世界的人看来都无比震惊的数字!
即使真正通过协商,互联互通的价格低也实际上仍然很高,因为北京市场上的BGP价格在100美元/Mbps。在台湾,中华电信一家独大,政府给的网间互连指导价是5美与啊/Mbps。在香港,HKIX里只要有ISP执照,就可以免费的和HKIX交换流量,和香港的所有运营商免费互联。
这个导致的直接结果是中国有两张隔离的网,。显然运营商们建设的机房只有自己的网络可以接入,中国的机房没有meetmeroom。因为大多数的机房只有一个运营商的网络。少数的大客户强势的需要互联互通的,运营商会硬着头皮到另一家里高价把线接进来,当然是客户买单。
这种现状给全国的线上业务带来无尽的麻烦。几乎全部上规模的互联网业务都需要在两家运营商里复制两个以一样的系统,然后用loadbalancing的技术把电信的流量给电信的机房,联通的给联通。这种重复的建设不知道给运营商贡献了多少收入,以及制造了多少传说中的GDP,但也很大程度上提高了互联网领域的门槛,限制了创新。中国的互联网运维队伍可能是全世界最庞大的。运维甚至成为很多互联网业务的核心竞争力。因为基础设施和网络上太复杂了。
想用BGP实现自动的互联互通?BGP受到运营商的严格限制,不仅仅是价格。运营商们在二三线城市基本都不开BGP。北京的BGP价格高达100美元/Mbps,上海更贵。你想多买还不一定能买到。中国市场上创造性的出现了假BGP,双线,多线等各种网络接入方式。这种情况下,大多数的业务都只能走静态带宽。像Anycast这样的技术在中国根本就无从谈起。
海外的云服务提供商即使在中国有机会做起一些服务的点,也只能在网络调度上隔离于全球网络之外。比如CDN,曾经接触过多个海外CDN的公司想把CDN点布到中国,对不起,不要说管制的问题,技术上就做不到。
光纤的互联同样受到严格的限制,以北京为例,大多数运营商经营的机房不允许光纤的接入,因为他们担心你会把另一家的带宽也拉进来。所以你想拉光纤在两个机房之间非常困难,这直接导致在中国设立像AWS那样两个机房互为备份的概念基本不可能。目前在国内有推出“公有云”的各家也都没有能够成功的提供的这个功能。
政策管制
最后,政策方面的限制,其实我倒觉得还好。一个外国公司,可以名义上授权自己的品牌给国内的一家有业务牌照的公司来提供服务给中国的用户,在云的领域,可以是数据中心的执照,但ICP的执照也未尝不可,因为hosting类的服务在中国一直以来也都是成千上万的服务提供商拿着一个ICP执照来提供的。
而难受的是:对于在线内容的管制与“云”的精神相悖。云的价值是让你有了好的想法可以随时上线,鼓励创新和试错。但我们关于ICP备案的规定完全是本着宁可错杀一千,不放过一个的精神。比如为了备案,网站所有者要到提供服务器托管服务的服务提供商那里去照相。
互联网是无疆界的,即便是在国内这个网内,一个上海的公司把内容host在北京也是完全可能的,那么你就只能想办法到北京去照相,或者服务提供商把照相的那块背景布寄到上海。不要说完全不理解这一套的外国服务提供商,国内的云服务提供商在一开始也在备案这块上也是非常头疼。
但毫无疑问,中国是一个庞大的市场,有最优秀的工程师,有最渴望成功的互联网领域的创业者。微软能够开始在中国提供业务是个非常值得关注的,以后还是会有越来越多的公司,包括国内的和国际的,尝试在中国市场提供云服务。中国土生土长的云服务公司早已习惯了这样的一个基础设施环境,并不畏惧由此产生的困难,但反而容易陷入资源的陷阱,误以为有好的机房,拿到便宜的BGP资源就不怕竞争了。
云服务在海外从来没有资源的限制,大家在不断提高的都是产品和资源的运营能力,从Iaas作为基础,整合开源的东西,加上Windows,Oracle,SAP等等,拥有覆盖线上应用方方面面的产品组合。但面对中国市场,国外的云服务公司必须要正视在资源上的诸多限制,必须找到那些有资源的合作伙伴,在经营模式上做妥协,否则即使侥幸开始了服务,也面临无法扩展的危险。