谷歌云SQL服务故障(2019年)
事件
2019年6月2日,谷歌云SQL服务发生了一次大规模故障,导致客户无法连接数据库实例达4个小时之久。这是谷歌云SQL服务启动以来影响最大的一次故障。
故障的起因是谷歌云SQL的认证服务出现了问题,导致所有新连接请求无法得到验证,进而无法连接数据库。
谷歌云的工程团队花了4个小时才完全恢复服务,首先临时禁用了认证要求以恢复所有连接,然后修复认证系统本身的错误。
复盘
这次故障暴露出谷歌云SQL存在一些设计缺陷和单点故障问题:
- 依赖统一的认证系统,出现问题会影响所有用户。没有设计冗余机制。
- 修复故障花费时间过长,4个小时的服务中断对许多客户来说是不可接受的。
- 临时禁用认证机制以恢复服务也是一个安全隐患,可能被有心人利用。
- 事后通知客户的速度太慢,许多客户在社交媒体上表达了强烈的不满。
改进措施
这次故障给谷歌云和用户都上了一课。谷歌云后来推出了多项改进措施:
- 重构认证系统,采用更加故障隔离和冗余的架构。
- 建立更快速的故障检测与修复流程,明确重要服务的恢复时间目标。
- 加强对重要服务状态的监控,一旦发生故障能快速检测并通知相关技术团队。
- 建立清晰的客户通知机制,在故障发生后能及时通过多种渠道通知最大范围的客户。
- 提供服务赔偿并延长服务试用期等补偿机制,保留客户的信任。
总结
这次故障带来的 lesions 对云服务商来说极其宝贵,它检验了谷歌云SQL的工程实力与客户响应能力,最终促使其成为一款更加可靠与安全的服务。这也为其他云服务提供了极好的借鉴。
总之,通过这次故障可以看到成熟的云服务所面临的种种挑战,以及建设更加健壮服务所需要的种种措施与诚意。这是一个值得其他云服务商学习的案例。