雲計算:虛擬叢集
就速度、儲存和彈性來說,虛擬叢集比實體叢集多一些優點。
Kai Hwang, Jack Dongarra 和 Geoffrey Fox
改編自"分散式和雲計算:從並行處理的事情互聯網"(Syngress,印記 Elsevier)
有幾種異同與物理和虛擬叢集,並傳達的每個不同的好處。 物理群集是通過物理網路如 LAN 連接的伺服器 (物理機) 的集合。 虛擬叢集具有不同的屬性和潛在的應用程式。 有的虛擬叢集的三個關鍵設計問題:住在虛擬機器 (Vm) 的遷移、 記憶體和檔遷移和虛擬叢集的動態部署。
當您初始化一個傳統的 VM 時,您需要手動設定資訊寫入或指定配置源。 當更多虛擬機器加入網路時,總是一種效率低下的配置將導致超載或不足的問題。 亞馬遜彈性計算雲 (EC2) 是提供彈性的計算能力,在雲計算中的 Web 服務的一個好例子。 EC2 允許客戶創建虛擬機器,並隨著它們的使用時間管理使用者帳戶。
大多數的虛擬化平臺支援一種橋接模式,允許作為單個主機出現在網路上的所有域。 使用此模式下,虛擬機器可以溝通與另一個自由通過虛擬網卡並自動設定網路。
物理 vs。 虛擬叢集
虛擬叢集都建在分散式伺服器從一個或多個物理群集安裝的虛擬機器。 在虛擬叢集中的虛擬機器從邏輯上由虛擬網路跨多個物理網路連接。 每個虛擬叢集被形成與物理機器或一個主辦多個物理群集的虛擬機器。 虛擬叢集的界限是截然不同的邊界。
動態調配到虛擬叢集的虛擬機器帶來了以下屬性:
- 虛擬叢集節點可以是物理機器或虛擬機器,並當然你可以有多個 Vm 在相同的物理節點上運行不同的作業系統。
- 一個虛擬機器運行的訪客作業系統,這通常是不同的主機管理運行虛擬機器的物理機中資源的作業系統。
- 使用虛擬機器的目的是鞏固在同一伺服器上,大大增強了伺服器的利用率和應用程式的靈活性的多個功能。
- 您可以在促進分散式的並行、 容錯和災害復原的多個伺服器中複製的虛擬機器。
- 在虛擬叢集中節點的數目可以增大或收縮動態,覆蓋網路的對等網路中的大小各不相同的方式相似。
- 任何物理節點的失敗可能會禁用一些虛擬機器安裝在出現故障的節點,但 VM 失敗不會拉下主機系統。
您需要考慮的有效戰略的管理大量的物理計算節點 (也稱為虛擬叢集) 上運行的虛擬機器。 這涉及虛擬叢集部署和監測和管理大型群集,以及資源調度,負載平衡、 伺服器整合、 容錯和另一種策略。 在虛擬叢集系統中,你還將有一大批 VM 映射,並有必要確定如何高效地存儲這些圖像。
有通用裝置的大多數使用者或應用程式如作業系統或使用者級程式設計庫。 您可以預先安裝這些作為範本 (稱為範本的虛擬機器)。 使用這些範本,使用者可以建立他們自己的軟體棧。 他們還可以從虛擬機器範本複製新的 OS 實例。 您可以讓使用者特定的元件,如程式設計庫和應用程式安裝到這些實例。
您可以在遠端伺服器上安裝每個 VM 或複製屬於相同或不同的物理群集的多個伺服器上的虛擬機器。 如 VM 的節點中添加、 移除或動態遷移隨著時間的推移,可以更改邊界的一個虛擬叢集。
快速部署和有效調度
您的虛擬叢集系統應該有快速部署的能力。 在這種情況下,部署意味著能夠構建和到一個物理節點上盡可能快的集群內分發軟體棧 (包括作業系統、 庫和應用程式)。 這也意味著快速切換到另一個使用者的虛擬叢集從一個使用者的虛擬叢集運行時環境的能力。 如果一個使用者完成使用他的系統,相應的虛擬叢集應該關閉或暫停迅速以節省資源來運行其他 Vm 供其他使用者。
"綠色計算"的概念最近備受關注。 不過,以前的方法側重于保存在單個工作站沒有全球化視野中的元件的能源成本。 因此,它們一定不要降低功耗的整個群集。 虛擬叢集可以去很長的路,朝執行此任務。
其他群集範圍高效節能技術,只適用于均勻工作站和特定的應用程式。 虛擬機器的即時移轉允許您將工作負載從一個節點轉移到另一個節點。 然而,它並不能保證可以隨機遷移虛擬機器之間。 事實上,你不能忽視開銷引起的虛擬機器的即時移轉的潛力。
開銷可能會有嚴重的消極影響,對群集利用率、 輸送量和服務品質問題。 然後面臨的挑戰是確定如何設計遷移策略實施綠色計算而不影響群集的性能。
虛擬化的另一個優點是負載平衡虛擬叢集中的應用程式。 您可以實現負載平衡使用負載索引和頻率的使用者登錄。 基於此模型,可以實現虛擬叢集的自動放大和規模縮小機制。
因此,您可以增加節點資源利用率,以縮短系統的回應時間。 映射到最合適的物理節點上的虛擬機器還應促進性能。 動態調整的即時虛擬機器遷移的節點之間的負載是可取的做法,當在叢集節點上的負載變得不平衡。
高性能虛擬存儲
您可以分發給幾個物理主機群集內若要自訂其他 Vm 的範本 VM。 此外,預先設計好的套裝軟體減少所需的自訂和虛擬環境之間進行切換的時間。 它是重要的是要有效地管理的磁碟空間。
您可以應用一些存儲體系結構設計,以減少重複的塊內的虛擬叢集的分散式的檔案系統。 使用雜湊值進行比較的資料塊的內容。 使用者擁有自己的設定檔存儲特定于使用者的虛擬叢集內的相應虛擬機器的資料塊標識。 當使用者修改相應的資料時,它將創建新的資料塊。 新創建的塊則是在使用者的設定檔中標識的。
基本上,有要部署到目標群集上的虛擬機器一組的四個步驟:
- 準備磁片映射
- 配置虛擬機器
- 選擇目標節點
- 每個主機上執行 VM 部署命令
許多系統使用範本來簡化磁片映射製備過程。 範本是包含一個預裝的作業系統,或沒有某些應用軟體的磁片映射。
使用者選擇一個適當的範本,根據他們的要求,並使備份使用作為其自己的磁片映射。 範本可以實現該副本上寫 (牛) 的格式。 新的牛備份檔案體積小、 易於創建和轉移。 因此,它肯定減少了磁碟空間消耗。
VM 部署時間是短得多複製整個原始影像檔。 每個虛擬機器配置名稱、 磁片映射、 網路設置和分配 CPU 和記憶體。 您只需記錄到一個檔的每個虛擬機器配置。
此方法可以是效率低下,不過,當管理虛擬機器一大群。 使用相同的配置的虛擬機器可以使用 pre-edited 設定檔來簡化過程。 在這種情況下,系統組態根據所選的設定檔的虛擬機器。
大多數設定項目使用相同的設置。 其中一些 — — 通用唯一識別碼或 UUID、 VM 名稱和 IP 位址 — — 分配有自動計算出的值。 通常情況下,使用者不喜歡哪些主機正在運行的虛擬機器。
您將需要選擇正確的目標主機上的任何 VM 的戰略。 您的部署策略的原則是以滿足虛擬機器的要求,並在整個主機網路之間平衡工作負載。
Kai Hwang 一位教授的電腦工程南加利福尼亞大學和清華大學、 中國客座教授。 他獲得了博士學位 在從加利福尼亞大學伯克利分校的本科生。 他出版了廣泛的電腦體系結構中,數位算術、 並行處理、 分散式系統、 互聯網安全和雲計算。
Jack Dongarra 是一個大學電氣工程的傑出教授和橡樹嶺國家實驗室的傑出研究人員和車削的曼徹斯特大學的研究員田納西大學的電腦科學。 唐加拉超級電腦基準、 數值分析、 線性代數求解器和高性能計算領域的先驅,並已在這些領域廣泛公佈。
Geoffrey Fox 資訊學傑出教授、 計算和物理和研究生院副院長和研究的學校的資訊學和印第安那大學計算。他接獲博士學位 從劍橋大學、 英國 福克斯是知名的他的全面工作和中並行體系結構、 分散式的程式設計、 網格計算、 Web 服務和互聯網應用的廣泛發佈。
© 2011 Elsevier 公司 保留的擁有權利。 列印許可權從 Syngress,Elsevier 的烙印。 2011 年版權。 "分散式和雲計算:從並行處理事物的互聯網"由凱黃、 傑克唐加拉和傑佛瑞 · 福克斯。 對此標題和其他類似的書的詳細資訊,請訪問 elsevierdirect.com。