【2011年4月25日51CTO外电头条】对于愿意多付一点钱的云客户,亚马逊提供了一项很有诱惑力的提议:将应用分布到多个可用区(availability zone)上,可获得一项几近保证的服务:不会遭受宕机之苦。
“在分开的可用区上运行实例,可放置你的应用程序在单个位置上出现故障。”亚马逊在推广其弹性计算云服务(Elastic Computer Cloud)时如此说道。
只在一个可用区上创建应用的客户更容易遭受服务中断的故障。但是,多个可用区同时停止运行时将会怎样?我们已经看到了结果:一次服务中断令多家网站无法访问,其中包括 Foursquare、Reddit、Quora 和 Hootsuite。
“我们可以确定,在美国东1地区的多个可用区中,连接故障影响了 EC2 例程,并且不断增加的时延影响了 EBS(弹性块存储)容量。”周四亚马逊在其服务状态控制板上指出。
美国东1地区,位于北弗吉尼亚州,是世界各地的多个亚马逊服务地区之一。在北加利福尼亚州还有一个服务地区。在东部时间凌晨 4:41 时,亚马逊开始报告故障。到下午 1:26 时,亚马逊称他们“现在看到故障和时延在显著地下降”,但是问题仍没有消失。亚马逊认为是一起“网络故障”引发大量的存储区进行再次映射,从而造成了容量短缺。
根据加特纳公司(Gartner)分析师德鲁•里维斯(Drue Reeves),虽然每个地区包含多个可用区,但对于每个可用区,已知的信息很少。在弗吉尼亚地区有四个可用区,里维斯说道。但是,这些可用区是否位于不同的数据中心?它们之间相距多远?数据如何跨区复制?里维斯称,对于这些问题,亚马逊没有保持透明性。不知答案让顾客的选择变得困难:创建高可用的应用时,使用哪种方式最为有效。
“多年来,亚马逊一直称为了避免整个地区发生服务中断,他们在一个地区中运行了多个可用区。”里维斯说:“但我们现在还是发生了故障,而且是整个地区的 EC2 出现中断。”
亚马逊发言人尚未对评论请求作出回应。
也许显而易见,亚马逊多等级承诺为每个地区提供了 99.95% 的可用性,但并不是对于每一个可用区。对于许多客户,这已足够优秀,但还远未达到 5 个 9 的高可用性标准。
在 EC2 网站的可用区描述中,亚马逊称,这些可用区位于“不同的位置,其设计将其与其他可用区故障分离开来,并且可提供廉价的低延迟网络连接至同一地区中的其他可用区”。
这些都引发了一个疑问:能否创建跨地区的应用,如果需要,可从弗吉尼亚州向加利福尼亚州进行故障转移?
云软件提供商 Enomalv 公司的创始人兼 CTO 鲁文•科恩(Reuven Cohen)想得更远。客户创建的应用应同时运行在多个来自不同销售商的云平台上,他如此说。
已知的运行在多个可用区上的大型网站发生中断,这一事实表明这些可用区并非万无一失。
“事情最会出现问题。这是互联网自身具有的本质。”科恩如此说:“因为你是亚马逊,你就可以提供 100% 的正常运行。这种想法是错误的。”
“销售商可能提供了冗余性……但这并不能解决这一问题:如果该销售商的所有方式都出现中断将会怎样?”科恩说道。
客户应与提供多个地点的多家提供商签订协议,从而可以在单个销售商发生故障时能够幸免于难,他指出。
但是,这种方式现实吗?里维斯给出了否定的回答,只是对于大多数客户是如此。云计算应简化应用的部署和管理。创建一个可工作于多家销售商平台上的应用需要大量的额外投入。
“无法在多家云提供商上构建应用的原因在于,缺少标准和互操作性。”里维斯说道:“如果你是应用创建者,你需要增加存储或计算容量,这些容量的分配、收费和使用,对于每个提供商都是不同的。这不是做不到,而是非常非常困难。”
还有一个更简单的想法:只使用亚马逊的服务并且应用平衡分布在多个地区。但是,这个想法并不是想象的那么简单。亚马逊没有提供必要的工具,可以在地区之间进行负载平衡,所以客户必须在他们亚马逊例程之上使用额外的软件,里维斯指出。亚马逊的负载平衡服务可在多个可用区上工作(与周四出现故障的那些服务相同),而不能跨地区工作。
无论任何时候,如果出现云故障,总会有人质疑所有的云计算服务。但事实并非如此,里维斯如此说,并指出“每个人都会有宕机的时候”。云计算的不同之处在于云服务提供商将风险积聚在一处——许多公司使用一个平台运行他们的网站,一旦该平台出现服务中断,相对于一家公司内部数据中心出现故障,将会吸引更多的注意。
一家云服务提供商出现故障不应抱怨所有的云计算都不可靠。里维斯指出,这的确令想要使用云服务的企业三思,在将服务转移到云之前进行经济分析,他们会更加小心。如果公司将主要的业务运行在亚马逊平台之上,那么发生中断故障时他们将数百万美元的收入损失,为了不用在公司内部创建 IT 服务以节省成本而承担这种潜在发现是否值得?
服务等级协议可能会提供赔偿或贷款,但如果中断故障导致数千万美元的损失,亚马逊将不会提供赔偿,里维斯如此说道。
【编辑推荐】
- 使用Microsoft Azure 让云迁移变得简便的5种方法
- VMware的混合云迁移工具:vCloud Connector
- 企业CRM等业务系统迁移到 "云"中的***实现
- 云计算该“迁移”还是“自建”?
- 云迁移全攻略:哪些应用适合迁移
- 亚马逊 谷歌 微软三大试用云服务大比拼(上)
- 亚马逊推出1年免费云计算服务