一个参数留空,1250亿美金蒸发9天!谷歌云:我们仍是最稳定的云
5月25日,谷歌云针对本月初澳大利亚非营利性养老基金UniSuper故障事件发布事后报告,事故原因为“软件工具中的一个参数留空,导致UniSuper的谷歌私有云环境有效期为一年,所以该环境到期被自动删除”。
此前,UniSuper基金的50多万会员自5月2日起,一连九天无法访问该基金的在线服务,最终UniSuper通过其他云服务厂商的备份重建在线服务。
故障发生后,谷歌云发言人曾向媒体表示:“UniSuper服务中断是由于谷歌云的一系列罕见问题造成的,这些问题导致UniSuper在配置私有云时出现无意的错误配置,进而引发了一个之前未知的软件漏洞,影响了UniSuper的辅助系统。”
与此同时,事故发生在UniSuper做出“将交付和信息业务部门的职位外包”决定的第二周,因而故障披露初期,不少外国网友一度认为是外包的锅。
UniSuper使用谷歌云的时间并不长。去年9月,UniSuper将大部分业务(包括约1900个虚拟机在内的所有非生产工作负载)从澳大利亚数据中心迁移到谷歌云。
崩溃多日,只因为一个留空参数
在这份名为《分享最近影响我们客户之一的事件详情(Sharingdetailsonarecentincidentimpactingoneofourcustomers)》的官方报告,谷歌云对UniSuper删库故障进行详细解释:
谷歌自动删除客户信息却没有通知?
谷歌云表示,此次事件仅发生在UniSuper在两个区域运营的一个GoogleCloudVMwareEngine(GCVE)私有云中,同时,UniSuper拥有多个私有云。
由于特定的配置要求,设置由谷歌云工程师自己使用不再使用的内部工具执行。
尽管谷歌云表示“遵循内部控制协议”,但工程师“在使用内部工具配置客户私有云时,有一个输入参数留空”。
“由于该参数为空白,系统为该参数分配了一个当时未知的默认固定一年期限值……系统指定的一年期限结束后,客户的GCVE私有云被删除了。”
为什么毫无通知就删除了客户的私有云环境?
谷歌云在官方公告中进一步解释道,UniSuper没有收到删除警告,因为他们并未要求这样做。“没有发送客户通知,因为删除是由于谷歌运营商使用内部工具时参数留空而触发的,而不是由于客户的删除请求。”
“任何由客户发起的删除操作都会先通知客户。”
之所以能够恢复和重建已删除的环境,是因为UniSuper拥有“强大而有弹性的架构方法来管理停机或故障风险”,包括使用“第三方备份软件”。
“客户的首席信息官和技术团队值得称赞,他们与GoogleCloud团队密切合作,以速度和精度执行了全天候恢复。”
谷歌云表示,它为UniSuper制作的额外备份也可以访问。同样的事件已不再可能发生,部分原因是客户现在可以自己进行更复杂的配置——如果环境被删除,就会触发警告。
此外,谷歌还“手动审查了所有GCVE私有云,以确保其他GCVE部署不会面临相同情况的风险”。
谷歌云的故障补救措施包括:
弃用了触发此事件序列的内部工具。现在,此过程已完全自动化,并由客户通过用户界面进行控制,即使需要特定的容量管理也是如此。
清理了系统数据库并手动检查了所有GCVE私有云,以确保其他GCVE部署不受风险。
修正了针对此类部署工作流程设置删除GCVE私有云的系统行为。
世界上最具弹性和最稳定的云基础架构
在官方公告的末尾,谷歌云还对此次故障进行了总结:
在此之前,GoogleCloud内部从未发生过此类事件。这不是系统性问题。
GoogleCloud服务拥有强大的保护措施,并根据需要结合了软删除、提前通知和人工介入等措施。
我们已确认这些保障措施仍然有效。
与客户密切合作对于快速恢复至关重要。客户的CIO和技术团队值得称赞,他们与GoogleCloud团队密切合作,以快速和精确的方式执行了全天候恢复。
具有故障保护功能的弹性而强大的风险管理对于在发生意外事件时快速恢复至关重要。
GoogleCloud继续拥有世界上最具弹性和最稳定的云基础架构。尽管发生了这次一次性事件,但我们的正常运行时间和弹性经过独立验证,在领先的云中名列前茅。
云存储和备份,真的安全吗?
针对此次删库故障,网友也纷纷发表了自己的看法:
Reddit用户Ron0z:
Reddit用户baezizbae:
参考资料
编译丨onehunnit
*本文为dbaplus社群编译整理,如需转载请取得授权并标明出处!欢迎广大技术人员投稿,投稿邮箱:editor@







