一種混合型桌面云服務(wù)平臺的兩級管理方法
【專利摘要】本發(fā)明公開的一種混合型桌面云服務(wù)平臺的兩級管理辦法,包括以下步驟:構(gòu)建混合型桌面云數(shù)據(jù)中心;服務(wù)器節(jié)點向中央管理節(jié)點(Vmm-Server)發(fā)送注冊請求;中央管理節(jié)點接收并處理服務(wù)器節(jié)點的注冊請求;中央管理節(jié)點通過服務(wù)接口層統(tǒng)一接收用戶請求;中央管理節(jié)點根據(jù)兩層調(diào)度方法響應(yīng)用戶請求;中央管理節(jié)點根據(jù)當(dāng)前的系統(tǒng)狀態(tài)和虛擬機運行狀態(tài)采用兩層遷移方法維持系統(tǒng)負載均衡。本發(fā)明的兩級管理方法,是基于混合型桌面云服務(wù)端的開放式系統(tǒng)架構(gòu)上所設(shè)計和實現(xiàn)的,能夠提高虛擬機調(diào)度和遷移效率。
【專利說明】一種混合型桌面云服務(wù)平臺的兩級管理方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及桌面云服務(wù)平臺,特別涉及一種混合型桌面云服務(wù)平臺的兩級管理辦法。
【背景技術(shù)】
[0002]云計算是目前計算機最為火熱的研究領(lǐng)域之一,桌面云作為云計算中的一種,具有易于部署、安全性高和數(shù)據(jù)集中管理的特點。桌面云能將傳統(tǒng)的桌面環(huán)境轉(zhuǎn)移到數(shù)據(jù)中心,使其與終端設(shè)備解耦,用戶能夠使用瘦客戶端等終端設(shè)備隨時隨地通過網(wǎng)絡(luò)接入屬于個人的桌面環(huán)境,提高辦公的靈活性和資源的使用率。此外,桌面云解決了傳統(tǒng)PC資源與服務(wù)器資源使用率低、運維成本高、安全系數(shù)低等問題,同時能夠彌補瘦客戶端等終端設(shè)備的計算和存儲能力的不足,充分發(fā)揮移動辦公的優(yōu)勢。
[0003]據(jù)查,上海電機學(xué)院申請了“一種基于云桌面的高校實驗教學(xué)平臺系統(tǒng)及構(gòu)造方法”專利(申請?zhí)?CN201410100306),該系統(tǒng)使用擴展的全虛擬化技術(shù)KVM等構(gòu)造虛擬機群子系統(tǒng),使用開源遠程桌面協(xié)議構(gòu)造云桌面實驗教學(xué)子系統(tǒng),雖然有效解決了當(dāng)前高校實驗教學(xué)資源困乏、管理雜亂的難題,但對于云計算資源的分配和管理并沒有一個完善的解決方案。
[0004]上海電機學(xué)院申請了“一種基于內(nèi)存資源供給調(diào)度虛擬機數(shù)量的方法及系統(tǒng)”專利(申請?zhí)?CN201410100308),該方法實現(xiàn)了一種根據(jù)虛擬機創(chuàng)建請求的到達率和系統(tǒng)創(chuàng)建虛擬機服務(wù)速率來確定虛擬機承載數(shù)量的方法,但是這種方法只考慮了服務(wù)器和客戶端系統(tǒng)內(nèi)存數(shù)量的關(guān)系,其他諸如CPU數(shù)量和性能、用戶行為等因素都未考慮,因此針對調(diào)度和資源分配問題的決定因素考慮不夠完善。
[0005]華為技術(shù)有限公司申請了“虛擬化集群系統(tǒng)、資源分配方法和管理節(jié)點”專利(申請?zhí)?CN201410073555),該專利可以在虛擬機的性能變化比較頻繁的情況下,及時調(diào)整為虛擬機分配的資源來滿足虛擬機的資源需求,這種方案對所有虛擬機的資源分配都是動態(tài)調(diào)整的,需要實時的計算,因此會增加服務(wù)器的負擔(dān),對于服務(wù)器性能的要求較高,不適用于中小規(guī)模的云集群。
[0006]浪潮(北京)電子信息產(chǎn)業(yè)有限公司申請了 “一種服務(wù)器集群中的虛擬機資源調(diào)度方法及系統(tǒng)”專利(申請?zhí)?CN201310576856),該專利通過獲取歷史數(shù)據(jù)中主機的CPU使用率,對CPU使用率較高的主機中虛擬機進行遷移來實現(xiàn)云集群資源的動態(tài)平衡,雖然在一定程度上提高了系統(tǒng)的穩(wěn)定性和適用性,但是僅考慮CPU使用率進行資源調(diào)度和分配是片面的,其他諸如內(nèi)存大小、CPU性能等也是進行資源分配的重要因素。
[0007]綜上所述,現(xiàn)有的幾種對云服務(wù)資源管理的技術(shù)方案,都存在以下三種問題:(I)資源分配和調(diào)度的參考標(biāo)準(zhǔn)不完善,僅僅從CPU使用率或內(nèi)存大小去衡量不能反映真實的資源消耗情況。(2)資源分配的動態(tài)性強,需要實時的計算其分配的資源,資源消耗大,沒有參考靜態(tài)信息和歷史數(shù)據(jù)。(3)集群管理模式單一,僅依靠單層管理模式,其資源調(diào)度系統(tǒng)不能自修正其資源分配的行為,缺乏容錯性和靈活性。
【發(fā)明內(nèi)容】
[0008]本發(fā)明的目的在于克服現(xiàn)有技術(shù)的缺點與不足,提供一種混合型桌面云服務(wù)平臺的兩級管理辦法。
[0009]本發(fā)明的目的通過以下的技術(shù)方案實現(xiàn):
[0010]一種混合型桌面云服務(wù)平臺的兩級管理辦法,包含以下順序的步驟:
[0011]S1、構(gòu)建混合型桌面云數(shù)據(jù)中心;
[0012]S2、服務(wù)器節(jié)點向中央管理節(jié)點發(fā)送注冊請求;
[0013]S3、中央管理節(jié)點接收并處理服務(wù)器節(jié)點的注冊請求;
[0014]S4、中央管理節(jié)點通過服務(wù)接口層統(tǒng)一接收用戶請求;
[0015]S5、中央管理節(jié)點根據(jù)兩層調(diào)度方法響應(yīng)用戶請求;
[0016]S6、中央管理節(jié)點根據(jù)當(dāng)前的系統(tǒng)狀態(tài)和虛擬機運行狀態(tài)采用兩層遷移方法維持系統(tǒng)負載均衡。
[0017]所述的步驟SI具體包括以下步驟:
[0018]S11、將若干臺服務(wù)器節(jié)點通過交換機連接到同一個共享存儲設(shè)備中,以構(gòu)成一個域;
[0019]S12、在共享存儲設(shè)備的文件系統(tǒng)中創(chuàng)建相應(yīng)的服務(wù)目錄和放置域節(jié)點的配置文件,并將自主研發(fā)的虛擬化服務(wù)管理程序(Vmm-node)存放到install目錄下;
[0020]S13、選取一臺服務(wù)器節(jié)點作為NFS (網(wǎng)絡(luò)文件系統(tǒng))的主節(jié)點,并將共享存儲設(shè)備中的根目錄作為NFS共享目錄,其它幾臺服務(wù)器節(jié)點通過NFS的方式訪問共享存儲設(shè)備的內(nèi)容;
[0021]S14、重復(fù)Sll?S13的步驟,倉Il建若干個域節(jié)點,并通過局域網(wǎng)連接在一起構(gòu)成數(shù)據(jù)中心;
[0022]S15、通過虛擬化技術(shù)將數(shù)據(jù)中心的每個域節(jié)點的物理資源進行池化,形成若干個資源池。
[0023]所述的步驟S2具體包括以下步驟:
[0024]S21、新部署好的服務(wù)器節(jié)點通過NFS方式讀取并運行共享存儲設(shè)備中的Vmm-Node程序,該程序作為守護進程運行;
[0025]S22、虛擬化服務(wù)管理進程收集域節(jié)點的相關(guān)信息,并獲得該節(jié)點的IP,然后計算出服務(wù)器節(jié)點的Capacity值,Capacity值表示該服務(wù)器節(jié)點所能容納的最大并行虛擬機數(shù)目;
[0026]S23、虛擬化服務(wù)管理進程將收集到的域節(jié)點配置信息和自身的Capacity值等數(shù)據(jù)作為注冊信息,發(fā)送到中央管理節(jié)點進行注冊。
[0027]所述的步驟S3具體包括以下步驟:
[0028]S31、中央管理節(jié)點跟服務(wù)器節(jié)點建立連接,主服務(wù)進程創(chuàng)建子進程響應(yīng)注冊請求;
[0029]S32、子進程將服務(wù)器節(jié)點的注冊信息更新到數(shù)據(jù)庫中,包括服務(wù)器節(jié)點的Capacity值等數(shù)據(jù)以及該服務(wù)器節(jié)點所屬域節(jié)點的數(shù)據(jù);
[0030]S33、子進程更新域節(jié)點對應(yīng)的資源池信息;
[0031]S34、中央管理節(jié)點返回成功注冊的確認(rèn)信息給服務(wù)器節(jié)點,并通過Ke印-Alive機制跟服務(wù)器節(jié)點建立心跳檢測。
[0032]所述的步驟S5具體包括以下步驟:
[0033]S51、中央管理節(jié)點的調(diào)度模塊將數(shù)據(jù)庫中的虛擬機鏡像記錄表在初始化階段加載到內(nèi)存中;
[0034]S52、中央管理節(jié)點根據(jù)用戶請求在內(nèi)存中動態(tài)生成虛擬機鏡像的配置文件;
[0035]S53、調(diào)度模塊讀取配置文件,根據(jù)用戶配置獲取當(dāng)前的調(diào)度策略;
[0036]S54、調(diào)度模塊根據(jù)虛擬機鏡像的配置信息查詢緩存在內(nèi)存中的虛擬機鏡像記錄表,判斷該虛擬機是否已經(jīng)創(chuàng)建了鏡像;
[0037]S55、如果該虛擬機已經(jīng)創(chuàng)建了鏡像,則直接獲取記錄中之前所調(diào)度的域節(jié)點作為第一層調(diào)度節(jié)點,并跳到步驟S57 ;
[0038]S56、如果該虛擬機之前沒有創(chuàng)建鏡像,則根據(jù)當(dāng)前所采用的調(diào)度策略和集群的運行狀態(tài)從集群中選擇合適的域節(jié)點作為第一層調(diào)度節(jié)點,在該域節(jié)點中根據(jù)鏡像的配置文件在共享存儲設(shè)備中創(chuàng)建虛擬機鏡像,更新緩存中的虛擬機鏡像記錄表并同步寫入到數(shù)據(jù)庫中;
[0039]S57、調(diào)度模塊讀取虛擬機鏡像記錄表,在第一層調(diào)度所選取的域節(jié)點中,根據(jù)當(dāng)前調(diào)度策略和服務(wù)器節(jié)點的運行狀態(tài)從該域節(jié)點中選擇一臺合適的服務(wù)器節(jié)點作為第二層調(diào)度節(jié)點,即當(dāng)前用于響應(yīng)用戶請求的節(jié)點;
[0040]S58、調(diào)度模塊將動態(tài)生成的虛擬機配置信息發(fā)送到步驟S57所選取的服務(wù)器節(jié)點的虛擬化服務(wù)管理進程;
[0041]S59、服務(wù)器節(jié)點根據(jù)虛擬機配置信息創(chuàng)建并啟動虛擬機,最終完成對用戶請求的響應(yīng),并由虛擬化服務(wù)管理進程將虛擬機信息更新到數(shù)據(jù)庫表中。
[0042]所述的步驟S6具體包括以下步驟:
[0043]S61、中央管理節(jié)點的遷移模塊實時獲取當(dāng)前集群各節(jié)點的負載情況和虛擬機的運行狀態(tài)信息;
[0044]S62、遷移模塊根據(jù)步驟S61所收集的信息判斷所需要執(zhí)行遷移操作的虛擬機;
[0045]S62、遷移模塊結(jié)合當(dāng)前的調(diào)度策略,根據(jù)集群各節(jié)點的負載情況判斷對待遷移的虛擬機執(zhí)行域內(nèi)遷移或者域間遷移,如果執(zhí)行域間遷移則跳到步驟S65 ;
[0046]S63、遷移模塊對待遷移的虛擬機執(zhí)行域內(nèi)遷移,即局部遷移,根據(jù)虛擬機所屬域節(jié)點的所有服務(wù)器節(jié)點的運行情況,選擇目的遷移節(jié)點;
[0047]S64、遷移模塊通過基于共享存儲和內(nèi)存預(yù)拷貝技術(shù)實現(xiàn)的域內(nèi)在線遷移方法將待遷移的虛擬機從源節(jié)點遷移到目的節(jié)點,遷移過程保持虛擬機服務(wù)的可用性;
[0048]S65、遷移模塊對待遷移的虛擬機執(zhí)行域內(nèi)遷移,即全局遷移,根據(jù)集群當(dāng)前各域節(jié)點的運行情況,選擇目的遷移的域節(jié)點,即第一層遷移節(jié)點;
[0049]S66、遷移模塊將虛擬機的鏡像通過存儲塊在線遷移技術(shù)遷移到目的域節(jié)點的共享存儲設(shè)備中;
[0050]S67、遷移模塊根據(jù)目的域節(jié)點的各服務(wù)器節(jié)點的運行情況,選擇目的遷移的服務(wù)器節(jié)點,即第二層遷移節(jié)點;
[0051]S68、遷移模塊將待遷移虛擬機遷移到目的服務(wù)器節(jié)點,在目的服務(wù)器節(jié)點上啟動該虛擬機,并在源服務(wù)器節(jié)點上的刪除該虛擬機。
[0052]本發(fā)明的工作過程:
[0053]本發(fā)明提出一種新型的桌面云架構(gòu),在這種架構(gòu)的基礎(chǔ)上發(fā)明了一種兩級管理的方法,來克服現(xiàn)有的桌面云技術(shù)方案單層調(diào)度的單一性、虛擬機遷移的局限性、系統(tǒng)規(guī)模的可擴展性差等不足。這種混合型架構(gòu)的核心構(gòu)建原則是“集中式管理,分布式部署”,數(shù)據(jù)中心由若干個“域”構(gòu)成,域是由多臺經(jīng)由交換機連接到同一共享存儲設(shè)備的服務(wù)器節(jié)點組成的。屬于同一個域的所有服務(wù)器節(jié)點,在域內(nèi)通過資源池集中管理資源,以提高域內(nèi)資源分配的便利性和調(diào)度的效率。域節(jié)點采用分布式的部署方式,不同的域節(jié)點可部署到相同或不同的機房,從而提高系統(tǒng)規(guī)模的可擴展性。這種兩級管理方法主要包含兩個方面,一是兩層調(diào)度方法,第一層調(diào)度首先將虛擬機調(diào)度到域節(jié)點,同時在域節(jié)點所對應(yīng)的共享存儲設(shè)備中創(chuàng)建虛擬機的鏡像文件,為第二層調(diào)度做準(zhǔn)備。第二層調(diào)度將根據(jù)域節(jié)點的各臺服務(wù)器節(jié)點的配置和運行狀況,選擇合適的服務(wù)器節(jié)點完成虛擬機的啟動。第二個方面是自主設(shè)計研發(fā)的兩層遷移方法,使虛擬機能夠結(jié)合系統(tǒng)當(dāng)前的負載情況和虛擬機的運行狀態(tài),將虛擬機通過在線遷移的方式進行域內(nèi)局部遷移或者域間全局遷移,從而使系統(tǒng)在局部范圍和全局范圍內(nèi)都能達到負載均衡。
[0054]本發(fā)明與現(xiàn)有技術(shù)相比,具有如下優(yōu)點和有益效果:
[0055]1、以獨創(chuàng)的混合型桌面云服務(wù)端架構(gòu)為基礎(chǔ),具有“集中式管理,分布式部署”的特點。同一域節(jié)點的服務(wù)器節(jié)點集中部署,并將所有數(shù)據(jù)都存放在共享存儲設(shè)備中,通過資源池對資源進行集中管理,在域內(nèi)實現(xiàn)資源共享,使得域節(jié)點內(nèi)的服務(wù)器節(jié)點在訪問數(shù)據(jù)時更加方便快捷,極大降低了對域內(nèi)的多臺服務(wù)器節(jié)點實行負載均衡的代價,同時能使域內(nèi)遷移變得簡單、靈活。此外,通過對域節(jié)點實行分布式部署的方式能夠打破物理機房的區(qū)域限制,使系統(tǒng)規(guī)模能進一步得到擴展。構(gòu)成域的節(jié)點服務(wù)器可以在不同的物理位置通過網(wǎng)絡(luò)互聯(lián),彼此相對獨立與隔離,對一個域節(jié)點所做的操作和變動不會影響其它域節(jié)點。
[0056]2、采用兩層調(diào)度方法對虛擬機進行調(diào)度,相對于單層調(diào)度方法更加靈活、高效,虛擬機調(diào)度的效率和實用性更高。將服務(wù)器性能的靜態(tài)信息和當(dāng)前系統(tǒng)使用情況的動態(tài)信息相結(jié)合,實現(xiàn)資源的域之間的靜態(tài)分配和域內(nèi)虛擬機動態(tài)分配的調(diào)度策略。
[0057]3、采用兩層遷移方法對虛擬機進行遷移,能夠根據(jù)系統(tǒng)各節(jié)點的負載情況有針對性的采用局部遷移或者全局遷移,使虛擬機遷移操作變得靈活、高效。遷移功能作為調(diào)度系統(tǒng)的輔助功能,能夠在單域過載的情況下實時平衡系統(tǒng)負載。遷移過程均采用了在線遷移方式,能夠保證虛擬機服務(wù)在遷移過程中不被中斷,系統(tǒng)可用性更高。
【專利附圖】
【附圖說明】
[0058]圖1是混合型桌面云服務(wù)端邏輯架構(gòu)圖;
[0059]圖2是混合型桌面云系統(tǒng)整體架構(gòu)圖;
[0060]圖3是系統(tǒng)數(shù)據(jù)中心架構(gòu)示意圖;
[0061]圖4是混合型桌面云服務(wù)端兩級管理方法的處理流程圖;
[0062]圖5是新服務(wù)器節(jié)點加入數(shù)據(jù)中心的通信架構(gòu);
[0063]圖6是服務(wù)器節(jié)點向中央管理節(jié)點注冊的時序圖;
[0064]圖7是兩層調(diào)度方法的流程圖;
[0065]圖8是內(nèi)存遷移的預(yù)拷貝機制循環(huán)迭代過程圖;
[0066]圖9是虛擬機遷移過程的流程圖。
【具體實施方式】
[0067]下面結(jié)合實施例及附圖對本發(fā)明作進一步詳細的描述,但本發(fā)明的實施方式不限于此。
[0068]本發(fā)明方法基于混合型桌面云服務(wù)端架構(gòu)進行設(shè)計,整個桌面云服務(wù)端包括以下五個核心組成部分:數(shù)據(jù)中心(Data Center)、服務(wù)端中央管理節(jié)點(Vmm-Server)、調(diào)度模塊、遷移模塊和監(jiān)控模塊。數(shù)據(jù)中心是整個架構(gòu)的基礎(chǔ),所有資源集中存放在數(shù)據(jù)中心,用于集中管理資源,提供虛擬桌面實際的運行環(huán)境。而服務(wù)端中央管理節(jié)點負責(zé)處理和響應(yīng)各種用戶請求,通過通信協(xié)議與數(shù)據(jù)中心進行交互,對數(shù)據(jù)中心的資源進行管理。調(diào)度模塊負責(zé)完成虛擬機和虛擬資源的調(diào)度與分配職能,遷移模塊則完成對虛擬機和虛擬資源的遷移功能,輔助調(diào)度模塊實現(xiàn)系統(tǒng)的負載均衡。監(jiān)控模塊負責(zé)完成虛擬機運行狀態(tài)和系統(tǒng)集群運行狀態(tài)的監(jiān)控。
[0069]如圖1所示,系統(tǒng)采用了分層設(shè)計思想進行設(shè)計,從邏輯上根據(jù)職責(zé)的不同將系統(tǒng)劃分為四個不同層次,自底向上分別為物理層、虛擬化層(virtualizat1n)、管理層和服務(wù)接口層。物理層包括服務(wù)器主機、交換機設(shè)備、共享存儲設(shè)備、路由器設(shè)備等所有構(gòu)成資源池的硬件設(shè)備,這些硬件設(shè)備共同向上層提供基礎(chǔ)資源。服務(wù)器主機主要提供計算資源和內(nèi)存資源,共享存儲設(shè)備負責(zé)提供存儲資源,交換機和路由器設(shè)備則提供網(wǎng)絡(luò)資源。虛擬化層的作用在于使用不同的虛擬化技術(shù)對物理層提供的資源進行池化,分別創(chuàng)建計算池、存儲池和網(wǎng)絡(luò)池,這三種池整合在一起共同組成資源池,統(tǒng)一向上層提供虛擬資源。管理層用于對整個虛擬機的運行環(huán)境進行管理,主要包括對虛擬機的管理以及資源的管理。這部分是整個系統(tǒng)的核心,負責(zé)響應(yīng)服務(wù)接口層的調(diào)用,完成對用戶請求的處理和響應(yīng),在系統(tǒng)中起到承上啟下的作用。服務(wù)接口層用于為上層應(yīng)用的業(yè)務(wù)系統(tǒng)提供服務(wù)接口,采用統(tǒng)一的API供上層應(yīng)用的業(yè)務(wù)系統(tǒng)進行調(diào)用,方便上層應(yīng)用基于HDCS (Hybrid Desktop CloudServer),即混合型桌面云服務(wù)進行二次開發(fā)。此外,服務(wù)接口層還用于統(tǒng)一接收用戶請求,對請求進行封裝,然后根據(jù)請求的類型傳給相應(yīng)的管理層模塊進行處理。
[0070]為了實現(xiàn)系統(tǒng)中各個層次之間的松耦合關(guān)系,層與層之間采用接口調(diào)用的方式進行交互,下層通過接口向上層提供服務(wù)。而每層的模塊與模塊之間則基于消息傳輸?shù)慕换C制,模塊間彼此通過消息傳遞進行通信。這兩種交互方式使得層與層之間、模塊與模塊之間的交互與彼此的具體實現(xiàn)無關(guān),進而大大提高了整個系統(tǒng)的可維護性。
[0071]本發(fā)明方法基于混合型桌面云服務(wù)端架構(gòu)進行設(shè)計,在一個較佳的實施例中,可以應(yīng)用到云實驗室場景中。如圖2所示,應(yīng)用于云實驗室的實施例,包括上層業(yè)務(wù)邏輯系統(tǒng)的云實驗室系統(tǒng)客戶端和服務(wù)端,以及混合型桌面云服務(wù)端?;旌闲妥烂嬖品?wù)端作為通用性桌面云平臺,為云實驗室系統(tǒng)提供學(xué)生上機實驗所用的虛擬桌面服務(wù),而云實驗室系統(tǒng)則負責(zé)處理上層的業(yè)務(wù)邏輯。其中,云實驗教學(xué)管理系統(tǒng)可采用華工IBM實訓(xùn)中心實驗室所研發(fā)的云實驗教學(xué)管理系統(tǒng)。學(xué)生通過云實驗教學(xué)管理系統(tǒng)的云客戶端進行上機實驗,當(dāng)?shù)顷懙綄嶒灜h(huán)境時,云客戶端發(fā)送請求到混合型桌面云服務(wù)端請求虛擬桌面服務(wù)。在實施例中,數(shù)據(jù)中心的服務(wù)器節(jié)點可采用Dell PowerEdge R720服務(wù)器(服務(wù)器配備6核CPU和64G內(nèi)存)或HP DL380p G8服務(wù)器(服務(wù)器配備2*10核CPU和128G內(nèi)存),而共享存儲設(shè)備可采用IBM的Storwize V3500V6.4.1、EMC VNX5400磁盤陣列或日立HUS130,每個域節(jié)點的共享存儲容量為10T。實施例采用2個域節(jié)點,每個域節(jié)點配備2臺服務(wù)器節(jié)點和一臺共享存儲設(shè)備,服務(wù)器節(jié)點通過交換機連接到共享存儲設(shè)備。選取IP地址最小的服務(wù)器節(jié)點作為NFS主節(jié)點,將共享存儲設(shè)備中的根目錄作為共享目錄,其它服務(wù)器節(jié)點通過NFS方式訪問共享存儲設(shè)備內(nèi)容。兩個域節(jié)點分別部署到不同的機房中,并通過千兆局域網(wǎng)連接到中央管理節(jié)點。云客戶端可部署在聯(lián)想啟天M4600型號的PC機,采用單核的奔騰四CPU、256M內(nèi)存。云客戶端用于接收用戶的輸入信息,并將用戶指令發(fā)送到云實驗教學(xué)管理系統(tǒng)的服務(wù)端進行處理,當(dāng)需要使用虛擬桌面服務(wù)時,將直接調(diào)用混合型桌面云服務(wù)端所提供的服務(wù)。
[0072]本發(fā)明基于混合型桌面云服務(wù)端架構(gòu)的兩級管理方法,其基本處理流程圖如圖4所示,包括如下步驟:
[0073]S1、構(gòu)建混合型桌面云數(shù)據(jù)中心?;旌闲妥烂嬖茢?shù)據(jù)中心是整個混合型桌面云服務(wù)端架構(gòu)的基礎(chǔ),所發(fā)明的兩級管理方法也是在這個基礎(chǔ)上所設(shè)計與實現(xiàn)的,通過數(shù)據(jù)中心統(tǒng)一存放資源,并提供虛擬桌面真是的運行環(huán)境。在構(gòu)建數(shù)據(jù)中心時,需要規(guī)劃好數(shù)據(jù)中心的每個域節(jié)點的部署地點,每個域節(jié)點所包含的服務(wù)器節(jié)點數(shù)目需要結(jié)合機房的大小以及交換機的端口數(shù)進行規(guī)劃。數(shù)據(jù)中心的構(gòu)成如圖3所示,其構(gòu)建過程主要包括以下步驟:
[0074]S11、在同一個域中,將若干臺服務(wù)器節(jié)點通過交換機連接到同一個共享存儲設(shè)備中;
[0075]S12、在共享存儲設(shè)備的文件系統(tǒng)中創(chuàng)建相應(yīng)的服務(wù)目錄和放置域節(jié)點的配置文件,并將自主研發(fā)的虛擬化服務(wù)管理程序(Vmm-node)存放到install目錄下;
[0076]S13、選取一臺服務(wù)器節(jié)點作為NFS的主節(jié)點,并將共享存儲設(shè)備中的根目錄作為NFS共享目錄,其它幾臺服務(wù)器節(jié)點通過NFS的方式訪問共享存儲設(shè)備的內(nèi)容;
[0077]S14、重復(fù)Sll?S13的步驟,倉Il建若干個域節(jié)點,并通過局域網(wǎng)連接在一起構(gòu)成數(shù)據(jù)中心;
[0078]S15、通過虛擬化技術(shù)將數(shù)據(jù)中心的每個域節(jié)點的物理資源進行池化,形成若干個資源池;
[0079]S2、服務(wù)器節(jié)點向管理節(jié)點發(fā)送注冊請求。在步驟SI中構(gòu)建好數(shù)據(jù)中心后,在每個機房中已經(jīng)部署好的服務(wù)器節(jié)點需要向中央管理節(jié)點發(fā)送注冊請求,申請加入數(shù)據(jù)中心。新服務(wù)器節(jié)點加入數(shù)據(jù)中心的通信架構(gòu)如圖5所示,每臺服務(wù)器節(jié)點在初始化時會通過虛擬化服務(wù)管理進程與中央管理節(jié)點的Vmm-Server (桌面云管理系統(tǒng))服務(wù)進程建立連接。服務(wù)器節(jié)點向中央管理節(jié)點注冊的時序圖如圖6所示,主要包括以下步驟:
[0080]S21、新部署好的服務(wù)器節(jié)點通過NFS方式讀取并運行共享存儲設(shè)備中的虛擬化服務(wù)管理程序(Vmm-node),該程序作為守護進程運行。在配置域節(jié)點時,當(dāng)配置好NFS的共享目錄后,會將虛擬化服務(wù)管理程序(Vmm-node)放置于共享存儲的/install目錄下,同一域節(jié)點的所有服務(wù)器節(jié)點都能通過NFS方式訪問并運行該程序;
[0081]S22、虛擬化服務(wù)管理進程收集域節(jié)點的相關(guān)信息,并獲得該節(jié)點的IP,然后計算出服務(wù)器節(jié)點的Capacity值(表示該服務(wù)器節(jié)點所能容納的最大并行虛擬機數(shù)目)。虛擬化服務(wù)管理進程通過獲取到該服務(wù)器節(jié)點的處理器、內(nèi)存等信息來計算出Capacity值;
[0082]S23、虛擬化服務(wù)管理進程將收集到的域節(jié)點配置信息和自身的Capacity值等數(shù)據(jù)作為注冊信息,發(fā)送到中央管理節(jié)點進行注冊;
[0083]S3、中央管理節(jié)點接收并處理服務(wù)器節(jié)點的注冊請求。中央管理節(jié)點的服務(wù)進程一直在監(jiān)聽服務(wù)器節(jié)點守護進程的連接請求,當(dāng)收到新的連接請求時,將由子進程完成對注冊流程的處理。中央管理節(jié)點對服務(wù)器節(jié)點的注冊請求處理流程主要包括以下步驟:
[0084]S31、中央管理節(jié)點跟服務(wù)器節(jié)點建立連接,主服務(wù)進程創(chuàng)建子進程響應(yīng)注冊請求;
[0085]S32、子進程將服務(wù)器節(jié)點的注冊信息更新到數(shù)據(jù)庫中,包括服務(wù)器節(jié)點的Capacity值等數(shù)據(jù)以及該服務(wù)器節(jié)點所屬域節(jié)點的數(shù)據(jù)。更新完信息后,該服務(wù)器節(jié)點的狀態(tài)變?yōu)榭捎?,并實時被調(diào)度模塊和遷移模塊所獲知;
[0086]S33、子進程更新域節(jié)點對應(yīng)的資源池信息。系統(tǒng)通過虛擬化模塊將新添加的服務(wù)器節(jié)點的物理資源進行池化,并相應(yīng)地更新資源池的容量,主要更新資源池的計算資源和內(nèi)存資源;
[0087]S34、中央管理節(jié)點返回成功注冊的確認(rèn)信息給服務(wù)器節(jié)點,并通過Ke印-Alive機制跟服務(wù)器節(jié)點建立心跳檢測。中央管理節(jié)點通過與服務(wù)器節(jié)點建立心跳檢測,能夠?qū)崟r獲知到服務(wù)器節(jié)點的退出,從而對服務(wù)器節(jié)點進行注銷,并更新數(shù)據(jù)庫的相應(yīng)數(shù)據(jù);
[0088]S4、中央管理節(jié)點通過服務(wù)接口層統(tǒng)一接收用戶請求。服務(wù)接口層用于為上層應(yīng)用的業(yè)務(wù)系統(tǒng)提供服務(wù)接口,采用統(tǒng)一的API供上層應(yīng)用的業(yè)務(wù)系統(tǒng)進行調(diào)用,方便上層應(yīng)用基于混合型桌面云服務(wù)端進行二次開發(fā)。此外,服務(wù)接口層還用于統(tǒng)一接收用戶請求,對請求進行封裝,然后根據(jù)請求的類型傳給相應(yīng)的管理層模塊進行處理;
[0089]S5、中央管理節(jié)點根據(jù)兩層調(diào)度方法響應(yīng)用戶請求。本發(fā)明所設(shè)計與實現(xiàn)的兩層調(diào)度方法是基于混合型桌面云服務(wù)端架構(gòu)的,概要來說,第一層調(diào)度將從集群中根據(jù)調(diào)度策略選取域節(jié)點,然后在該域節(jié)點的共享存儲目錄下創(chuàng)建虛擬機的鏡像。第二層調(diào)度將從第一層調(diào)度所選取的域節(jié)點中根據(jù)當(dāng)前所采用的調(diào)度策略選擇一臺合適的服務(wù)器節(jié)點,并由該服務(wù)器節(jié)點完成對用戶請求的響應(yīng)。這種兩層調(diào)度的方法相對于單層調(diào)度方式,能夠提高虛擬機調(diào)度的靈活性和效率。本發(fā)明的兩層調(diào)度方法的處理流程如圖7所示,主要包括以下步驟:
[0090]S51、中央管理節(jié)點的調(diào)度模塊將數(shù)據(jù)庫中的虛擬機鏡像記錄表在初始化階段加載到內(nèi)存中;
[0091]S52、中央管理節(jié)點根據(jù)用戶請求在內(nèi)存中動態(tài)生成虛擬機鏡像的配置文件;
[0092]S53、調(diào)度模塊讀取配置文件,根據(jù)用戶配置獲取當(dāng)前的調(diào)度策略。
[0093]S54、調(diào)度模塊根據(jù)虛擬機鏡像的配置信息查詢緩存在內(nèi)存中的虛擬機鏡像記錄表,判斷該虛擬機是否已經(jīng)創(chuàng)建了鏡像;
[0094]S55、如果該虛擬機已經(jīng)創(chuàng)建了鏡像,則直接獲取記錄中之前所調(diào)度的域節(jié)點作為第一層調(diào)度節(jié)點,并跳到步驟S57 ;
[0095]S56、如果該虛擬機之前沒有創(chuàng)建鏡像,則根據(jù)當(dāng)前所采用的調(diào)度策略和集群的運行狀態(tài)從集群中選擇合適的域節(jié)點作為第一層調(diào)度節(jié)點,在該域節(jié)點中根據(jù)鏡像的配置文件在共享存儲設(shè)備中創(chuàng)建虛擬機鏡像,更新緩存中的虛擬機鏡像記錄表并同步寫入到數(shù)據(jù)庫中;
[0096]S57、調(diào)度模塊讀取虛擬機鏡像記錄表,在第一層調(diào)度所選取的域節(jié)點中,根據(jù)當(dāng)前調(diào)度策略和服務(wù)器節(jié)點的運行狀態(tài)從該域節(jié)點中選擇一臺合適的服務(wù)器節(jié)點作為第二層調(diào)度節(jié)點,即當(dāng)前用于響應(yīng)用戶請求的節(jié)點;
[0097]S58、調(diào)度模塊將動態(tài)生成的虛擬機配置信息發(fā)送到步驟S57所選取的服務(wù)器節(jié)點的虛擬化服務(wù)管理進程;
[0098]S59、服務(wù)器節(jié)點根據(jù)虛擬機配置信息創(chuàng)建并啟動虛擬機,最終完成對用戶請求的響應(yīng),并由虛擬化服務(wù)管理進程將虛擬機信息更新到數(shù)據(jù)庫表中;
[0099]S6、中央管理節(jié)點根據(jù)當(dāng)前的系統(tǒng)狀態(tài)和虛擬機運行狀態(tài)采用兩層遷移方法維持系統(tǒng)負載均衡。本發(fā)明的兩層遷移方法能夠根據(jù)系統(tǒng)各節(jié)點的負載情況有針對性的采用局部遷移或者全局遷移,使虛擬機遷移操作變得靈活、高效。遷移過程均采用了在線遷移方式,其核心技術(shù)是基于預(yù)拷貝機制的內(nèi)存遷移技術(shù),預(yù)拷貝機制的內(nèi)存拷貝迭代過程如圖8所示,能夠保證虛擬機服務(wù)在遷移過程中不被中斷,系統(tǒng)可用性更高。本發(fā)明的兩層遷移方法處理流程如圖9所示,主要包括以下步驟:
[0100]S61、中央管理節(jié)點的遷移模塊實時獲取當(dāng)前集群各節(jié)點的負載情況和虛擬機的運行狀態(tài)信息;
[0101]S62、遷移模塊根據(jù)步驟S61所收集的信息判斷所需要執(zhí)行遷移操作的虛擬機;
[0102]S62、遷移模塊結(jié)合當(dāng)前的調(diào)度策略,根據(jù)集群各節(jié)點的負載情況判斷對待遷移的虛擬機執(zhí)行域內(nèi)遷移或者域間遷移,如果執(zhí)行域間遷移則跳到步驟S65 ;
[0103]S63、遷移模塊對待遷移的虛擬機執(zhí)行域內(nèi)遷移,即局部遷移,根據(jù)虛擬機所屬域節(jié)點的所有服務(wù)器節(jié)點的運行情況,選擇目的遷移節(jié)點;
[0104]S64、遷移模塊通過基于共享存儲和內(nèi)存預(yù)拷貝技術(shù)實現(xiàn)的域內(nèi)在線遷移方法將待遷移的虛擬機從源節(jié)點遷移到目的節(jié)點,遷移過程保持虛擬機服務(wù)的可用性;
[0105]S65、遷移模塊對待遷移的虛擬機執(zhí)行域內(nèi)遷移,即全局遷移,根據(jù)集群當(dāng)前各域節(jié)點的運行情況,選擇目的遷移的域節(jié)點,即第一層遷移節(jié)點;
[0106]S66、遷移模塊將虛擬機的鏡像通過存儲塊在線遷移技術(shù)遷移到目的域節(jié)點的共享存儲設(shè)備中;
[0107]S67、遷移模塊根據(jù)目的域節(jié)點的各服務(wù)器節(jié)點的運行情況,選擇目的遷移的服務(wù)器節(jié)點,即第二層遷移節(jié)點;
[0108]S68、遷移模塊將待遷移虛擬機遷移到目的服務(wù)器節(jié)點,在目的服務(wù)器節(jié)點上啟動該虛擬機,并在源服務(wù)器節(jié)點上的刪除該虛擬機。
[0109]上述實施例為本發(fā)明較佳的實施方式,但本發(fā)明的實施方式并不受上述實施例的限制,其他的任何未背離本發(fā)明的精神實質(zhì)與原理下所作的改變、修飾、替代、組合、簡化,均應(yīng)為等效的置換方式,都包含在本發(fā)明的保護范圍之內(nèi)。
【權(quán)利要求】
1.一種混合型桌面云服務(wù)平臺的兩級管理辦法,其特征在于,包含以下順序的步驟: S1、構(gòu)建混合型桌面云數(shù)據(jù)中心; S2、服務(wù)器節(jié)點向中央管理節(jié)點發(fā)送注冊請求; S3、中央管理節(jié)點接收并處理服務(wù)器節(jié)點的注冊請求; S4、中央管理節(jié)點通過服務(wù)接口層統(tǒng)一接收用戶請求; S5、中央管理節(jié)點根據(jù)兩層調(diào)度方法響應(yīng)用戶請求; S6、中央管理節(jié)點根據(jù)當(dāng)前的系統(tǒng)狀態(tài)和虛擬機運行狀態(tài)采用兩層遷移方法維持系統(tǒng)負載均衡。
2.根據(jù)權(quán)利要求1所述的混合型桌面云服務(wù)平臺的兩級管理辦法,其特征在于,所述的步驟SI具體包括以下步驟: S11、將若干臺服務(wù)器節(jié)點通過交換機連接到同一個共享存儲設(shè)備中,以構(gòu)成一個域; S12、在共享存儲設(shè)備的文件系統(tǒng)中創(chuàng)建相應(yīng)的服務(wù)目錄和放置域節(jié)點的配置文件,并將自主研發(fā)的虛擬化服務(wù)管理程序存放到install目錄下; S13、選取一臺服務(wù)器節(jié)點作為NFS的主節(jié)點,并將共享存儲設(shè)備中的根目錄作為NFS共享目錄,其它幾臺服務(wù)器節(jié)點通過NFS的方式訪問共享存儲設(shè)備的內(nèi)容; S14、重復(fù)Sll?S13的步驟,創(chuàng)建若干個域節(jié)點,并通過局域網(wǎng)連接在一起構(gòu)成數(shù)據(jù)中心; S15、通過虛擬化技術(shù)將數(shù)據(jù)中心的每個域節(jié)點的物理資源進行池化,形成若干個資源池。
3.根據(jù)權(quán)利要求1所述的混合型桌面云服務(wù)平臺的兩級管理辦法,其特征在于,所述的步驟S2具體包括以下步驟: S21、新部署好的服務(wù)器節(jié)點通過NFS方式讀取并運行共享存儲設(shè)備中的虛擬化服務(wù)管理程序(Vmm-Node)程序,該程序作為守護進程運行;S22、虛擬化服務(wù)管理進程收集域節(jié)點的相關(guān)信息,并獲得該節(jié)點的IP,然后計算出服務(wù)器節(jié)點的Capacity值,Capacity值表示該服務(wù)器節(jié)點所能容納的最大并行虛擬機數(shù)目; S23、虛擬化服務(wù)管理進程將收集到的域節(jié)點配置信息和自身的Capacity值等數(shù)據(jù)作為注冊信息,發(fā)送到中央管理節(jié)點進行注冊。
4.根據(jù)權(quán)利要求1所述的混合型桌面云服務(wù)平臺的兩級管理辦法,其特征在于,所述的步驟S3具體包括以下步驟: S31、中央管理節(jié)點跟服務(wù)器節(jié)點建立連接,主服務(wù)進程創(chuàng)建子進程響應(yīng)注冊請求; S32、子進程將服務(wù)器節(jié)點的注冊信息更新到數(shù)據(jù)庫中,包括服務(wù)器節(jié)點的Capacity值等數(shù)據(jù)以及該服務(wù)器節(jié)點所屬域節(jié)點的數(shù)據(jù); S33、子進程更新域節(jié)點對應(yīng)的資源池信息; S34、中央管理節(jié)點返回成功注冊的確認(rèn)信息給服務(wù)器節(jié)點,并通過Keep-Alive機制跟服務(wù)器節(jié)點建立心跳檢測。
5.根據(jù)權(quán)利要求1所述的混合型桌面云服務(wù)平臺的兩級管理辦法,其特征在于,所述的步驟S5具體包括以下步驟: S51、中央管理節(jié)點的調(diào)度模塊將數(shù)據(jù)庫中的虛擬機鏡像記錄表在初始化階段加載到內(nèi)存中; S52、中央管理節(jié)點根據(jù)用戶請求在內(nèi)存中動態(tài)生成虛擬機鏡像的配置文件; S53、調(diào)度模塊讀取配置文件,根據(jù)用戶配置獲取當(dāng)前的調(diào)度策略; S54、調(diào)度模塊根據(jù)虛擬機鏡像的配置信息查詢緩存在內(nèi)存中的虛擬機鏡像記錄表,判斷該虛擬機是否已經(jīng)創(chuàng)建了鏡像; S55、如果該虛擬機已經(jīng)創(chuàng)建了鏡像,則直接獲取記錄中之前所調(diào)度的域節(jié)點作為第一層調(diào)度節(jié)點,并跳到步驟S57 ; S56、如果該虛擬機之前沒有創(chuàng)建鏡像,則根據(jù)當(dāng)前所采用的調(diào)度策略和集群的運行狀態(tài)從集群中選擇合適的域節(jié)點作為第一層調(diào)度節(jié)點,在該域節(jié)點中根據(jù)鏡像的配置文件在共享存儲設(shè)備中創(chuàng)建虛擬機鏡像,更新緩存中的虛擬機鏡像記錄表并同步寫入到數(shù)據(jù)庫中; S57、調(diào)度模塊讀取虛擬機鏡像記錄表,在第一層調(diào)度所選取的域節(jié)點中,根據(jù)當(dāng)前調(diào)度策略和服務(wù)器節(jié)點的運行狀態(tài)從該域節(jié)點中選擇一臺合適的服務(wù)器節(jié)點作為第二層調(diào)度節(jié)點,即當(dāng)前用于響應(yīng)用戶請求的節(jié)點; S58、調(diào)度模塊將動態(tài)生成的虛擬機配置信息發(fā)送到步驟S57所選取的服務(wù)器節(jié)點的虛擬化服務(wù)管理進程; S59、服務(wù)器節(jié)點根據(jù)虛擬機配置信息創(chuàng)建并啟動虛擬機,最終完成對用戶請求的響應(yīng),并由虛擬化服務(wù)管理進程將虛擬機信息更新到數(shù)據(jù)庫表中。
6.根據(jù)權(quán)利要求1所述的混合型桌面云服務(wù)平臺的兩級管理辦法,其特征在于,所述的步驟S6具體包括以下步驟: S61、中央管理節(jié)點的遷移模塊實時獲取當(dāng)前集群各節(jié)點的負載情況和虛擬機的運行狀態(tài)信息; S62、遷移模塊根據(jù)步驟S61所收集的信息判斷所需要執(zhí)行遷移操作的虛擬機; S62、遷移模塊結(jié)合當(dāng)前的調(diào)度策略,根據(jù)集群各節(jié)點的負載情況判斷對待遷移的虛擬機執(zhí)行域內(nèi)遷移或者域間遷移,如果執(zhí)行域間遷移則跳到步驟S65 ; S63、遷移模塊對待遷移的虛擬機執(zhí)行域內(nèi)遷移,即局部遷移,根據(jù)虛擬機所屬域節(jié)點的所有服務(wù)器節(jié)點的運行情況,選擇目的遷移節(jié)點; S64、遷移模塊通過基于共享存儲和內(nèi)存預(yù)拷貝技術(shù)實現(xiàn)的域內(nèi)在線遷移方法將待遷移的虛擬機從源節(jié)點遷移到目的節(jié)點,遷移過程保持虛擬機服務(wù)的可用性; S65、遷移模塊對待遷移的虛擬機執(zhí)行域內(nèi)遷移,即全局遷移,根據(jù)集群當(dāng)前各域節(jié)點的運行情況,選擇目的遷移的域節(jié)點,即第一層遷移節(jié)點; S66、遷移模塊將虛擬機的鏡像通過存儲塊在線遷移技術(shù)遷移到目的域節(jié)點的共享存儲設(shè)備中; S67、遷移模塊根據(jù)目的域節(jié)點的各服務(wù)器節(jié)點的運行情況,選擇目的遷移的服務(wù)器節(jié)點,即第二層遷移節(jié)點; s68、遷移模塊將待遷移虛擬機遷移到目的服務(wù)器節(jié)點,在目的服務(wù)器節(jié)點上啟動該虛擬機,并在源服務(wù)器節(jié)點上的刪除該虛擬機。
【文檔編號】H04L29/08GK104253865SQ201410479717
【公開日】2014年12月31日 申請日期:2014年9月18日 優(yōu)先權(quán)日:2014年9月18日
【發(fā)明者】王振宇, 李冠煜, 胡觀兵, 劉添龍, 時鈺森, 劉青恒, 湯峰 申請人:華南理工大學(xué)