上周 Microsoft Azure 位于澳大利亚新南威尔士州的数据中心发生起火,除了服务全部离线外,这次事故还导致部分硬件被烧毁。此次事故持续将近 24 小时才陆续恢复,其中由于硬件损坏,部分客户的数据无法转移只能通过恢复手段进行复原。
微软已经发布了这次事故的详细报告,报告中提到了一些令人匪夷所思的情况,例如偌大的数据中心,在夜间竟然只有 3 名工程师值班,尽管这 3 名工程师已经尽力,但面对这种情况时仍然忙不过来,进而导致事故变得更严重。
澳大利亚东区数据中心概况:由多个机房组成、使用水冷系统、有 7 台水冷设备其中 5 台为常开机 2 台为备用。
事故时间线:
事故触发原因是新南威尔士州的市电供应出现问题 (8 月 30 日 08:41,注意是 UTC+0 时间非当地时间),导致 5 台常开水冷机组全部挂掉,只有 1 台备用机组自动开机,另一台开机了但又跳闸了。
现场值班工程师按照紧急操作程序试图恢复常开水冷机组但失败了,微软承认由于数据中心园区的规模,夜间团队配备的人手不足以及时重启水冷机组,为此微软临时将夜间值班工程师由 3 名增加到 7 名。
在水冷机组歇菜后,存储和 SQL 服务器发出了告警,此时距离市电供应问题已经过去了 1 个小时 50 分钟。随着水冷机组的歇菜,服务器的温度也越来越高。
接着工程师继续尝试启动水冷机组,但依然没能成功,到 11:20 水冷机组的 OEM 支持工程师抵达现场进行处理,到 11:34 现场工程师最终决定关闭两个受影响的数据大厅的基础设施。
到 12:12 五台常开水冷机组终于手动重启成功,接着数据中心温度开始逐渐下降,随后工程师开始为受影响的基础设施恢复供电,最终到次日 06:40 所有设施恢复、所有数据恢复。
微软大客户受影响严重:
新南威尔士州数据中心托管着微软多个大客户的数据,包括但不限于昆士兰银行、捷星航空 (澳航旗下子公司) 等,这次事故导致微软的这些大客户受到严重影响。
从事故报告来看,故障自动转移进行的似乎并不是很顺利,按照设计逻辑,一旦出现故障,服务会自动转移到其他数据中心确保客户不受影响。
此次故障 Azure 的故障转移也进行了,但效果好像并不是很好,微软表示后续要重新改进。
微软的事后反思:
1. 由于数据中心规模较大,夜间团队人员配备不足,无法及时重启水冷机组,微软暂时将夜间值班人员从 3 名增加到 7 名。
2. 对于这类大型事故,重启水冷机组的经济操作程序执行速度很慢,微软正在探索改进自动化方案用来应对供电等问题。
3. 展望未来,微软正在评估各种方法确保可以对各个水冷机组的子集负载曲线进行优先级排序,以便挂了的时候先将负载最高的机组重启。
4. 利用流程表对工作负载故障转移和设备关闭进行排序,用来确定不同的优先级,同时微软正在改进水冷温度报告,以便更好的根据温度阈值来决定何时进行故障转移或关闭服务器。
5. 五台水冷机组没有重启,因为相应的水泵没有收到水冷机组的运行信号,这很重要,因为水泵对水冷机组的成功启动至关重要,为此微软正在找水冷机组 OEM 调查为什么水冷机组没有命令各自的水泵重启。
6. 由于未知错误,一台备用水冷机组就是跳闸那个没能自动重启,微软正在找 OEM 诊断。
版权声明:感谢您的阅读,除非文中已注明来源网站名称或链接,否则均为蓝点网原创内容。转载时请务必注明:来源于蓝点网、标注作者及本文完整链接,谢谢理解。