技术 | 为何连云计算霸主AWS也会挂?


(anaiw) #1

本文作者:Peter Staff Engineer @ Hortonworks

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

2015年九月二十五日,就是周日凌晨太平洋夏令时间3点(北京时间周日下午6点)美国电商巨头Amazon的AWS又挂了,这已经不是Amazon第一次挂掉了,2013年9月13日,2012年12月24日,2012年10月22日,2012年6月29日,2011 年 4 月 20 日,AWS都曾经挂过。

就在最近的2016年三月,连Amazon的零售网站也down掉了20分钟。大型电商Amazon稳居在线零售业务的第一名,零售业的每一美元的增长,就有24美分是Amazon贡献的。

Amazon的零售增长占据整个零售业增长的一半。至于金钱损失,那就更多了。有人估算过,Amazon每一秒钟会产生1084美元的收入,或者说Amazon的20分钟的downtime,白白浪费了巨大的收入机会。

2011 年 4 月 20 日事故,大致原因是这样的。

Amazon AWS 云平台把数据传输分为两类通道,传输内容数据的Data Channel 和传输控制信号的Signal Channel。AWS 对于每次的写数据都要存备份,而备份地址是由 AWS 调度系统通过内部群发 Signal自动指派的。

如果第一次备份没有成功,AWS 调度系统会再次群发 Signal,再找第二个备份节点。 AWS中的备份机器也是通过发送心跳signal来表示自己的有效。

AWS问题发生时,AWS 美东地区数据中心要搞维护,据说需要更换一批设备。更换设备时发生了突发网络拥堵事件, 这样每个写数据都要群发signal找备份机器,而备份机器的心跳signal由于突发网络拥堵没有能按时到达,而由于心跳没有到达所以每个写数据又要群发signal找备份机器,而这些signal又堵塞了心跳到达时间。于是,雪崩开始了。

Amazon AWS 不仅仅被很多初创公司比如 Vine, Airbnb等使用,也被越来越多的大公司比如

NASA和netflix使用。当AWS掉线的时候,这些使用AWS的公司都会蒙受巨大损失。

此次事件表明,即便是全球最大的云服务提供商也会发生重大故障。有些业务要求绝对无中断,那么,你也许需要向Netflix公司学习,自己掌控自己系统的可靠性。

![](data:image/svg+xml;utf8,)

----------------------------------------------------------------------------------------------------------

太阁CS208大规模电商平台设计实战训练营报名倒计时3天>>>学习并亲手建立high availability (HA) and dynamic scalability分布式系统。

课程第一节视频及详细信息请戳:点击链接