雲計算基礎架構
根據我們在上面提出的雲計算應用場景模型,本節提出一個雲計算的基本架構,為讀者提供參考。 這一架構的框架如圖9.1所示。
在這一框架下我們著力要解決以下幾個問題。
(1)不可信節點出現故障時對使用者的隔離。
(2)計算與存儲的整合,以適應計算密集和資料密集的任務。
(3)計算資源和存儲資源的虛擬化。
(4)應用層不同應用和不同使用者之間資料存儲和計算的隔離。
(5)應用層介面和作業系統的提供。
我們曾強調這一雲計算系統是基於不可信節點設計的,框架的底層就是由大量的這類節點組成,各伺服器使用現有的主流作業系統,通過各類網路將所有的節 點連接起來成為一個龐大的機群系統,這一部分組成了雲計算的物理硬體核心, 這一核心的複雜性將通過雲計算的軟體核心層對所有使用者遮罩。 這些複雜性包括節點 故障、網路故障、節點間的調度、負載平衡、資料安全、資料存儲位置、計算位置、各節點的具體配置、系統高可用性的實現等。 Google的系統給了我們良好 的示範,我們在搜索框中進行搜索時同時有大量的伺服器在為我們工作,但所有伺服器的工作細節我們完全不用知道,我們面對的只是一個簡潔的搜索框。
這一框架中計算和虛擬化層實現對計算資源和存儲資源虛擬為使用者提供彈性化的計算和存儲資源。 分散式檔案系統為系統提供有副本策略的檔存儲服務,文 件存儲的安全級別可分為:單機級、跨伺服器級、跨機櫃級和跨區域級。 該檔案系統不但為系統提供了一個安全的存儲平臺,而且由於其分散式和帶副本策略所以可 以為計算層提供存儲支援,實現計算向存儲的遷移,降低資料在網路間的傳遞時間,並且在節點失效時可以實現計算和存儲同時向備份節點的遷移, 從而在節點不可 信的情況下實現系統的高可用性。 虛擬化層、檔案系統層和計算層構成了雲計算基礎架構的軟體核心層,也是現階段我們需要主要攻克的技術層,通過軟體核心層雲 計算中的存儲、計算和失效將被全部隔離,應用層將無法"看"硬體層的工作細節,
應用層通過雲作業系統和API與雲計算基礎架構介面,由於其位於硬體核心層和軟體核心層之上,不同使用者和應用程式在使用該平臺時只能"看"到的是一台"可彈性伸縮的巨型電腦",下層的軟體和硬體運行的細節情況都無法"看"到。
這一框架實現了雲計算將所有節點的計算資源和存儲資源細節隱藏于雲端的功能,體現了雲計算"大象無形"的技術哲學之妙。