柳靜 邵華
摘要:云計算是科技的產(chǎn)物,時代的需求,可以借助云中計算模式將計算及存儲任務分配到大量的分布式計算機上,方便運用和管理計算機中海量的存儲資源。云計算需要高可靠的虛擬化集群技術(shù)的支撐,虛擬化技術(shù)有利于提高硬件利用率,保證了硬件的安全性與可維護性,集群技術(shù)可以提高虛擬服務器的系統(tǒng)性能和可靠性。將集群技術(shù)和虛擬機技術(shù)結(jié)合起來應用,達到了類似于增加服務器的效果并可以實現(xiàn)計算資源利用的最大化。
關(guān)鍵詞:云計算;集群技術(shù);虛擬化
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2016)23-0219-02
1 集群技術(shù)
集群技術(shù)具體到云計算方面,就是通過集群軟件將多臺服務器連接組成一個大型服務器群為客戶端提供服務。這時的所有計算機系統(tǒng)成為一個整體,對于網(wǎng)絡上的數(shù)據(jù)或應用軟件等所有資源,客戶端都能共享。集群系統(tǒng)能夠保證用戶的業(yè)務是連續(xù)的并且具有持續(xù)可用的特性,從而將系統(tǒng)停止運行的時間降到了最低,提供了高可靠性的保障。
2虛擬化技術(shù)
虛擬化技術(shù)隨著云計算的廣泛應用而逐漸深入到人們?nèi)粘5墓ぷ髋c生活中。通過虛擬化技術(shù),IT 成本降低了,系統(tǒng)安全性和可靠性也增強了。整個虛擬機系統(tǒng)的核心是虛擬機管理器(VMM),包括對CPU的虛擬化,對內(nèi)存的虛擬化,對I/O的虛擬化。
2.1 CPU的虛擬化
為每個虛擬機提供一個或多個虛擬CPU(virtual CPU,VCPU),一個虛擬CPU在任意時刻只能使用一個CPU。當一個虛擬CPU要保存當前虛擬CPU狀態(tài),在時間片用完需要切換時將被調(diào)度的虛擬CPU的狀態(tài)載入物理CPU。保證虛擬機的指令正確執(zhí)行并且保證各個虛擬機之間不互相影響是虛擬CPU正確運行的關(guān)鍵。由VMM決定當前哪一個虛擬CPU實際在物理CPU上運行是指虛擬CPU的調(diào)度。常用的調(diào)度算法有BVT算法,sEDF算法和credit算法,這里不再贅述了。
2.2內(nèi)存虛擬化
VMM的重要功能之一就是內(nèi)存虛擬化。VMM虛擬計算機的物理內(nèi)存通常采用分塊共享的思想來進行。即VMM需要將機器的內(nèi)存分配給各個虛擬機,并維護二者之間物理內(nèi)存的映射關(guān)系?,F(xiàn)代計算機所具備的內(nèi)存分頁保護機制給VMM進行內(nèi)存虛擬化提供了必要的硬件支持,有利于VMM實現(xiàn)不同虛擬機間內(nèi)存的隔離和保護。
2.3 I/O虛擬化
VMM設計最復雜的部分往往就是I/O虛擬化。系統(tǒng)的成敗就取決于I/O的效率。但由于I/O虛擬化技術(shù)目前仍然不夠成熟,即使在很多傳統(tǒng)的系統(tǒng)級虛擬化系統(tǒng)中,其效率仍然比較低下。因此,關(guān)于多級I/O虛擬化技術(shù)仍然存在廣闊的可探索空間。
3 虛擬化集群技術(shù)
多臺的vServer主機在集群中可以由一臺vCenter主機進行管理,多臺的虛擬機就可以在這些vServer主機上運行,虛擬機池就是通過這些虛擬機組成的。通過對虛擬機池的管理,vCenter間接實現(xiàn)了對集群中物理資源的管理,保證了虛擬化的集群中高可用性,同時也保證了虛擬化的集群中負載均衡性。虛擬機池通過軟件和工具實現(xiàn)管理任務,形成高性能虛擬計算環(huán)境以及高效管理技術(shù),通過在集群中的每一個結(jié)點上安裝vServer系統(tǒng),管理人員只需與控制結(jié)點進行交互,減少了用戶對動態(tài)的和復雜的物理設備的管理和維護。通過vCenter把不同資源整合成具有巨大能力的系統(tǒng),減少管理復雜度,提高了系統(tǒng)性能。
3.1總體框架
虛擬化集群應該包括vCenter(一個)、vServer(多個)和共享存儲(一套)。一個物理服務器通過直接安裝在服務器硬件上的vServer可以劃分為多個虛擬機,并且能夠在同一物理服務器上運行,并具備安全、隔離和可移植的特性。通過光通道或者網(wǎng)絡,集群中的所有的vServer主機連接到共享的存儲,主機上的業(yè)務在一臺主機發(fā)生故障時可以轉(zhuǎn)移到其它主機上,轉(zhuǎn)移后的業(yè)務的執(zhí)行由于使用了共享存儲,不會因為存儲設備的關(guān)系而受到影響。vCenter在集群中不直接管理vServer的主機,而是通過管理運行在vServer上的虛擬機進行間接管理。在vCenter Client 的操作界面上進行vCenter的所有管理操作。
vCenter和vServer兩大模塊是虛擬機進行集群化架構(gòu)的主要的功能實現(xiàn)部分(見圖1)。
3.2 vCenter
管理集群中的vServer是vCenter的主要功能。虛擬機集群中只一臺主機安裝vCenter即可,安裝了vCenter系統(tǒng)的主機作為核心管理來管理集群中其它vServer主機。具體操作步驟是:
(1)尋找可用主機:在集群當中安裝有vServer系統(tǒng)且與vCenter連接的正常主機是vCenter尋找可用的主機資源,這樣的主機接受 vCenter的控制,并能與vCenter正常通信。
(2)創(chuàng)建硬件池:可用主機資源尋找到后,根據(jù)需要,vCenter對這些主機進行劃分和組合,然后創(chuàng)建出任意數(shù)量的硬件池。
(3)創(chuàng)建虛擬機池:硬件池創(chuàng)建出以后,在此基礎上,vCenter可以創(chuàng)建虛擬機池。
(4)啟動虛擬機:啟動和管理虛擬機的重點是集群的負載均衡性。在啟動一臺虛擬機的時候,vCenter會選擇資源占用率最低的主機來運行。
3.3 vServer
劃分和管理共享存儲是vServer的主要功能。vServer虛擬化主機的CPU、內(nèi)存、I/O等物理資源。同時通過給vCenter發(fā)送心跳包將自己的通信狀態(tài)通知vCenter。具體操作步驟是:
(1)創(chuàng)建存儲 vServer共享所有的存儲設備。根據(jù)需求,進行共享存儲中,vServer會利用工具對磁盤設備進行格式化,劃出供自己使用的一塊設備為存儲設備,虛擬機要在某個vServer上運行時就會占用該存儲設備。vServer創(chuàng)建存儲是對共享存儲設備的組織和劃分,通過對所有的存儲設備統(tǒng)一規(guī)劃以便重新分配。
(2)監(jiān)測資源空閑率 對于自身硬件資源的占用情況,vServer要實時監(jiān)測。當然,vServer主要檢測空閑率(CPU、內(nèi)存和Swap交換空間),因為整個主機硬件資源空閑率的高低就由這三者的加權(quán)值來表明。vCenter接收每臺vServer上的加權(quán)值后找出資源使用率最低的主機,進而實現(xiàn)集群虛擬化架構(gòu)的負載均衡性。
4 小結(jié)
虛擬化技術(shù)有利于提高硬件利用率,保證了硬件的安全性與可維護性。通過集群技術(shù)可以把多臺服務器組成一臺虛擬服務器,有利于提高計算機的系統(tǒng)性能和可靠性。將集群技術(shù)和虛擬機技術(shù)結(jié)合起來應用,達到了類似于增加服務器的效果并可以實現(xiàn)計算資源利用的最大化。
參考文獻:
[1] 朱超.基于虛擬化技術(shù)構(gòu)建高校分布式云計算數(shù)據(jù)中心[J].武漢工程大學學報,2011(4).
[2] 孔亞楠;余躍.云計算下的虛擬存儲研究及應用[J].電腦知識與技術(shù),2010(30).
[3] 李剛健.基于虛擬化技術(shù)的云計算平臺架構(gòu)研究[J].吉林建筑工程學院學報,2011(1).