不幸的是,沒有一個一刀切的方法來管理應用的服務質量。對于任何特定的應用,用戶的服務質量可能對一些基礎設施受損很敏感但對其他因素卻相對不敏感。更重要的是,不同的應用和架構有不同的敏感性。
即便如此,云服務供應商沒必要就給定的目標應用而言并不重要的KQI來過度設計基礎設施的性能。例如,視頻流應用可將內容緩存在客戶端設備上,因此可以容忍某些服務質量的損傷如分組丟失和重傳或虛擬機故障和恢復。與此相反,一個視頻聊天應用卻需要非常低的服務時延,以保持雙方之間的對話互動,所以沒有時間來重傳丟失的數據包。因此,托管交互式視頻聊天的云計算基礎設施可能比托管預錄制視頻的基礎設施需要較低的丟包率和更嚴格的資源調度。
由于職責改變帶來的服務質量受損
傳統(tǒng)的角色、責任和職責在云服務模式中發(fā)生了改變。云服務供應商可能把各種來自不同供應商的軟件、網絡和虛擬化技術集成在一起來實現一個應用服務。這使得問題的跟蹤和確定誰來為解決問題負責變得困難。
標準化云計算基礎設施服務質量的度量可以幫助云計算消費者和服務供應商管理不可避免的服務質量受損。這些指標有助于快速確定故障部件或服務,以便有關職責方及時恢復服務,并實施適當的糾正措施。有了標準的基礎設施的KQI ,云服務供應商可以很清楚地協(xié)商給定應用所需的服務等級目標(SLO )。云服務供應商也可以選擇最能滿足這些需求的基礎設施設備和軟件,并確保其能持續(xù)滿足或超過事先定義的SLO。
由于新的伙伴關系帶來的服務質量受損
除了應用軟件之外,運行在云計算基礎設施之上的應用實例依賴于由合作伙伴提供的重要組件來為用戶提供可接受的服務質量。這些組件包括:
針對基于云的應用,用于取代傳統(tǒng)計算機或服務器硬件的虛擬機。與傳統(tǒng)的硬件類似,虛擬機實例很容易受到損害。然而,虛擬機實體更容易受死機、可變資源的訪問延遲、不一致的計時器事件激活、時鐘誤差和其他異常事件的損傷。這些損傷可能是由于資源共享和底層虛擬化技術(在應用的客戶機操作系統(tǒng)與物理硬件之間插入了一層并非完全的硬件仿真)引起。
‘連接即服務’,它提供了應用的虛擬機實體和其他分布式系統(tǒng)與設備之間的網絡連接。傳統(tǒng)服務供應商使用背板和物理網絡基礎設施來連接傳統(tǒng)的硬件設備。云服務提供商必須把網絡連接作為一種服務來提供,讓分布式的基于云的應用可以發(fā)揮作用,并給客戶提供價值。這些提供的’連接即服務’---容易受到數據包丟失、數據包延遲、數據包抖動和業(yè)務不可用的損傷。
以服務形式提供的技術組件可以縮短應用的上市時間并降低運營費用。例如‘數據庫即服務’和‘負載均衡即服務’允許云服務提供商'買'一個成熟的技術組件服務,而不是“建設”私有和特定應用實例。然而,這些產品很容易受到服務的可靠性、時延、質量和業(yè)務不可用等因素的損傷。
采取措施解決服務質量受損
利用三個基本的措施,就可以開始正視和克服由云計算基礎設施帶給用戶服務質量的損傷。這些措施包括:
1.理解不同的應用具有不同的面向用戶與云服務供應商缺陷相關的服務質量敏感性。例如,一個面向批處理的應用的服務質量可能對丟包、數據包時延和數據包抖動等損傷不敏感。但對一個高度交互的應用而言,其服務質量可能對丟包、延遲和抖動非常敏感。
2.通過合理的應用設計來減少云基礎設施受損對最終用戶的影響。此外,要在具有類似服務質量的基礎設施條件下測試應用,確保用戶持續(xù)獲得可接受的服務質量。
3.認識到”籬笆扎得牢,鄰居處得好”。為所有云計算基礎設施的KQI商定SLO,以便在應用業(yè)務遇到用戶的服務質量問題時能使故障得到快速隔離。進一步明確服務范圍和要求將使它更容易找出問題,并確定誰有責任來解決問題的根本起因。
設定可實現的目標
與傳統(tǒng)方式部署的應用一樣,基于云的應用不可避免地會遇到偶爾的業(yè)務損傷和故障。我們的目標應該是在云基礎設施上部署穩(wěn)健和具有成本效益的應用,并確保它們始終如一地滿足或超越用戶對服務質量的期望。
這意味著要確保一個給定的應用可以快速檢測、減輕由云計算基礎設施帶來的業(yè)務損傷并從中恢復過來。這也意味著為‘應用即服務’、‘基礎設施即服務’和‘平臺即服務’等供應商明確定義角色和職責。通過結合商業(yè)技巧為每個責任方實施量化的SLO,運用標準化的指標和明確的問責,一個云服務供應商可以確保一個應用的所有供應商知道他們需要提供什么來滿足用戶對服務質量的期望。