目錄
云計算的高可用性... 1
一、可用性相關概念... 2
1.1 可用性定義... 2
1.2 高可用性定義... 2
1.3 高可用性度量標準... 2
二、云計算相關概念... 3
2.1 云計算定義... 3
2.2 云計算的服務模式分類... 3
2.3 云計算典型架構... 4
三、云計算高可用性關鍵技術... 5
3.1 資源彈性擴展和動態伸縮... 5
3.2 負載均衡... 6
3.3 虛擬機節點遷移... 7
參考文獻... 9
一、可用性相關概念
1.1 可用性定義
可用性是指軟體系統在一段給定時間內正常作業的時間占總時間的比重,通常用百分比來衡量,在傳統的資料中心中影響服務可用性的因素有服務器例外宕機、服務被攻擊、作業系統崩潰、軟體崩潰、停電、網路中斷等,資料中心管理員需要采用冗余和災難備份等方式來保證服務的可用性,然而,這些冗余或者災難備份系統的引入會帶來新的問題,比如冗余備份帶來副本一致性問題,以及更高的采購和管理開銷,
軟、硬體設備和系統自身出現問題是不可能完全避免的,云計算高可用性的本質是通過技術創新,保證即使軟、硬體出現問題后服務仍然可用,比如虛擬化技術提供的快速部署虛擬機實時遷移能力,都將云計算環境的可用性提到一個新的高度,
1.2 高可用性定義
高可用性是指軟體系統無中斷地執行其功能的能力,代表系統的可用性程度,是進行系統設計時的準則之一,高可用性系統與構成該系統的各個組件相比可以更長時間運行,高可用性通常通過提高系統的容錯能力來實作,
1.3 高可用性度量標準
其度量方式,是根據系統損害、無法使用的時間,以及由無法運作恢復到可運作狀況的時間,與系統總運作時間的比較,計算公式為:
其中,A代表可用性,MTBF代表平均故障間隔,MDT代表平均修復時間,
二、云計算相關概念
2.1 云計算定義
云計算是分布式計算的一種,指的是通過網路“云”將巨大的資料計算處理程式分解成無數個小程式,然后,通過多部服務器組成的系統進行處理和分析這些小程式得到結果并回傳給用戶,云計算早期,簡單地說,就是簡單的分布式計算,解決任務分發,并進行計算結果的合并,因而,云計算又稱為網格計算,通過這項技術,可以在很短的時間內(幾秒鐘)完成對數以萬計的資料的處理,從而達到強大的網路服務,
2.2 云計算的服務模式分類
(1)基礎架構即服務IaaS,為用戶提供處理、存盤、網路和其它基本計算
資源的能力,用戶能夠部署和運行任意軟體,可以包括作業系統和應用程式,用戶并不管理或控制底層的云基礎設施,但對作業系統、儲存、部署的應用程式可以進行控制,也可能對網路組件具有有限的控制權
(2)平臺即服務PaaS,為消費者提供在云計算基礎設施上部署消費者自建或購買的應用程式的能力,并且這些應用程式使用提供商支持的編程語言和工具,用戶并不管理或控制底層的云基礎設施,包括網路、服務器、作業系統、存盤等,但對部署的應用程式和應用程式托管環境的配置具有控制權,
(3)軟體即服務SaaS,提供給消費者的能力,是使用服務提供商的運行在基礎設施之上的應用程式,通過諸如Web瀏覽器的瘦客戶端介面可以從各類客戶端設備訪問應用程式(如基于Web的電子郵件)用戶并不管理或控制底層網路、服務器、作業系統、存盤、甚至的應用程式功能等云基礎設施,有可能一些有限的特定于用應用程式配置可以允許用戶設定
2.3 云計算典型架構
典型云平臺中的云基礎架構通常劃分為硬體層、虛擬化層、云層三個層次,
(1)虛擬化層:大多數云基礎架構都廣泛采用虛擬化技術,包括計算虛擬化、存盤虛擬化、網路虛擬化等內,通過虛擬化層可實作標準化、可靈活擴展和收縮、彈性的虛擬化資源池
(2)云層:對資源池進行調配、組合,能根據業務系統的需要
自動生成、擴展所需的計算資源,將更多的應用系統通過流程化、自動化部署和管理,提高系統負載能力及可靠性,
(3)應用層:包括業務系統及資料庫系統等,該層為用戶業務請求提供服務,
三、云計算高可用性關鍵技術
3.1 資源彈性擴展和動態伸縮
彈性計算云是云計算技術的核心能力之一,主要指可彈性擴展的資源用量能夠為客戶的業務在高峰期保駕護航,此外它還有靈活多樣的計費方式,較為特別的就是用戶只需要為所使用的資源付費,運行結束后計費也就停止,也就是按使用付費,彈性云計算的這種計算方式就避免了造成資源的浪費,可為客戶最大程度的節省IT運營成本,提高資源的有效利用率,
當云平臺中的計算節點業務負載能力達到設定的閥值時,為保障新業務請求的回應時間及業務可用性,必須對計算資源池中的節點資源實作動態擴展,當業務系統負載減少,業務請求降低時,需要對以前擴展的資源進行收縮,以保證在有限的硬體資源的條件下,能將資源分配給其它更迫切需要計算資源的業務系統,從而保障云平臺內全部業務系統的整體可用性,計算資源動態伸縮需要考慮如下問題:
(1)彈性伸縮策略,虛擬機系統級性能引數的彈性伸縮,包括cpu使用率、記憶體使用率、虛擬記憶體貞面交換率等;業務級別的性能引數的彈性伸縮,包括tcp連接數、http連接數、DB連接數等.除了支持系統性能引數、業務性能引數彈性伸縮外,還支持監測應用是否健康來進行彈性伸縮,目前比較常用的是web類應用,通過http/https心跳訊息進行檢測,發送約定次數的http/https訊息均無回應時,則認為是業務系統節點已經宕機,則進行相應處理,首先重啟虛擬機,若重啟虛擬機后,該業務系統節點還是宕機,則彈性生成一個業務節點,同時添加至虛擬負載均衡集群中,以接收新的業務服務請求,
(2)延時關機,彈性收縮虛擬機時,為減少對已經建立會話的業務影響,需要支持延時關機,負載均衡調度器收到減少集群成員時,不是馬上將該成員移出集群,而是繼續處理的已經存在的會話,但是此時不再處理新的會話,等待一段時間后,再執行移出集群,執行關機或銷毀虛擬機,
(3)動態伸縮模式,計算資源的動態伸縮模式可主要分為資源節約優先模式及伸縮時間優先模式兩種,
a)資源節約優先模式,計算資源擴展時,通過虛擬機鏡像新創建虛機并加入資源池,由于需要重新創建虛機并安裝部署應用,時間上不占優勢,計算資源收縮時,不提供服務的虛以機都進行銷毀,回收全部資源,資源可以得到最大程度的利用,
b)伸縮時間優先模式,該方式總是保存彈性伸縮組(集群)最大容量的虛擬機數量,即使該虛機沒有提供服務 ,此時只是將該虛擬機關閉,虛擬機關閉時,存盤空間小能進行回收 (CPU、記憶體可以同收重新利用),由于虛擬機未激活時僅時處于關閉狀態,在需要新增活動虛擬機進計算資源池中時,只需要重新啟動即可,所以該方式在伸縮時間效率上具有較大的優勢,
3.2 負載均衡
負載均衡幾乎與全球互聯網同時出現,傳入的資料包、連接和請求從網路層到TCP到HTTP,通常在資源之間分布,以確保應用性能和可用性,
負載均衡通過設定虛擬服務地址,將添加的ECS實體虛擬成一個高性能、高可用的應用服務池,并根據轉發規則,將來自客戶端的請求分發給云服務器池中的ECS實體,
負載均衡默認檢查云服務器池中的ECS實體的健康狀態,自動隔離例外狀態的ECS實體,消除了單臺ECS實體的單點故障,提高了應用的整體服務能力,此外,負載均衡還具備抗DDoS攻擊的能力,增強了應用服務的防護能力,
均衡負載技術的應用,可以充分利用資源,提升系統整體性能,傳統的負載均衡技術通常是基于服務器的回應速度、連接數或輪詢方法,使用均衡負載技術,大大提升了系統的負載能力及整體系統性能,但由于均衡的物件粒度太大,實際上很難達到較高的負載均衡效果,而虛擬化技術的應用,使均衡的物件粒度明顯減小,原來的一臺物理服務器,可以虛擬成多臺虛擬服務器,虛擬化后的資源更加變得可以量化,虛擬化技術,將底層的計算資源切分或合并成一個或多個運行環境,以軟體的方式模擬硬體,通過軟體的方式邏輯切分服務器資源,形成統一的虛擬資源池,創建虛擬機運行的獨立環境,這種邏輯結構提供了靈活可變、易配置、可擴展的平臺服務,并且可以實作靈活有效的分布存盤和計算,從而整體上為實作強大的計算和海量資料存盤能力提供基礎保障,
對虛擬化后的計算資源和存盤資源進行整合,形成資源池之后,通過有效的演算法進行動態分配利用,實作對資源利用率的最大化,在虛擬化技識訓礎上,通過資源調度演算法,把云端的資源納入統一調度,優先使用本地資源,在本地資源不足的情況下呼叫云端資源保證性能負載需要,實作以云計算為后臺的負載均衡,本文要解決的關鍵技術難點是如何設計以云計算為后臺的負載均衡技術架構,并設計有效的收集與分配資源演算法,達到合理的資源調度,實作高效的負載均衡,
負載均衡演算法,由于業務系統的多樣性,為了最大程度地支持各類具有不同負載特點的業務系統,負載均衡一般采用輪詢調度最小連接調度、加權輪詢調度、加權最小連接調度、最快回應分配等方法實作,
設計健康檢查機制確保服務器與應用系統及時回應,并清除無負載均衡回應的節點應用系統,避免用戶請求被調度至無效的資源節點中,以保證業務系統的高可用性,
3.3 虛擬機節點遷移
因為云計算平臺結構復雜,并且需要滿足大規模的部署需求、資源需求動態變化等特性,使得虛擬機高效部署、遷移面臨巨大的挑戰,因此高效的虛擬機部署以及遷移策略具有非常重要的應用,
遷移是指將虛擬機從一個計算節點遷移到另外一個節點上,主要根據是否在進行遷移時對虛擬機關機,分為冷遷移和熱遷移,熱遷移也被稱為在線遷移,即在不關閉虛擬機的情況下進行遷移,共享記憶體,效率較高,因而被大多數公司企業所采納,但因其復雜的管理,也有其性能問題的弊端,如何減少弊端也是衡量遷移效率的重要指標,
虛擬機節點遷移時,通過心跳機制,定時監測計算資源池集群內主機的CPU、記憶體利用率等指標,并根據預定的規則來判斷是否需要為該主機在集群內尋找有更多可用資源的主機,以將該主機上的虛擬機遷移到另外一臺具有更多合適資源的服務器上,通過動態資源調整來保障系統的回應時間,實作業務系統的高可用,
參考文獻
- 虛擬化與云計算小組. 云計算寶典技術與實踐[M]. 電子工業出版社, 2011.
2. 索辛斯基陳健. 云計算寶典 : Cloud computing bible[M]. 電子工業出版社, 2013.
- https://zh.wikipedia.org/wiki/%E9%AB%98%E5%8F%AF%E7%94%A8%E6%80%A7
- 侯超平. 云計算的高可用性實作技術探討[J]. 山東工業技術, 2016(2):269-270.
- https://blog.csdn.net/weixin_33730836/article/details/93843126
- 譚乾. 云計算環境下負載均衡策略的研究[J]. 2014.
- 施楊斌. 云計算環境下一種基于虛擬機動態遷移的負載均衡演算法[D]. 復旦大學.
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/289419.html
標籤:其他
