4 月 8 日騰訊雲出現大範圍故障,此次故障主要影響產品控製台例如用戶無法通過 Web 界麵對服務器或其他產品進行操作,當然由於是 API 問題實際上也無法通過 API 執行各類操作。
此次故障對於服務器等產品本身是沒有影響的,即服務器仍然是正常運行的隻不過用戶無法執行操作,其他產品例如 CDN 和域名解析等也是同理。

昨天騰訊雲公眾號發布 4 月 8 日的故障複盤及情況說明,簡單來說是發布新版 API 時出現了兼容性錯誤:
故障的直接原因是雲 API 服務行版本向前兼容性考慮不夠和配置數據灰度機製不足的問題。本次 API 升級過程中,由於新版本的接口協議發生變化,在後台發布新版本之後對於舊版本前端傳來的數據處理邏輯異常,導致生成了一條錯誤的配置數據。
由於灰度機製不足導致異常數據快速擴散到了全網地域,造成整體 API 使用異常。
然後還有循環依賴問題:
發生故障後按照標準回滾方案將服務後台和配置數據同時回滾到舊版本並重啟 API 後台服務,但此時因為承載 API 服務的容器平台也依賴 API 服務才能提供調度能力,即發生了循環依賴 (需要安裝 WinRAR 時下載網站給你了個 WinRAR.rar)
發生循環依賴的後果就是服務無法自動拉起,最終運維通過手工啟動方式才讓 API 服務重啟,完成了整個故障的恢複。
針對此次問題騰訊雲也汲取教訓製定了改進措施:
改進措施裏就有針對循環依賴問題的解決方案,包括提供優化服務部署架構,通過分層架構、代碼審查和監控等手段,避免 API 服務中存在的循環依賴問題。
同時還要提供 API 服務逃生通道,當故障發生後可以提供調用方法快速切換。
針對 Status 頁麵的透明度問題:
透明度問題目前是國內雲計算提供商都存在的問題,即問題發生後狀態頁麵還顯示一切正常,這讓很多用戶看了狀態頁後以為是自己問題。
騰訊雲此次故障狀態頁同樣沒有及時更新,原因是狀態頁也依賴 API,但此時 API 已經寄了,所以騰訊雲計劃將狀態頁解除對雲 API 等雲服務的依賴,確保雲服務故障時狀態頁依然能準確及時傳遞 故障信息。
(责任编辑:地方)