引言
服務(wù)器虛擬化(Server Virtualixation)是最近國內(nèi)外研究的一個(gè)非常熱門的領(lǐng)域。在復(fù)雜的IT環(huán)境中,冗余的硬件設(shè)備使公司機(jī)房飽和,每一件新購入的設(shè)備也會(huì)帶來額外的能源開銷。將物理服務(wù)器轉(zhuǎn)化為虛擬服務(wù)器,是確保機(jī)房環(huán)境穩(wěn)定及IT開銷在可控制范圍內(nèi)的行之有效的方法。
采用虛擬化技術(shù)后,可以動(dòng)態(tài)地開啟或者關(guān)閉虛擬服務(wù)器,就像操作物理服務(wù)器那樣。在一臺(tái)物理服務(wù)器上運(yùn)行多個(gè)虛擬機(jī),可以高效地利用物理服務(wù)器的硬件資源,并對(duì)于可能的需求變化,做出快速的反應(yīng)。
據(jù)虛擬化管理企業(yè)Veeam公司在2011年7月發(fā)布的報(bào)告顯示,目前企業(yè)服務(wù)器虛擬化率僅有不到40%。調(diào)查了若干個(gè)國家的544家企業(yè),有92%的企業(yè)已經(jīng)開始了虛擬化技術(shù)的應(yīng)用,但還是有大約60%的業(yè)務(wù)沒有實(shí)現(xiàn)虛擬化。
1 服務(wù)器虛擬化的情況
對(duì)于當(dāng)今而言,有3種基本的虛擬化技術(shù)。
1.1完全虛擬化
完全虛擬化模式使用的是宿主/客戶機(jī)結(jié)構(gòu)。管理核心被稱為hypervisor,是允許多個(gè)客戶系統(tǒng)來共享一臺(tái)物理主機(jī),允許每個(gè)客戶系統(tǒng)訪問宿主主機(jī)的處理器、內(nèi)存和其他資源的程序。它在虛擬機(jī)與硬件之間創(chuàng)建一個(gè)抽象的層,客戶機(jī)(或稱虛擬機(jī))運(yùn)行于一個(gè)虛擬的硬件層。VMware和微軟的Virtual Serer是使用完全虛擬模式的。完全虛擬化,如圖1所示:
圖1 完全虛擬化示意圖
1.2并行虛擬化
并行虛擬模式也是基于宿主/客戶機(jī)結(jié)構(gòu)的,也使用hypervisor,如圖2所示:
圖2并行虛擬化示愈圖
在完全虛擬化中,hypervisar需要處理器資源去管理不同的虛擬機(jī)并且將它們互相隔離,所以無法使處理器以最高效率運(yùn)行口一種降低處理器需求的方法是對(duì)于與每個(gè)操作系統(tǒng)進(jìn)行修改,所以在并行虛擬化中,由hypervisor對(duì)客戶系統(tǒng)進(jìn)行修改,這個(gè)修改的過程成為移植(parting)。移植允許hypervisor謹(jǐn)慎的使用系統(tǒng)調(diào)用,使操作系統(tǒng)能夠意識(shí)到運(yùn)行于虛擬環(huán)境中,并且與hypervisar協(xié)作,從而使虛擬化更有效率地運(yùn)行。這種方法就是并行虛擬化。并行虛擬化技術(shù)的優(yōu)勢(shì)在于它的性能,以并行技術(shù)運(yùn)行的虛擬機(jī)的響應(yīng)速度接近于非虛擬機(jī)。Xen是一種基于開源系統(tǒng)的并行虛擬化的技術(shù)。
1.3操作系統(tǒng)層次的虛擬化
操作系統(tǒng)層次虛擬化,它不是基于宿主/客戶機(jī)模式的,沒有hypervisor層。
與其他技術(shù)最明顯的區(qū)別是,所有的虛擬服務(wù)器必須運(yùn)行同一種操作系統(tǒng)(當(dāng)然,每個(gè)實(shí)例都有自己的應(yīng)用程序和賬戶)。這類技術(shù)在系統(tǒng)的靈活程度上有所欠缺,但帶來的優(yōu)勢(shì)則是性能上的優(yōu)化。因?yàn)榉植际郊軜?gòu)消除了層與層之間的系統(tǒng)調(diào)用,從而降低了CPU的開銷。此外,相對(duì)于使用不同操作系統(tǒng)的虛擬機(jī),這類在所有虛擬服務(wù)器上使用單一的標(biāo)準(zhǔn)操作系統(tǒng)的結(jié)構(gòu)也便于管理。操作系統(tǒng)層次的虛擬化。Virtozzo和Solaris Zones都是操作系統(tǒng)層次的。
1.4虛擬化技術(shù)的瓶頸
以上的3種虛擬化技術(shù),都是軟件層面上的。難道不能在硬件層面上實(shí)現(xiàn)更有效率的虛擬化技術(shù)嗎?
直到2007年,Intel和AMD才開發(fā)出支持CPU層次虛擬化的處理器,通過硬件上支持虛擬化,使得用于場hypervisor的CPU資源得以釋放,提高了虛擬技術(shù)的性能。
當(dāng)然,CPU層次的虛擬化技術(shù)并不是自適應(yīng)的,相關(guān)的虛擬化軟件必須被重新開發(fā),以便支持。因?yàn)檫@種技術(shù)使得虛擬化技術(shù)的性能增長不少,所有的虛擬化軟件都將以支持CPU層次的虛擬技術(shù)為目標(biāo)進(jìn)行開發(fā)。
1.5虛擬化技術(shù)的選擇
每一種虛擬化技術(shù)都有其優(yōu)勢(shì)。如何發(fā)揮優(yōu)勢(shì),取決于采用的解決方案。例如,對(duì)于一組使用相同操作系統(tǒng)的服務(wù)器,采用操作系統(tǒng)層次的虛擬化技術(shù),就是一個(gè)好的選擇。
并行虛擬化是一種折中的技術(shù),尤其部署在那些可以感知到虛擬化的處理器的環(huán)境中。在提供了異構(gòu)操作系統(tǒng)混合使用能力的同時(shí),也帶來了不錯(cuò)的性能表現(xiàn)。
完全虛擬技術(shù)是這3種技術(shù)中對(duì)于性能影響最大的。但采用這種技術(shù)的物理服務(wù)器上的虛擬系統(tǒng),是相互獨(dú)立的,并且與主機(jī)系統(tǒng)也是無關(guān)的。對(duì)于軟件質(zhì)量控制、測試來說,是最佳的選擇。除此之外,完全虛擬技術(shù)還能支持最多種類的客戶系統(tǒng)。
完全虛擬技術(shù)還提供了些獨(dú)特的功能。例如,我們可以獲取虛擬機(jī)的快照,快照中保留了虛擬機(jī)的當(dāng)前狀態(tài);可以使用快照來進(jìn)行災(zāi)難恢復(fù)。虛擬機(jī)的鏡像文件則可以用來快速地創(chuàng)建新的虛擬服務(wù)器。
2 服務(wù)器虛擬化所帶來的優(yōu)勢(shì)
2.1降低IT成本
虛擬化技術(shù)帶來的經(jīng)濟(jì)上的收益立竿見影。最顯而易見的效果就是硬件的大量減少,例如對(duì)服務(wù)器數(shù)量需求的減少,利用市場上現(xiàn)有的技術(shù),將IT開銷縮減50%-70%是很常見的。有時(shí)幾百臺(tái)服務(wù)器可以用原先數(shù)量的1/10來替代。在每臺(tái)上運(yùn)行多個(gè)虛擬服務(wù)器。更少的硬件,整體的IT預(yù)算就會(huì)下降。相對(duì)于其他任何因?yàn)檫w移至虛擬化系統(tǒng)帶來的開銷的減少,硬件開銷的減少是非常顯著的。
對(duì)于虛擬化環(huán)境來說,節(jié)省能源是一個(gè)顯而易見的益處。在大型企業(yè)中,山于有在一臺(tái)物理服務(wù)器上使用同樣的能源來運(yùn)行多個(gè)服務(wù)器的能力,就能夠節(jié)省相當(dāng)多的能源開銷。符合國際上大力提倡的“低碳環(huán)保”的新經(jīng)濟(jì)模式。
節(jié)省寶貴機(jī)房則是另一大優(yōu)點(diǎn)。傳統(tǒng)服務(wù)器環(huán)境中,終有一天機(jī)房的空間會(huì)被服務(wù)器占滿。使用Hyper-V或者VMware就可以結(jié)束這樣的煩惱了。
很多因此帶來的開銷的減少,最終會(huì)反映在企業(yè)經(jīng)濟(jì)上的收益。比如說,設(shè)備的減少意味著用更少的電,對(duì)于樓層空間需求的減少,意味肴更少的房屋租金。
2.2充分利用未使用的計(jì)算能力和空間
CPU、內(nèi)存使用率是服務(wù)器利用率的衡量標(biāo)準(zhǔn),利用率過低,就意味著企業(yè)在為他們不需要的計(jì)算能力買單。一臺(tái)服務(wù)器只發(fā)揮了25%的處理能力,但它的能源消耗依然會(huì)達(dá)到其額定功率的80%左右。
虛擬化的最大優(yōu)勢(shì)在一于,能將多臺(tái)物理服務(wù)器整合到一臺(tái)機(jī)器上。只要磁盤空間和內(nèi)存充裕,就可以繼續(xù)向宿上服務(wù)器上添加虛擬服務(wù)器。在一臺(tái)機(jī)器上運(yùn)行多個(gè)虛擬機(jī),可以使得企業(yè)能夠更有效率地使用服務(wù)器。
事實(shí)上,如果將處理能力提高到60%左石,所帶來的能源消耗的提升相對(duì)一于性能提升來說,是忽略不計(jì)的。處理能力在60%左右時(shí),能耗為額定功率的85%左右。用3%的能源消耗換來了處理能力成倍的增長,是非常有效率的。
2.3可靠性的提高
非虛擬化的環(huán)堆中,唯一提升可靠性的技術(shù),就是將整個(gè)系統(tǒng)履于商可用性的集群環(huán)境中;但集群環(huán)境非常昂貴,也很難維護(hù)。大多數(shù)情況下,集群技術(shù)只用來保護(hù)那些及其重要的應(yīng)用,例如DBMS和郵件服務(wù)器之類的,而其他大部分的軟件應(yīng)用,是沒有任何保護(hù)的。
采用虛擬化則可以有完全不同的方法來處理這些問題。它在hypervisor層次上進(jìn)行保護(hù),而不是在應(yīng)用層次上。這聽上去并不好,因?yàn)楫?dāng)宿主系統(tǒng)運(yùn)行時(shí),萬一應(yīng)用程序出錯(cuò),沒有任何防護(hù)措施。但另一方面,非常容易去實(shí)現(xiàn)應(yīng)用保護(hù),因?yàn)椴捎脩?yīng)用程序無關(guān)技術(shù)。使得服務(wù)器級(jí)的可靠性提高了,相應(yīng)地,軟件的可靠性也就提高了。這個(gè)特性不僅在系統(tǒng)突發(fā)故障時(shí)很重要,而且在計(jì)劃停機(jī)檢修時(shí)則更重要。
2.4靈活性
如果有新的軟件或者操作系統(tǒng)需要安裝,使用服務(wù)器虛擬化,能使這個(gè)過程在短時(shí)間內(nèi)完成,因?yàn)闊o需再去準(zhǔn)備新的硬件設(shè)備。這就使得響應(yīng)速度提高的同時(shí)增加了適應(yīng)性。去分析和訊化虛擬化所帶來的益處是比較困難的,因?yàn)檫@沒有一個(gè)簡單的公式去計(jì)算。企業(yè)的確需要花一段時(shí)間去思考,從長遠(yuǎn)來看,由虛擬化可以帶來擴(kuò)展性的好處。
2.5更好地支持軟件測試
虛擬化技術(shù)的另一個(gè)優(yōu)勢(shì)則是便于測試。在軟件開發(fā)企業(yè)中,必須徹底地測試所開發(fā)的軟件,尤其是ERP軟件或是應(yīng)用于關(guān)鍵任務(wù)的程序。
對(duì)于軟件測試來說一個(gè)與生產(chǎn)環(huán)境完全相同的測試環(huán)境是必需的,微小的環(huán)境差異就會(huì)使得測試缺乏可靠性。在非虛擬化壞境中,測試的代價(jià)是非常高的,因?yàn)橐獮槊恳粋(gè)生產(chǎn)環(huán)境搭建出一個(gè)完全相同的測試環(huán)境。還必須保持生產(chǎn)和測試環(huán)境的同步。如果是那些需要在集群系統(tǒng)里運(yùn)行的關(guān)鍵應(yīng)用,測試將會(huì)變得更復(fù)雜。可信賴的測試要求你的系統(tǒng)也必須是建立在集群系統(tǒng)里的,這個(gè)代價(jià)可能會(huì)貴得離譜。在虛擬化系統(tǒng)中,可在任何時(shí)候獲取生產(chǎn)實(shí)例的副本,并使用該副本進(jìn)行準(zhǔn)確地測試。這就為創(chuàng)建虛擬化的測試服務(wù)器鋪平了道路,不僅提高了測試的可靠性,也提高了整個(gè)測試流程的效率。
3 服務(wù)器虛擬化后存在的問題
在數(shù)據(jù)中心里,服務(wù)器虛擬化技術(shù)正在替代傳統(tǒng)的、龐大的服務(wù)器系統(tǒng)。在虛擬化趨勢(shì)的背后,經(jīng)濟(jì)的因素占有不可取代的地位。虛擬化技術(shù)能在降低成本的同時(shí),使得服務(wù)器的靈活性也大大提高。但是,事物總是有它的兩面性,虛擬化后也的確帶來了不少的問題。
3.1被放大的物理故障
傳統(tǒng)環(huán)境中,一臺(tái)服務(wù)器硬件故障意味著這臺(tái)服務(wù)器不能用了,然后開啟備份服務(wù)器。在虛擬世界中,所有的服務(wù)器都在一臺(tái)物理主機(jī)上,有硬件故障了,那么所有的服務(wù)器就都不能用了。
舉例來說,你有10臺(tái)重要的服務(wù)器在一臺(tái)物理主機(jī)上運(yùn)行,但是你的RAID控制卡出問題了,硬盤上所有的數(shù)據(jù)全部丟失了。別說這種情況不可能發(fā)生,事實(shí)上,已經(jīng)發(fā)生過這種情況,而且使用的還是品牌RAID卡。
有幾種方法可以去彌補(bǔ)這些弱點(diǎn)。首先是集群,這需要大量額外的工作。另一個(gè)方法則是備份這些虛擬機(jī)。如果物理服務(wù)器有故障了,就可以將這些虛擬機(jī)恢復(fù)到其他的物理主機(jī)上。因此,如果企業(yè)的虛擬化結(jié)構(gòu)是有組織、有計(jì)劃的,物理故障可能也就沒有那么可怕了。然而,也就意味著企業(yè)需要在冗余硬件上投資,在某種程度上,也就削弱了虛擬化的優(yōu)勢(shì)。
3.2新舊技術(shù)的沖突
安裝虛擬化軟件后,可以像以前那樣部署操作系統(tǒng),這看似非常簡單。但事實(shí)并非如此,在虛擬環(huán)境下,很多事情都不一樣。有可能會(huì)遇到這樣的事情,你在一臺(tái)宿主機(jī)上部署了1O臺(tái)虛擬服務(wù)器,但是過了一段時(shí)間,你可能會(huì)發(fā)現(xiàn)其中的幾臺(tái)停止運(yùn)行了。發(fā)生了什么?當(dāng)你以傳統(tǒng)方式部署一臺(tái)物理服務(wù)器時(shí),服務(wù)器有多少內(nèi)存,操作系統(tǒng)就可以使用多少。而在虛擬機(jī)上就不是這樣了,如果還是按照傳統(tǒng)的方式來分配內(nèi)存,就會(huì)出現(xiàn)上述的故障了,系統(tǒng)會(huì)提示沒有更多的內(nèi)存可用了。
3.3服務(wù)器蔓延
創(chuàng)建了很多的虛擬服務(wù)器,在消耗了宿主主機(jī)資源的同時(shí),得到的回報(bào)卻很低,這就是服務(wù)器蔓延。易于部署和缺乏整個(gè)生命周期內(nèi)的管理,是造成虛擬機(jī)蔓延的原因。
即使虛擬機(jī)的管理可能會(huì)很復(fù)雜,但安裝一臺(tái)虛擬機(jī)卻很簡單。只需將虛擬機(jī)的鏡像文件復(fù)制到宿主機(jī)上,新的虛擬機(jī)就創(chuàng)建好了。虛擬機(jī)增長速度會(huì)非常快,而缺少足夠管理員去管理。那些新建的虛擬服務(wù)器也可能并不常用。對(duì)于服務(wù)器蔓延,應(yīng)該從管理的層面上來避免這種情況的出現(xiàn),而并非是從技術(shù)上來解決。在物理服務(wù)器環(huán)境中,也會(huì)有類似的情況發(fā)生。
3.4并非適應(yīng)所有的應(yīng)用
服務(wù)器虛擬化并不適用于所有的人。如果存在非常高端的應(yīng)用,而這些應(yīng)用是非常消耗資源且需要頻繁訪問內(nèi)存和硬盤,那么就不應(yīng)該把這些服務(wù)器應(yīng)用放置于虛擬環(huán)境之下。而相對(duì)來說對(duì)性能要求不太高的那些服務(wù)器應(yīng)用,則可以在虛擬環(huán)境下運(yùn)行良好。
3.5復(fù)雜的排錯(cuò)過程
虛擬化一個(gè)服務(wù)器意味著對(duì)整個(gè)系統(tǒng)做了巨大的修改。一個(gè)新的復(fù)雜的層次被加入了進(jìn)來,這就引起了新的問題。主要的困難是,如果有樣?xùn)|西沒有如計(jì)劃中正常運(yùn)行,那么可能需要相當(dāng)多的額外的工作區(qū)尋找原因。
4 服務(wù)器虛擬化的趨勢(shì)
2011年對(duì)于服務(wù)器虛擬化來說是令人激動(dòng)的一年。在這一年中,采用服務(wù)器虛擬化技術(shù)的企業(yè)穩(wěn)步增長,達(dá)到了70%的增長率。在之后的幾年中,虛擬化依舊會(huì)是IT界的前沿話題。
4.1內(nèi)存虛擬化
與在服務(wù)器上添加越來越多的內(nèi)存相比,不如讓內(nèi)存成為可以共享的資源。內(nèi)存虛擬化平臺(tái)的原理是:聚集所有節(jié)點(diǎn)上的可用內(nèi)存,使之成為內(nèi)存池,各個(gè)節(jié)點(diǎn)的服務(wù)器都可以通過共享網(wǎng)絡(luò)來使用它。服務(wù)器在為內(nèi)存池做出貢獻(xiàn)的同時(shí),可以實(shí)現(xiàn)按需使用。
4.2開源虛擬化的發(fā)展
在虛擬化廠商N(yùn)xTOP看來,對(duì)個(gè)人計(jì)算機(jī)來說有4種基本部件,硬件、操作系統(tǒng)、應(yīng)用程序和用戶數(shù)據(jù),而他們的目標(biāo)則是,虛擬化這些部件并使得IT管理員可以通過網(wǎng)絡(luò),管理這些系統(tǒng)而不是單獨(dú)地處理每一個(gè)實(shí)體系統(tǒng)。
4.3桌面虛擬化
桌面虛擬化技術(shù)正在被加速應(yīng)用。在大量對(duì)網(wǎng)絡(luò)和存儲(chǔ)系統(tǒng)的測試和分析后發(fā)現(xiàn),從經(jīng)濟(jì)上來看,將桌面終端整合到虛擬桌面并沒有太多的優(yōu)勢(shì)。但是新技術(shù)的推出,如固態(tài)磁盤和I/O虛擬化,正在推動(dòng)桌面虛擬化進(jìn)入應(yīng)用階段。
5 結(jié)論
服務(wù)器虛擬化可以為企業(yè)帶來有形的(開銷上的)和無形的(性能上的)收益。雖然前者能夠讓企業(yè)的領(lǐng)導(dǎo)者們充分領(lǐng)略虛擬化所帶來的好處,也是他們所看重的,但是性能上的收益,才是可以將IT設(shè)施當(dāng)作可提升企業(yè)市場競爭力的戰(zhàn)略資源的原因。
另一方面,作為一門新興技術(shù),虛擬化也存在不少問題。當(dāng)然,我們也有理由相信,隨著時(shí)間的推移和各方的努力,這些問題都會(huì)得到不同程度地解決。
總之,虛擬化是趨勢(shì)所在,企業(yè)應(yīng)當(dāng)從自己的實(shí)際情況出發(fā),綜合考慮虛擬化后帶來的各種影響,找到一個(gè)適合自己的模式。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://m.guhuozai8.cn/
本文標(biāo)題:服務(wù)器虛擬化的優(yōu)缺點(diǎn)分析及趨勢(shì)
本文網(wǎng)址:http://m.guhuozai8.cn/html/consultation/1083968635.html