如何確保云服務的可靠性呢?
發布時間: 2018-10-19
從客戶的角度來看,云服務應該只是工作。但是,服務的中斷其實是不可避免的,這不是一個“是否會發生”的問題,嚴格意義上是“何時會發生”的問題。不管在線服務的設計和建成是如何的精煉,都會不可避免的遭遇到突發事件的發生。區別就在于服務提供商如何預測,并及時的從這些情況中進行恢復。從而保證客戶的體驗。
云服務的三大設計指導原則:1、數據的完整性,2、容錯能力,3、快速恢復。這些是客戶期望滿足的三大屬性,至少,要在他們的服務中保證這三大屬性。數據完整性是指保護客戶委托服務的信息的保真度。容錯能力是服務供應商能夠檢測到故障,并自動采取糾正措施,以便使得服務不會發生中斷的服務能力。快速恢復能力是指在未預料到的故障發生時,能夠迅速而完全的恢復服務的能力。
作為服務商,我們需要盡可能的提前識別并找出各種潛在的故障,然后在服務設計階段對這些情況進行充分的考慮。這種周全的計劃可以幫助我們決定如何確切地服務,并在發生意想不到的挑戰時如何做出反應。服務必須能夠從這些故障的情況下進行恢復,并保證最小的中斷。雖然我們不能預測到每一個故障點或每一失效模式,但利用前瞻性、業務連續性規劃和大量的實踐,我們可以制定一套緊急預案的流程,以備不時之需。
根據云計算的特點,其可以被描述為一個復雜的系統組成,依賴于共享的基礎設施和松散的耦合的性,許多特性都是在供應商的直接控制之外。傳統上,許多企業維護的內部部署的計算環境,能夠讓他們直接控制他們的應用程序,基礎設施和相關服務。然而,隨著云計算的使用量的持續增長,很多企業都紛紛開始選擇放棄一些控制權,以降低成本,充分利用資源的彈性(例如,計算、存儲、網絡資源),促進業務的靈活性,以及??更有效地利用他們的IT資源。
從工程服務團隊的角度來看,設計和建筑服務(相對于盒產品,或企業內部部署的解決方案)意味著擴大了他們的責任范圍。在設計企業內部部署的解決方案時,工程團隊只需要設計建造并測試服務,將其打包,然后根據軟件操作建議所描述的計算環境進行發布即可。而相比之下,工程服務團隊在設計建造并測試服務之后,還要進行相關的部署和監控,以便確保服務的繼續運行,如果有突發事件,他們需要確保盡快的解決。而且工程服務團隊經常對服務計算環境具有更少的控制權!
許多服務團隊采用故障模型(FMA)和根本原因分析(RCA),以幫助他們提高服務的可靠性,防止故障的發生。我的看法是,這些都是必要的,但還不夠。相反,設計團隊應采用故障模式及影響分析(FMEA)來幫助確保更有效的結果。
FMA通過可重復的設計流程旨在識別和減輕服務設計過程中的故障。RCA包括識別和確定導致有害結果的性質、規模、位置和時間因素。一套整體的終端到終端的FMEA方法的主要好處包括全面的故障點和故障模式綜合圖,能夠形成一個工程投資的優先級列表,以減輕已知故障的映射。
FMEA運用系統可靠性工程師技術的開發研究,發現可能出現的(復雜的)系統故障問題。研究通過評估嚴重程度、發生的頻率和檢測能力來了解故障影響可能存在的問題,以便基于不同的風險優先處理所需工程投資。
準備階段:在此步驟中,重要的是要理解系統的完整性,生成一個完整的系統的邏輯圖,包括其組成部分、數據源和數據業務流。使用模板來完成,這提高了整體的分析結果,通過提供可能的故障點,設計團隊可以發掘到重要的線索。
發現組件間的相互作用:一切都在這一步的范圍內。從前面所指出的邏輯圖開始,以確定所有的組件是否容易運行失敗。了解所有組件(連接器)之間的相互作用,以及每個組件如何在完整的系統中發揮作用。