腾讯云

当数据主权规则狠狠咬你一口:阿联酋、巴林的部分AWS数据永久丢失

云计算一直以来的伟大承诺是,硬件故障成为别人的问题。磁盘损坏、电源故障、网络链路中断,甚至整栋建筑都可能停止服务,但应用仍能继续运行,因为其背后的基础设施是冗余的。

亚马逊花费了多年时间和大量销售资本,教导客户正是以这种方式思考。将工作负载分散到多个可用区,保留备份,为故障而设计,那么单台机器甚至单个数据中心的死亡都应该是无关紧要的事。

这一直有效,直到故障域变成了战区。

9月15日,AWS表示,无法恢复仅托管在其中东(巴林)区域me-south-1中的资源和数据的访问。该公司表示,那里的损坏跨越了多个可用区,超出了其区域和多可用区服务设计承受的能力。AWS对阿联酋区域的一个可用区mec1-az2也得出了类似结论,而其他受影响的阿联酋资源的恢复工作仍在继续。

损坏可追溯到3月,当时无人机袭击实际击中了AWS在海湾地区的基础设施。AWS表示,阿联酋的两处设施被直接击中,而巴林一处设施附近的袭击造成了物理损坏。袭击导致结构性损坏和电力中断,在某些情况下,灭火系统还造成了额外的水损。巴林的第二个可用区后来在4月中断,导致巴林区域离线。

AWS表示,大多数客户最终能够使用备份或仍然可访问的数据在其他区域重新建立运营。但是,当然,如果“大多数客户”=“所有客户”,你就不会读到这个故事了。对于仅存在于受损巴林区域内的数据,AWS现在表示恢复手段已经用尽。

还记得“你不会注意到”吗?

有一句AWS的旧引语,其老化方式特别有趣。

2017年,CBS向AWS高管Matt Wood提出了一个相当尖锐的问题

CBS:“我不是想给任何人出主意,但假设我发现了这些无标记建筑中的某一个是AWS数据中心,然后我把它炸了。你是说它有如此完善的备份和冗余,以至于你可能都不会注意到吗?”

AWS:“是的,你不会注意到。我的意思是,我们可能会有点不高兴,但你不会注意到!”

CBS:“我不是想给任何人出主意,但假设我发现了这些无标记建筑中的某一个是AWS数据中心,然后我把它炸了。你是说它有如此完善的备份和冗余,以至于你可能都不会注意到吗?”

AWS:“是的,你不会注意到。我的意思是,我们可能会有点不高兴,但你不会注意到!”

九年后,有人实际上进行了这个实验,尽管规模远大于单栋建筑的损失,而人们确实注意到了。

数据主权的手铐

如今,强迫企业和用户将数据保存在其政府要求的地方非常流行。其理论是,通过强迫公民将数据保存在政府控制下的区域,可以更有效地保护数据免受间谍、窥探和黑客的攻击。

这个想法的问题在于,它集中了数据,从灾难保护的角度来看,有时是非常不健康的方式。而这里发生的就是这种情况。巴林和阿联酋有数据主权法律。对他们来说不幸的是,AWS在这些国家没有多个区域。你可以在区域内的可用区之间分配工作负载,但所有这些可用区仍然存在于同一个地缘政治故障域中。

多可用区架构可以保护你免受很多问题的影响。它可以防止电力系统故障、火灾、网络中断、硬件故障或单个设施的损失。但当事件大到足以损坏整个区域的多个设施时,它无法保证生存。那时,“地理冗余”需要意味着比“附近另一栋建筑”更大的范围。

从纯粹的工程角度来看,明显的技术答案是跨区域复制。在欧洲、美国、另一个中东国家,或任何其他足够远的地方保留一份副本,这样同一物理事件不太可能同时摧毁两份副本。但这并不总是能通过合规审计人员的认可。

我猜也许现在他们会做3-2-1备份

数据保护的金标准是“3份副本,2种不同的介质,其中1份在异地”。

我完全支持云,但如果是重要数据,而你只能将所有云数据保存在一组建筑中……那么看在上帝的份上,做异地备份吧。你不需要在亚马逊宕机时准备好另一个故障转移站点,但你不应该丢失数据。将其复制到异地。我的意思是,甚至不考虑战争行为——如果黑客进入你的系统呢?进入亚马逊的系统呢?如果员工叛变呢?如果,如果……

一个具有勒索软件保护和磁盘快照(或天哪,磁带!)的异地复制解决方案并不意味着你可以快速恢复服务,但意味着你不会丢失数据。换句话说,尽管说“如果我们不得不面对那种可怕的情况,我们不承诺恢复时间目标(RTO)。但我们承诺恢复点目标(RPO)。”

丢失数据很糟糕。