打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
谷歌云故障 14 个小时:“队列突变大量积压”引起的
谷歌云为服务器添加了内存,重新启动服务器,眼睁睁看着情况变得更糟糕……所幸现在重新掌握了局面。


发生在3月26日的那次故障导致谷歌在多个地区的云服务瘫痪,包括Dataflow、Big Query、DialogFlow、Kubernetes Engine、Cloud Firestore、App Engine和Cloud Console。这些系统受影响的时间总共长达14个小时。

许多云服务依赖身份和访问管理(IAM)中的分布式访问控制列表(ACL)来验证权限、激活新的API或创建新的云资源。这些权限存储在一个分布式数据库中,被大量缓存起来。两个进程确保数据库内容最新:一个是实时进程,一个是批处理进程。然而,如果实时管道远远落在后面,提供的会是过时数据,这可能导致下游服务的操作受到影响。

据谷歌最近发布的一项内部调查显示,故障是该公司的缓存服务器内存不足导致的。调查称:“触发这起事件的诱因是批量更新组成员(group membership ),结果修改后权限的数量增加到了超出预期的程度,因而生成了大量积压的队列突变(queued mutation)需要实时生效。”

“由于缓存服务器存在一个潜在的问题,处理积压的队列突变的能力下降,这导致缓存服务器内存不足;而这反过来又导致对IAM的请求超时中断。为了缓解内存使用量高企而执行的紧急部署措施在各个地区更是短暂加剧了这个问题。”

谷歌通过在缓存服务器中安装更多的内存并重新启动服务器解决了该问题。但是到这个时候,已积累了一大堆过时的数据,这导致了进一步的问题,系统工程师不得不另花费几个小时来处理。第二天早上05点55分,系统恢复正常运行。

谷歌表示,为了应对这些问题,它“现在确保缓存服务器可以处理引发这起事件的那种批量更新”,并且“正在努力优化缓存服务器上的内存使用和保护机制,在无需重新启动的情况下面对紧急情况时可以进行配置变更。”

“为了让我们将来可以更迅速地应对数据过时问题,我们还将对数据库批处理进行切分处理,以便支持并行化和更频繁的运行。我们明白区域可靠性对我们的用户来说有何等重要,并为该事件表示歉意。”

故障报告链接:https://status.cloud.google.com/incident/zall/20003#20003014

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Java技术盘点,懂这些技术的程序员2020年薪资翻倍妥妥的
Exchange server 2013(十二)IRM故障排除
系统性能测试及调优
完全用nosql轻松打造千万级数据量的微博系统(整理篇) - Php - ChinaUnix.net
构建高可扩Web架构和分布式系统实战(下)
由12306.cn谈谈网站性能技术 | 酷壳
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服