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