天天看點

騰訊雲突發故障 87分鐘波及1957個客戶!官方公開内幕

作者:穿插着遊擊隊

4月8日下午,騰訊雲突然發生服務故障,表現為接口響應報錯、内部服務錯誤、網頁顯示504錯誤等。

504錯誤代表的是網關逾時(Gateway timeout),也就是伺服器作為網關或代理沒有及時從上遊伺服器收到請求。

當天傍晚,騰訊雲回複稱,官網控制台相關服務出現異常,正在緊急修複,部分地區已恢複,其他地區也正在繼續搶修中。

騰訊雲突發故障 87分鐘波及1957個客戶!官方公開内幕

現在,騰訊雲官方公布了對此次故障的複盤及情況說明。

根據騰訊雲的說法,4月8日15點23分,騰訊雲團隊收到告警資訊,雲API服務處于異常狀态,随即在騰訊雲工單、售後服務群、微網誌等管道開始大量出現騰訊雲控制台登入不上的客戶回報。

經過故障定位發現,客戶登入不上控制台正是雲API異常所導緻。

雲API是雲上統一的開放接口集合,客戶可以通過API以程式設計方式管理和操控雲端資源,雲控制台通過組合雲API提供互動式的網頁功能。

故障發生後,依賴雲API提供産品能力的部分公有雲服務,也因為雲API的異常出現了無法使用的情況,比如雲函數、文字識别、微服務平台、音頻内容安全、驗證碼等。

此次故障一共持續了近87分鐘,期間共有1957個客戶報障。

騰訊雲突發故障 87分鐘波及1957個客戶!官方公開内幕

從客戶的視角來看,雲服務大概可以分為資料面和控制面,其中資料面承載客戶自身的業務,控制面負責操作雲上不同産品。

此次發生故障的控制台和雲API,是對控制面的影響。

騰訊雲突發故障 87分鐘波及1957個客戶!官方公開内幕

通俗來講,如果把雲服務類比為酒店,控制台相當于酒店的前台,一旦發生故障就會導緻入住、續住等管理能力不可用,但已入住的客房不受影響。

這次故障中,客戶已經配置好的伺服器等IaaS資源,包括已經部署運作的業務,沒有受到雲API異常的影響。其他以非雲API方式提供服務的PaaS、SaaS服務,也都正常服務。

騰訊雲突發故障 87分鐘波及1957個客戶!官方公開内幕

4月8日當天騰訊雲全産品進出流量趨勢圖,可以看到不受影響

但是,使用API提供的服務類産品受到不同程度的影響,比如騰訊雲存儲服務調用當天有明顯下滑。

騰訊雲突發故障 87分鐘波及1957個客戶!官方公開内幕

4月8日當天騰訊雲存儲服務調用資料趨勢圖,可以看到存儲服務調用有一個明顯的波動

本次故障處理過程如下:

15:23,監測到故障,立即執行服務的恢複,同時進行原因的排查;

15:47,發現通過復原版本沒能完全恢複服務,進一步定位問題;

15:57,定位出故障根因是配置資料出現錯誤,緊急設計資料修複方案;

16:02,對全地域進行資料修複工作,API服務逐地域恢複中;

16:05,觀測到除上海外的地域API服務均已恢複,進一步定位上海地域的恢複問題;

16:25,定位到上海的技術元件存在API循環依賴問題,決定通過流量排程至其他地域來恢複;

16:45,觀測到上海地域恢複了,此時API和依賴API的PaaS服務徹底恢複,但控制台流量劇增,按九倍容量進行了擴容;

16:50,請求量逐漸恢複到正常水準,業務穩定運作,控制台服務全部恢複;

17:45,持續觀察一小時,未發現問題,按預案處理過程完畢。

騰訊雲表示,故障的原因是雲API服務新版本向前相容性考慮不夠,以及配置資料灰階機制不足。

本次API更新過程中,由于新版本的接口協定發生了變化,在背景釋出新版本之後,對于舊版本前端傳來的資料處理邏輯異常,導緻生成了一條錯誤的配置資料,而灰階機制不足導緻異常資料快速擴散到了全網地域,造成整體API使用異常。

發生故障後,按照标準復原方案将服務背景和配置資料同時復原到舊版本,并重新開機API背景服務,但此時因為承載API服務的容器平台也依賴API服務才能提供排程能力,即發生了循環依賴,導緻服務無法自動拉起。

通過運維手工啟動方式才使API服務重新開機,完成整個故障恢複。

近年來,國内各家雲服務多次發生故障:

2024年4月9日支付寶崩潰,2023年12月3日騰訊視訊崩潰,2023年11月27日滴滴崩潰,2023年11月12日阿裡雲和阿裡系服務集體崩潰,2023年3月5日B站崩潰……

騰訊雲突發故障 87分鐘波及1957個客戶!官方公開内幕