天天看點

使用雲監控和函數計算,秒級恢複故障

雲監控釋出新feature,打通事件中心和函數服務,可以實作秒級故障恢複。

試想這樣一個場景:

當ecs當機時,在幾秒内實作eip自動遷移至另一個健康的ecs執行個體,快速故障恢複,避免損失。

如何做到?

雲監控之前推出了事件中心,定位于,将阿裡雲上發生的對使用者有影響的事件,集中起來,統一展示,統一管理;同時,__可以實作在雲産品異常事件發生的第一時間,對使用者廣播通知,同時打通了事件與函數服務,在事件發生時觸發函數計算的執行,快速實作諸如eip遷移,slb帶寬擴容,slb摘掉故障伺服器等操作,以實作故障的快速恢複__。

架構示意圖

使用雲監控和函數計算,秒級恢複故障

在這個架構中,雲産品提供各類事件,使得整個場景能夠有米下鍋;雲監控在這個鍊路中,起到了樞紐的作用,有效串聯了各雲産品的事件和函數計算,再通過函數計算串聯到各雲産品的管控API,使雲産品之間可以有效的關聯。

故障發生>雲産品事件>雲監控廣播>觸發函數計算>雲産品管控api>故障恢複

關鍵元件:雲産品異常事件和運維Api

ecs作為先鋒産品,率先開放了12個對于使用者極其重要的運維事件,使得基于事件的自動故障恢複可行。8月份,ecs還将繼續開放更多的事件。

  • ECS目前開放的系統事件
事件名稱 事件含義 狀态 事件等級
Instance:InstanceFailure.Reboot 因執行個體錯誤執行個體重新開機開始 Executing CRITICAL
因執行個體錯誤執行個體重新開機結束 Executed
Instance:SystemFailure.Reboot 因系統錯誤執行個體重新開機開始
因系統錯誤執行個體重新開機結束
Instance:SystemMaintenance.Reboot 因系統維護執行個體計劃重新開機 Scheduled
因系統維護執行個體計劃重新開機已規避 Avoided
因系統維護執行個體計劃重新開機執行中
因系統維護執行個體計劃重新開機已完成
因系統維護執行個體計劃重新開機已取消 Canceled
因系統維護執行個體計劃重新開機已失敗 Failed
Disk:Stalled 磁盤性能受到嚴重影響開始
磁盤性能受到嚴重影響結束

更多事件詳情:

https://help.aliyun.com/document_detail/66940.html

關鍵元件:雲監控

雲監控是阿裡雲的核心基礎服務之一,服務了近百萬企業使用者。

雲監控産品的核心目标是,幫助企業使用者提升服務可用率。降低MTTR-平均故障時間。

關鍵元件:函數計算

阿裡雲函數計算(Function Compute)是一個事件驅動的全托管計算服務。通過函數計算,您無需管理伺服器等基礎設施,隻需編寫代碼并上傳。函數計算會為您準備好計算資源,以彈性、可靠的方式運作您的代碼。更棒的是,您隻需要為代碼實際運作消耗的資源付費 - 代碼未運作則不産生費用。

關于可用率

可用率的定義(百度百科):

計算機有效性的表示,它是在一段相當長的時間内, 計算機的可用時間與故障時間,維修時間及可用時間總和比。

簡單了解就是:MTTR(平均故障恢複時間)/MTBF(平均故障間隔)的比值。

如何有效提升可用率

如上所示,提升可用率,一是降低MTTR,二是提升MTBF。降低MTBF和提升MTTR的效果一樣,但是代價卻很不一樣。尤其是在雲時代,單點的錯誤非常常見,故障難以避免。一方面使用者需要自己設計高可用架構,提供适當的容錯,另一方面,也需要快速的故障發現和快速的故障恢複。

如何降低MTTR

1,及時的發現故障,并廣播通知

2,在可控範圍内,快速的自動化的恢複故障,

通過事件中心的廣播,快速發現故障,并廣播給使用者

雲監控作為阿裡雲的基礎服務,推出了事件中心。 産品定位于,将阿裡雲上發生的對使用者有影響的事件,集中起來,統一展示,統一管理,讓使用者可以友善的了解這些事件,這些事件通常都是對使用者有比較嚴重影響的事件,比如:ecs當機,hang機,rds主備切換,slb證書過期,slb丢包等。事件發生後,可以在秒級内對外廣播通知。讓使用者及時的了解故障發生,以便作出迅速反應。

故障自動恢複的風險和可行性

自動化的故障恢複通常伴随着相當高的風險,要非常謹慎;但是,通常大部分的故障都有相似性,符合28原則,80%的故障是由于20%的常原因導緻, 對于這20%的高度一緻的故障,迅速采集自動化的恢複措施,将有助于幫助使用者快速的恢複故障。

當然,自定義的可程式設計的故障恢複将有助于使用者定義自己的healing action。基于阿裡雲的函數計算服務,可以輕松實作這一靈活性。同時,函數計算服務,也會提供諸多标準化的模闆,比如,slb帶寬調整,eip遷移等,使用者隻要套用,輕點幾下滑鼠,即可以輕松實作。完成以下場景的自動化運維:ecs當機時,幾秒内完成eip遷移到另一台ecs;在業務高峰時,迅速的調整帶寬,以适應業務的需求。

以上場景,基于'雲産品事件>雲監控>函數計算'這個鍊路,可以秒級的完成,進而快速的恢複故障,進而提升使用者服務的可用率。

事件中心效果圖

說了半天,看一下事件中心的真面目

使用雲監控和函數計算,秒級恢複故障
使用雲監控和函數計算,秒級恢複故障

未來規劃:

未來,不隻是系統事件,業務自己的異常事件, 也可以支援觸發函數計算,這将大大拓展函數服務的價值邊界,帶

來更多的可能性。

這一切,都是為了更好的可用性。

注:該功能已經灰階上線,感興趣的同學,可以申請公測。釘釘掃描二維碼:

<div id="8ozdzz" data-type="image" data-display="block" data-align="left" data-src="https://cdn.nlark.com/lark/0/2018/png/32463/1533527800957-d1aef80d-c9e1-4827-9bd6-f2da75636724.png" data-width="273">
  <img src="https://cdn.nlark.com/lark/0/2018/png/32463/1533527800957-d1aef80d-c9e1-4827-9bd6-f2da75636724.png" width="273" />
</div>           

繼續閱讀