前言
各種研究機構(gòu)、組織、廠商對服務(wù)器虛擬化均有自己不同的定義,然而其核心思想是一致的,即它是一種方法,能夠通過區(qū)分優(yōu)先次序并能隨時隨地將服務(wù)器資源分配給最需要它們的工作負(fù)載,來簡化管理和提高效率,從而減少為單個工作負(fù)載峰值而儲備的資源。服務(wù)器虛擬化是一種對服務(wù)器計算資源的抽象化,它在物理服務(wù)器的基礎(chǔ)上構(gòu)建多個相互獨立的虛擬服務(wù)器,從而將CPU、內(nèi)存、vo等服務(wù)器物理資源轉(zhuǎn)化為一組統(tǒng)一管理、可靈活調(diào)度、動態(tài)分配的邏輯資源。
不管云計算以IaaS,PaaS,SaaS的哪種業(yè)務(wù)形式出現(xiàn),都需要基礎(chǔ)的計算能力資源。在云計算的計算能力構(gòu)建過程中,通過服務(wù)器虛擬化技術(shù),將服務(wù)器硬件資源虛擬成一個整體的邏輯資源池,這個邏輯資源池能配置運行多個業(yè)務(wù)應(yīng)用,而且能根據(jù)應(yīng)用的實際需要動態(tài)地分配邏輯資源,這種按需分配的模式和動態(tài)資源調(diào)整的能力能最大幅度地提高服務(wù)器資源的利用率。虛擬化技術(shù)的這種特點契合了云計算的本質(zhì),因此虛擬化是云計算的重要技術(shù)要素。
云計算中不可避免地需要使用服務(wù)器虛擬化技術(shù),本文就服務(wù)器虛擬化的技術(shù)要點、服務(wù)器虛擬化應(yīng)具備的功能要素等方面進行探討。
1 云計算為什么需要服務(wù)器虛擬化
IT技術(shù)的發(fā)展可以簡略地劃分為3個時代。第一代是靜態(tài)的IT,所有計算能力資源由系統(tǒng)獨享;第二代是共享的IT,主要體現(xiàn)在計算能力的共享,但計算資源不能動態(tài)調(diào)整;第三代則是云計算,所有的信息和數(shù)據(jù)都在動態(tài)的架構(gòu)上,不僅實現(xiàn)技術(shù)能力的共享,還可以實現(xiàn)計算資源的調(diào)整)。
計算資源包括服務(wù)器資源、存儲資源、網(wǎng)絡(luò)資源等,其中重點在于實現(xiàn)服務(wù)器資源的虛擬化。若要實現(xiàn)服務(wù)器的“按需服務(wù)”,就一定要讓服務(wù)器變成動態(tài)的,而這都要看服務(wù)器在虛擬化方面的能力,虛擬化是動態(tài)的基礎(chǔ),只有在虛擬化的環(huán)境下,云計算才有可能。
利用服務(wù)器虛擬化技術(shù),將現(xiàn)有服務(wù)器物理資源抽象成一個擁有巨大計算能力的“云”資源池,應(yīng)用系統(tǒng)運行時可以動態(tài)調(diào)用這個“池”中的所有資源)這樣,按照峰值設(shè)計服務(wù)器資源中浪費掉的那部分就被充分地利用起來了,服務(wù)器資源的利用率能提高到60%-80%,這與現(xiàn)有IT系統(tǒng)評價5%-10%的資源利用率形成巨大反差,我們僅需要原來服務(wù)器大約25%的資源即可滿足信息系統(tǒng)運行需求,節(jié)省了約75%的服務(wù)器運營成本。
圖1是一個典型的云計算平臺邏輯層次圖。在此架構(gòu)下,由大量虛擬服務(wù)器所構(gòu)成的虛擬化的硬件平臺共同托起了全部軟件層所提供的服務(wù)。在虛擬化與云計算共同構(gòu)成的這樣一個整體的架構(gòu)中,虛擬化有效地分離了硬件與軟件,而云計算則讓人們將精力更加集中在軟件所提供的服務(wù)上。
云計算必定是虛擬化的,虛擬化給云計算提供了堅定的基礎(chǔ)。但是虛擬化的用處并不僅限于云計算,這只是它強大功能中的一部分。
虛擬化給云計算所帶來的好處是多方面的,主要包括以下幾點。
a)效率。將原本一臺服務(wù)器的資源分配給了數(shù)臺虛擬化的服務(wù)器,有效地利用了閑置資源,確保企業(yè)應(yīng)用程序發(fā)揮出最高的可用性和性能。
b)隔離。雖然虛擬機可以共享一臺計算機的物理資源.但它們彼此之間仍然是完全隔離的,就像它們是不同的物理計算機一樣因此,在可用性和安全性方面,虛擬環(huán)境中運行的應(yīng)用程序之所以遠(yuǎn)優(yōu)于在傳統(tǒng)的非虛擬化系統(tǒng)中運行的應(yīng)用程序,隔離就是一個重要的原因。
c)可靠。虛擬服務(wù)器是獨立于硬件進行工作的,通過改進災(zāi)難恢復(fù)解決方案提高了業(yè)務(wù)連續(xù)性,當(dāng)一臺服務(wù)器出現(xiàn)故障時可在最短時間內(nèi)恢復(fù)且不影響整個集群的運作,在整個數(shù)據(jù)中心實現(xiàn)高可用性。
d)成本。降低了部署成本,只需要更少的服務(wù)器就可以實現(xiàn)需要更多服務(wù)器才能做到的事情,也問接降低了安全等其他方面的成本。
e)兼容。所有的虛擬服務(wù)器都與正常的Xg6系統(tǒng)相兼容,可部署多套不同的系統(tǒng),將因兼容性造成問題的可能性降至最低。
f)便于管理提高了服務(wù)器/管理員比率,一個管理員可以輕松管理比以前更多的服務(wù)器而不會造成更大的負(fù)擔(dān)。
2 常見虛擬化層次
服務(wù)器虛擬化允許具有不同操作系統(tǒng)的多個虛擬機在同一物理機上獨立并行運行。每個虛擬機都有自己的一套虛擬硬件(例如RAM ,CPU、網(wǎng)卡等),可以在這些硬件中加載操作系統(tǒng)和應(yīng)用程序。無論實際采用了什么物理硬件組件,操作系統(tǒng)都將它們視為一組一致、標(biāo)準(zhǔn)化的硬件。
虛擬化技術(shù)并非云計算時代首創(chuàng),虛擬化的概念在20世紀(jì)60年代首次出現(xiàn),利用它可以對屬于稀有而昂貴資源的大型機硬件進行分區(qū)。隨著時間的推移,小型服務(wù)器和PC可更經(jīng)濟地滿足計算能力需求,因此到20世紀(jì)80年代,虛擬技術(shù)已不再廣泛使用。到了20世紀(jì)90年代,計算能力需求的激增使得研究人員開始探索如何利用虛擬化技術(shù)解決與龐大的IT系統(tǒng)相關(guān)的一些問題,例如,利用率不足、管理成本不斷攀升和易受攻擊等、現(xiàn)在.虛擬化技術(shù)處于時代前沿、
圖1云計算平臺歲輯層次
按照虛擬化實現(xiàn)的要求,虛擬化技術(shù)應(yīng)具備以下技術(shù)要點。
a)在一個物理系統(tǒng)中可以支持多個應(yīng)用程序和操作系統(tǒng)。
b)可在擴展或擴張體系結(jié)構(gòu)中將服務(wù)器整合到虛擬機中。
c)計算資源被視為以可控方式分配給虛擬機的統(tǒng)一資源池。
d)虛擬機與主機和其他虛擬機完全隔離,如果一個虛擬機崩潰,所有其他虛擬機不會受到影響。
s)虛擬機之間不會泄露數(shù)據(jù),而且應(yīng)用程序只能通過配置的網(wǎng)絡(luò)連接進行通信。
f)完整的虛擬機環(huán)境保存為單個文件,便于進行備份、移動和復(fù)制。
g)為應(yīng)用程序提供標(biāo)準(zhǔn)化的虛擬硬件,可保證兼容性。
h)整合多余硬件和提高服務(wù)器利用率。
目前服務(wù)器虛擬化中的實現(xiàn)層次類別可以分為硬件層虛擬化、邏輯層虛擬化、軟件層虛擬化。
a)硬件層虛擬化。硬件層虛擬化指服務(wù)器硬件提供結(jié)構(gòu)支持幫助創(chuàng)建虛擬機監(jiān)視并允許客戶機操作系統(tǒng)獨立運行,不需要操作系統(tǒng)支持。可直接對硬件資源進行劃分,任一分區(qū)內(nèi)的操作系統(tǒng)和硬件故障不影響其他分區(qū)。
b)邏輯層虛擬化。邏輯虛擬化是指在系統(tǒng)硬件和操作系統(tǒng)之間以軟件和固件的形式將硬件資源進行虛擬化。不需要操作系統(tǒng)支持,任一分區(qū)的操作系統(tǒng)故障不影響其他分區(qū)。
c)軟件層虛擬化。軟件虛擬化是指在主操作系統(tǒng)上運行一個虛擬層軟件,可以安裝多種客戶操作系統(tǒng),任何一個客戶系統(tǒng)的故障不影響其他用戶的操作系統(tǒng),需要主操作系統(tǒng)支持。
目前云計算中一般采用廉價的x86服務(wù)器構(gòu)建資源池,也有部分系統(tǒng)根據(jù)其需求采用中高檔服務(wù)器構(gòu)建資源池,而軟件層虛擬化技術(shù)使用較少。
相對硬件虛擬模式而言,邏輯虛擬模式會占用一定比例的系統(tǒng)資源。目前大中型服務(wù)器采用硬件虛擬化;A1X和HP-UX上的虛擬效率在90%以上,虛擬化損耗約為5%;而x86架構(gòu)一般采用邏輯虛擬化,虛擬效率則在80%左右,虛擬化損耗大約為20%。
3 虛擬化技術(shù)探討
在云計算的實現(xiàn)中,上述虛擬化技術(shù)類別均有涉及,服務(wù)器虛擬化實現(xiàn)技術(shù)主要是分區(qū)(包括硬分區(qū)或軟分區(qū),也稱物理或邏輯分區(qū))和底層硬件模擬(部分模擬或完全模擬)。
3.1分區(qū)
分區(qū)是小型機中廣泛使用的一種虛擬化技術(shù),通常由服務(wù)器的軟件層和硬件層共同實現(xiàn),為上層操作系統(tǒng)和應(yīng)用提供相互隔離的運行環(huán)境。采用分區(qū)技術(shù)的服務(wù)器中,服務(wù)器的固件記錄分區(qū)的配置信息,用以界定每個分區(qū)能夠訪問的GPU、內(nèi)存等資源的范圍和數(shù)量。同時,服務(wù)器底層軟件可以通過對不同資源的激活和釋放等操作,實現(xiàn)資源在不同分區(qū)之間的調(diào)度。分區(qū)技術(shù)起源于大型主機,目前小型機廠家的許多虛擬化產(chǎn)品,例如HP的near ,IBM的1Par都是基于或部分基于分區(qū)技術(shù)實現(xiàn)的。
3.2底層硬件模擬
底層硬件模擬是目前大多數(shù)虛擬化產(chǎn)品使用的虛擬化技術(shù),它利用虛擬機監(jiān)視器(VMM,也叫虛擬機管理程序)來模擬底層硬件的功能,為上層操作系統(tǒng)提供虛擬的運行環(huán)境。從操作系統(tǒng)的角度來看,運行在虛擬機上與運行在其對應(yīng)的物理服務(wù)器上幾乎沒有區(qū)別。
采用VMM實現(xiàn)的服務(wù)器虛擬化通常分為2種類型。
3.2.1 Type I:裸金屬架構(gòu)
Type I虛擬化架構(gòu)(見圖2中邏輯層虛擬化部分)不需要在服務(wù)器上先安裝操作系統(tǒng),而是直接將VMM安裝在服務(wù)器硬件設(shè)備中,本質(zhì)上Type I架構(gòu)中的VMM也可以認(rèn)為是一個操作系統(tǒng),只不過是非常輕量級的操作系統(tǒng)(實現(xiàn)核心功能)。
圖2虛擬化技術(shù)層次
VMM實現(xiàn)從虛擬資源到物理資源的映射,當(dāng)虛擬機中的操作系統(tǒng)通過特權(quán)指令訪問關(guān)鍵系統(tǒng)資源時,VMM將接管其請求,并進行相應(yīng)的模擬處理。為了使這種機制能夠有效地工作,每條特權(quán)指令的執(zhí)行都需要產(chǎn)生“自陷”以便VMM能夠捕獲該指令,從而使得VMM能夠模擬執(zhí)行相應(yīng)的指令。VMM通過模擬特權(quán)指令的執(zhí)行,并將處理結(jié)果返回給指定的客戶虛擬系統(tǒng)的方式,實現(xiàn)了不同虛擬機的運行上下文保護與切換,從而能夠虛擬出多個硬件系統(tǒng),保證了各個客戶虛擬系統(tǒng)的有效隔離。
然而,x86體系結(jié)構(gòu)的處理器并不是完全支持虛擬化的,因為某些x86特權(quán)指令在低特權(quán)級上下文執(zhí)行時,不能產(chǎn)生自陷,導(dǎo)致VMM無法直接捕獲特權(quán)指令的執(zhí)行。
目前,針對這一問題的解決方案主要有基于動態(tài)指令轉(zhuǎn)換或硬件輔助的完全虛擬化技術(shù)和半虛擬化技術(shù)。
完全虛擬化是對真實物理服務(wù)器的完整模擬,在上層操作系統(tǒng)看來,虛擬機與物理平臺沒有區(qū)別。操作系統(tǒng)察覺不到是否運行在虛擬平臺之上,也無須進行任何更改,因此完全虛擬化具有很好的兼容性,在服務(wù)器虛擬化中得到廣泛應(yīng)用。
從技術(shù)實現(xiàn)來說,完全虛擬化需要VMM能夠處理虛擬機所有可能的行為。完全虛擬化的發(fā)展經(jīng)歷了基于軟件輔助和基于硬件輔助2個階段。
核心關(guān)注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.oesoe.com/
本文標(biāo)題:云計算中服務(wù)器虛擬化技術(shù)探討(上)
本文網(wǎng)址:http://www.oesoe.com/html/consultation/1083978464.html