隨著計算機(jī)和互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展及應(yīng)用的深入,網(wǎng)絡(luò)已聚合了各種計算資源、數(shù)據(jù)資源、軟件資源以及服務(wù)資源等,但存在總量豐富但資源利用率低的矛盾。網(wǎng)絡(luò)協(xié)作、充分利用閑散資源成了最初的解決方案一網(wǎng)格計算(grid computing)。網(wǎng)格計算通過整合網(wǎng)絡(luò)中的大量閑散資源,在動態(tài)的、自治環(huán)境中協(xié)調(diào)資源共享,解決大規(guī)模的具有挑戰(zhàn)性問題。但網(wǎng)格計算自身遇到了難以突破的瓶頸,使商業(yè)應(yīng)用受到了極大的限制。近年來,隨著商業(yè)的推崇,網(wǎng)格計算演變成了今天的云計算(cloud computing),面臨如何提高數(shù)據(jù)中心資源的利用率,滿足用戶提交任務(wù)的信任需求,同時研究數(shù)據(jù)中心提供的服務(wù)和服務(wù)方式等問題閣。這些問題更接近商業(yè)化,也更容易實現(xiàn)。其中存在如何有效地提高云計算系統(tǒng)性能的關(guān)鍵問題。針對目前存在的問題,本文提出了基于虛擬化的云計算平臺,研究了其平臺的核心部分,即服務(wù)器云。虛擬化技術(shù)解決并保證了云計算平臺的高性能與高可用性,使云計算平臺在實際應(yīng)用中資源最大化、利潤最大化,同時也推動了虛擬化技術(shù)與云計算技術(shù)的快速發(fā)展。
1.虛擬化技術(shù)研究
虛擬化技術(shù)就是指把一個物理單元虛擬成多個邏輯單元,供多個應(yīng)用一起使用。這樣做的主要目的是為了提高資源的使用效率并方便管理各種資源。目前云計算模式的提出,無論是私有云,公有云,還是混合云,都需要資源的整合,統(tǒng)一資源為客戶提供服務(wù),這就要求系統(tǒng)資源具有高性能的處理能力。目前單個昂貴的服務(wù)器的處理能力僅使用到20%,造成了資源的浪費(fèi),虛擬化技術(shù)解決了上述問題,使服務(wù)器處理能力得到了充分的利用。
虛擬化技術(shù)包括內(nèi)存虛擬化、存儲虛擬化、硬件虛擬化、軟件虛擬化等各項技術(shù)。本文著重研究了服務(wù)器虛擬化,服務(wù)器虛擬化將系統(tǒng)虛擬化技術(shù)應(yīng)用于服務(wù)器上,將一個服務(wù)器虛擬成若干個服務(wù)器使用。在采用服務(wù)器虛擬化之前。3種不同的應(yīng)用分別運(yùn)行在3個獨(dú)立的物理服務(wù)器上;在采用服務(wù)器虛擬化之后,這3種應(yīng)用運(yùn)行在3個獨(dú)立的虛擬服務(wù)器上。而這3個虛擬服務(wù)器可以被一個物理服務(wù)托管。從圖中我們可以看出服務(wù)器虛擬化抽象了硬件資源。包括虛擬BIOS、虛擬CPU、虛擬內(nèi)存、虛擬設(shè)備和虛擬IO。虛擬服務(wù)器提供了良好的隔離性和安全性。
通過研究分析,我們知道,服務(wù)器虛擬化必備的是對硬件資源的虛擬化。硬件資源包括CPU、內(nèi)存、IO口。這些硬件資源的虛擬化是服務(wù)器虛擬化的核心和關(guān)鍵技術(shù)。
目前主流的服務(wù)器虛擬化技術(shù)包括兩種,即全虛擬化和半虛擬化。研究表明,虛擬化的特性為云計算平臺抽象了硬件資源,這樣對于基于SOA的云服務(wù)平臺來說是透明的,是可擴(kuò)展的,為云計算平臺的彈性設(shè)計帶來了極大的利處。針對虛擬化的全虛擬化來說,采用的技術(shù)為二進(jìn)制代碼Dynamic Binary Translation,DBT指在虛擬機(jī)運(yùn)行時。在敏感指令前插入指令將執(zhí)行陷入到虛擬機(jī)監(jiān)視器中,其優(yōu)點(diǎn)在于代碼的轉(zhuǎn)換是動態(tài)的。與全虛擬化不同的半虛擬化通過修改客戶操作系統(tǒng)來解決虛擬機(jī)執(zhí)行特權(quán)指令的問題。在本虛擬化中存在客戶機(jī)操作系統(tǒng)必須和虛擬化平臺兼容,否則虛擬機(jī)無法有效地操縱宿主機(jī),因此,本文提出的基于虛擬化云計算平臺的構(gòu)建方案是基于全虛擬化的KVM;赗edhat的虛擬化技術(shù)還具有在線遷移、快速部署等服務(wù)器管理功能。為云計算平臺提供了穩(wěn)健可靠的基礎(chǔ)資源架構(gòu)。
2.服務(wù)器云的構(gòu)建
服務(wù)器云是云計算平臺的最核心部分,所有云計算平臺中的功能及子系統(tǒng)都依賴于服務(wù)器云來實現(xiàn)。它既包括硬件服務(wù)器和底層操作系統(tǒng)部分,又包括云計算平臺中的虛擬機(jī)超級監(jiān)督器功能,是運(yùn)行虛擬系統(tǒng),功能服務(wù)器系統(tǒng)的底層基礎(chǔ)平臺。計算模式從大型機(jī)的方式逐漸過渡到微型個人計算機(jī)的方式,并且近年來過渡到普適計算上。但用戶仍然很難獲得異構(gòu)類型的操作系統(tǒng)以及應(yīng)用程序,在輕量級的設(shè)備上很難獲得完善的服務(wù)。本文研究的基于虛擬化的在云計算模式中,用戶無須感知計算具體所在位置,以及操作系統(tǒng)、中間件、應(yīng)用等技術(shù)細(xì)節(jié)。虛擬化技術(shù)使底層差異封裝為應(yīng)用的統(tǒng)一接口,用戶由同一接口只需要根據(jù)自己的需求,通過云計算平臺選取相應(yīng)的服務(wù)。