亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

Vm開(kāi)機(jī)方法、vmm、共享存儲(chǔ)系統(tǒng)、vdi系統(tǒng)及物理主的制造方法

文檔序號(hào):6500732閱讀:152來(lái)源:國(guó)知局
Vm開(kāi)機(jī)方法、vmm、共享存儲(chǔ)系統(tǒng)、vdi系統(tǒng)及物理主的制造方法
【專利摘要】本發(fā)明實(shí)施例提供一種VM開(kāi)機(jī)方法,VMM,共享存儲(chǔ)系統(tǒng),VDI系統(tǒng)及物理主機(jī);其中,虛擬機(jī)開(kāi)機(jī)方法包括:檢測(cè)虛擬機(jī)當(dāng)前所處于的開(kāi)機(jī)階段;若所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段,則向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息,建立所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接;若所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段,則向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息,釋放所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接。本發(fā)明實(shí)施例提高了網(wǎng)絡(luò)帶寬的利用率,減少了虛擬機(jī)的開(kāi)機(jī)時(shí)間。
【專利說(shuō)明】VM開(kāi)機(jī)方法、WIM、共享存儲(chǔ)系統(tǒng)、VDI系統(tǒng)及物理主機(jī)

【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及虛擬機(jī)技術(shù),更具體地說(shuō),涉及一種VM (virtual machine,虛擬機(jī))開(kāi)機(jī)方法、VMM (virtual machine monitor,虛擬機(jī)監(jiān)視器)、共享存儲(chǔ)系統(tǒng)、VDI (virtualdesktop Infrastructure,虛擬桌面基礎(chǔ)架構(gòu))系統(tǒng)及物理主機(jī)。

【背景技術(shù)】
[0002]VDI作為一種新興技術(shù),目前已越來(lái)越受到人們的重視。在VDI應(yīng)用環(huán)境下,用戶可通過(guò)在數(shù)據(jù)中心的服務(wù)器運(yùn)行操作系統(tǒng)(如Windows XP,Vista等),將用戶桌面進(jìn)行虛擬化,即在服務(wù)器中虛擬出一個(gè)與用戶本地安裝的桌面一樣的虛擬桌面;用戶通過(guò)客戶端設(shè)備(客戶機(jī)或是家用PC)與虛擬桌面進(jìn)行連接,可以達(dá)到訪問(wèn)虛擬桌面就像是訪問(wèn)本地安裝桌面一樣的效果。VDI同樣是基于虛擬機(jī)技術(shù),在VDI應(yīng)用環(huán)境下,虛擬機(jī)一般運(yùn)行在數(shù)據(jù)中心內(nèi)的物理主機(jī)內(nèi),出于提高數(shù)據(jù)中心的利用率、容錯(cuò)能力以及功耗效率等原因,虛擬機(jī)的磁盤(pán)鏡像一般存儲(chǔ)于共享存儲(chǔ)系統(tǒng)內(nèi),該共享存儲(chǔ)系統(tǒng)可以是區(qū)別于物理主機(jī)的服務(wù)器等電子設(shè)備,當(dāng)大量的虛擬機(jī)同時(shí)開(kāi)機(jī)時(shí),每個(gè)虛擬機(jī)都需要從共享存儲(chǔ)系統(tǒng)中讀取磁盤(pán)鏡像,從而實(shí)現(xiàn)虛擬機(jī)的啟動(dòng)。
[0003]發(fā)明人在實(shí)現(xiàn)本發(fā)明的過(guò)程中發(fā)現(xiàn):虛擬機(jī)若要從共享存儲(chǔ)系統(tǒng)中讀取磁盤(pán)鏡像,則需要與共享存儲(chǔ)系統(tǒng)建立網(wǎng)絡(luò)連接,進(jìn)行數(shù)據(jù)的讀?。蝗欢摂M機(jī)開(kāi)機(jī)需要一個(gè)較長(zhǎng)的過(guò)程,現(xiàn)有技術(shù)虛擬機(jī)在開(kāi)機(jī)過(guò)程中始終與共享存儲(chǔ)系統(tǒng)保持網(wǎng)絡(luò)連接,當(dāng)大量虛擬機(jī)同時(shí)處于開(kāi)機(jī)狀態(tài)時(shí),將造成網(wǎng)絡(luò)帶寬不足的問(wèn)題,形成開(kāi)機(jī)風(fēng)暴??梢钥闯觯F(xiàn)有虛擬機(jī)在開(kāi)機(jī)過(guò)程中始終與共享存儲(chǔ)系統(tǒng)保持網(wǎng)絡(luò)連接的開(kāi)機(jī)方式,將導(dǎo)致網(wǎng)絡(luò)帶寬的浪費(fèi),網(wǎng)絡(luò)帶寬的利用率不高,影響虛擬機(jī)的開(kāi)機(jī)時(shí)間的問(wèn)題。


【發(fā)明內(nèi)容】

[0004]有鑒于此,本發(fā)明實(shí)施例提供一種虛擬機(jī)開(kāi)機(jī)方法,虛擬機(jī)監(jiān)視器、共享存儲(chǔ)系統(tǒng)、虛擬桌面基礎(chǔ)架構(gòu)系統(tǒng)及物理主機(jī),以解決現(xiàn)有技術(shù)導(dǎo)致網(wǎng)絡(luò)帶寬的浪費(fèi),網(wǎng)絡(luò)帶寬的利用率不高的問(wèn)題。
[0005]為實(shí)現(xiàn)上述目的,本發(fā)明實(shí)施例提供如下技術(shù)方案:
[0006]第一方面,本發(fā)明實(shí)施例提供一種虛擬機(jī)VM開(kāi)機(jī)方法,包括:
[0007]檢測(cè)虛擬機(jī)當(dāng)前所處于的開(kāi)機(jī)階段;
[0008]若所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段,則向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息,建立所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接;
[0009]若所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段,則向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息,釋放所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接。
[0010]結(jié)合第一方面,在第一方面的第一種可能的實(shí)現(xiàn)方式中,
[0011]所述虛擬機(jī)的開(kāi)機(jī)階段包括:讀取內(nèi)核階段,啟動(dòng)內(nèi)核階段,和讀取模塊階段;
[0012]所述由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段包括:進(jìn)入讀取內(nèi)核階段,或,由啟動(dòng)內(nèi)核階段進(jìn)入到讀取模塊階段;
[0013]所述由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段包括:由讀取內(nèi)核階段進(jìn)入到啟動(dòng)內(nèi)核階段,或,結(jié)束讀取模塊階段。
[0014]第二方面,本發(fā)明實(shí)施例提供一種虛擬機(jī)監(jiān)視器,包括:
[0015]開(kāi)機(jī)階段檢測(cè)模塊,用于檢測(cè)虛擬機(jī)當(dāng)前所處于的開(kāi)機(jī)階段;
[0016]網(wǎng)絡(luò)連接建立模塊,用于在所述開(kāi)機(jī)階段檢測(cè)模塊所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段時(shí),向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息,建立所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接;
[0017]網(wǎng)絡(luò)連接釋放模塊,用于在所述開(kāi)機(jī)階段檢測(cè)模塊所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段時(shí),向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息,釋放所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接。
[0018]第三方面,本發(fā)明實(shí)施例提供一種虛擬機(jī)開(kāi)機(jī)方法,包括:
[0019]當(dāng)虛擬機(jī)狀態(tài)由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段時(shí),接收建立網(wǎng)絡(luò)連接的請(qǐng)求信息,建立所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接;
[0020] 當(dāng)虛擬機(jī)狀態(tài)由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段時(shí),接收釋放網(wǎng)絡(luò)連接的請(qǐng)求信息,釋放所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接。
[0021]第四方面,本發(fā)明實(shí)施例提供一種共享存儲(chǔ)系統(tǒng),包括:
[0022]連接建立請(qǐng)求接收模塊,用于當(dāng)虛擬機(jī)狀態(tài)由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段時(shí),接收建立網(wǎng)絡(luò)連接的請(qǐng)求信息;
[0023]連接建立模塊,用于在接收建立網(wǎng)絡(luò)連接的請(qǐng)求信息后,建立所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接;
[0024]連接釋放請(qǐng)求接收模塊,用于當(dāng)虛擬機(jī)狀態(tài)由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段時(shí),接收釋放網(wǎng)絡(luò)連接的請(qǐng)求信息;
[0025]連接釋放模塊,用于在接收釋放網(wǎng)絡(luò)連接的請(qǐng)求信息后,釋放所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接。
[0026]第五方面,本發(fā)明實(shí)施例提供一種物理主機(jī),包括上述所述的虛擬機(jī)監(jiān)視器。
[0027]第六方面,本發(fā)明實(shí)施例提供一種虛擬桌面基礎(chǔ)架構(gòu)系統(tǒng),包括上述所述的物理主機(jī),和上述所述的共孚存儲(chǔ)系統(tǒng)。
[0028]第七方面,本發(fā)明實(shí)施例提供一種物理主機(jī),包括:處理器,通信接口,存儲(chǔ)器和通信總線;
[0029]其中所述處理器、所述通信接口、所述存儲(chǔ)器通過(guò)所述通信總線完成相互間的通?目;
[0030]所述通信接口,用于獲取所述處理器生成的建立網(wǎng)絡(luò)連接的請(qǐng)求信息,和釋放網(wǎng)絡(luò)連接的請(qǐng)求信息;在虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段時(shí),向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息;和,在虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段時(shí),向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息;
[0031]所述處理器,用于執(zhí)行程序;
[0032]所述存儲(chǔ)器,用于存放程序;
[0033]其中程序用于:
[0034]檢測(cè)虛擬機(jī)當(dāng)前所處于的開(kāi)機(jī)階段;
[0035]若所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段,則向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息,建立虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接;
[0036]若所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在的通信階段,則向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息,釋放虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接。
[0037]本發(fā)明實(shí)施例提供的虛擬機(jī)開(kāi)機(jī)方法,將虛擬機(jī)的開(kāi)機(jī)階段分為虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段,和虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段;通過(guò)檢測(cè)虛擬機(jī)當(dāng)前所處于的開(kāi)機(jī)階段,在虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段時(shí),建立虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接,使得虛擬機(jī)能夠占用網(wǎng)絡(luò)帶寬;在虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段時(shí),釋放虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接,使得虛擬機(jī)不再占用網(wǎng)絡(luò)帶寬。通過(guò)本發(fā)明實(shí)施例提供的虛擬機(jī)開(kāi)機(jī)方法,能夠針對(duì)不同虛擬機(jī)開(kāi)機(jī)階段的網(wǎng)絡(luò)帶寬需求,進(jìn)行虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接的建立和釋放;在虛擬機(jī)的不同開(kāi)機(jī)階段,為虛擬機(jī)調(diào)度對(duì)應(yīng)的網(wǎng)絡(luò)帶寬需求,提高了網(wǎng)絡(luò)帶寬的利用率,減少了虛擬機(jī)的開(kāi)機(jī)時(shí)間,解決了現(xiàn)有技術(shù)浪費(fèi)網(wǎng)絡(luò)帶寬的問(wèn)題。

【專利附圖】

【附圖說(shuō)明】
[0038]為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0039]圖1為本發(fā)明實(shí)施例提供的虛擬機(jī)開(kāi)機(jī)方法的流程圖;
[0040]圖2為本發(fā)明實(shí)施例提供的虛擬機(jī)開(kāi)機(jī)情況下的網(wǎng)絡(luò)鏈路負(fù)載情況的示意圖;
[0041]圖3為本發(fā)明實(shí)施例提供的向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息的方法流程圖;
[0042]圖4為本發(fā)明實(shí)施例提供的向預(yù)存有開(kāi)機(jī)令牌的存儲(chǔ)設(shè)備請(qǐng)求開(kāi)機(jī)令牌的方法流程圖;
[0043]圖5為本發(fā)明實(shí)施例提供的虛擬機(jī)開(kāi)機(jī)階段的運(yùn)行時(shí)間超時(shí)檢測(cè)的方法流程圖;
[0044]圖6為本發(fā)明實(shí)施例提供的虛擬機(jī)開(kāi)機(jī)方法的另一流程圖;
[0045]圖7為本發(fā)明實(shí)施例提供的虛擬機(jī)監(jiān)視器的結(jié)構(gòu)框圖;
[0046]圖8為本發(fā)明實(shí)施例提供的虛擬機(jī)監(jiān)視器的另一結(jié)構(gòu)框圖;
[0047]圖9為本發(fā)明實(shí)施例提供的開(kāi)機(jī)階段檢測(cè)模塊的結(jié)構(gòu)框圖;
[0048]圖10為本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)連接建立模塊的結(jié)構(gòu)框圖;
[0049]圖11為本發(fā)明實(shí)施例提供的開(kāi)機(jī)令牌請(qǐng)求單元的結(jié)構(gòu)框圖;
[0050]圖12為本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)連接釋放模塊的結(jié)構(gòu)框圖;
[0051]圖13為本發(fā)明實(shí)施例提供的虛擬機(jī)監(jiān)視器的又一結(jié)構(gòu)框圖;
[0052]圖14為本發(fā)明實(shí)施例提供的超時(shí)檢測(cè)模塊的結(jié)構(gòu)框圖;
[0053]圖15為本發(fā)明實(shí)施例提供的虛擬機(jī)開(kāi)機(jī)方法的又一流程圖;
[0054]圖16為本發(fā)明實(shí)施例提供的處理請(qǐng)求信息的方法流程圖;
[0055]圖17為本發(fā)明實(shí)施例提供的共享存儲(chǔ)系統(tǒng)的結(jié)構(gòu)框圖;
[0056]圖18為本發(fā)明實(shí)施例提供的共享存儲(chǔ)系統(tǒng)的另一結(jié)構(gòu)框圖;
[0057]圖19為本發(fā)明實(shí)施例提供的連接建立請(qǐng)求接收模塊的結(jié)構(gòu)框圖;
[0058]圖20為本發(fā)明實(shí)施例提供的連接釋放請(qǐng)求接收模塊的結(jié)構(gòu)框圖;
[0059]圖21為本發(fā)明實(shí)施例提供的共享存儲(chǔ)系統(tǒng)的又一結(jié)構(gòu)框圖;
[0060]圖22為本發(fā)明實(shí)施例提供的開(kāi)機(jī)令牌返回單元的結(jié)構(gòu)框圖;
[0061]圖23為本發(fā)明實(shí)施例提供的共享存儲(chǔ)系統(tǒng)的再一結(jié)構(gòu)框圖;
[0062]圖24為本發(fā)明實(shí)施例提供的VDI系統(tǒng)的結(jié)構(gòu)框圖;
[0063]圖25為本發(fā)明實(shí)施例提供的VDI系統(tǒng)的另一結(jié)構(gòu)框圖;
[0064]圖26為本發(fā)明實(shí)施例提供的物理主機(jī)的結(jié)構(gòu)框圖。

【具體實(shí)施方式】
[0065]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0066]圖1為本發(fā)明實(shí)施例提供的虛擬機(jī)開(kāi)機(jī)方法的流程圖,參照?qǐng)D1,該方法可以包括步驟:
[0067]步驟S100、檢測(cè)虛擬機(jī)當(dāng)前所處于的開(kāi)機(jī)階段;
[0068]可通過(guò)VMM (虛擬機(jī)監(jiān)視器)對(duì)各個(gè)虛擬機(jī)的開(kāi)機(jī)階段進(jìn)行檢測(cè),值得注意的是,一個(gè)物理主機(jī)內(nèi)可配置多個(gè)虛擬機(jī)和一個(gè)虛擬機(jī)監(jiān)視器,通過(guò)一個(gè)虛擬機(jī)監(jiān)視器可對(duì)多個(gè)虛擬機(jī)進(jìn)行監(jiān)視。
[0069]可選的,在本發(fā)明實(shí)施例中,發(fā)明人從網(wǎng)絡(luò)的角度,將虛擬機(jī)的開(kāi)機(jī)階段分為三個(gè):讀取內(nèi)核階段;啟動(dòng)內(nèi)核階段;讀取模塊階段。圖2示出了虛擬機(jī)開(kāi)機(jī)情況下的網(wǎng)絡(luò)鏈路負(fù)載情況,參照?qǐng)D2,在讀取內(nèi)核階段和讀取模塊階段,虛擬機(jī)需要從共享存儲(chǔ)系統(tǒng)讀取數(shù)據(jù),因此消耗I/O和網(wǎng)絡(luò)帶寬;但是在啟動(dòng)內(nèi)核階段,虛擬機(jī)不需要讀取數(shù)據(jù),因此I/O和網(wǎng)絡(luò)帶寬處于不占用的狀態(tài)?;诎l(fā)明人的上述發(fā)現(xiàn),可針對(duì)不同的虛擬機(jī)開(kāi)機(jī)階段的網(wǎng)絡(luò)帶寬需求,在虛擬機(jī)的不同開(kāi)機(jī)階段,為虛擬機(jī)調(diào)度對(duì)應(yīng)的網(wǎng)絡(luò)帶寬需求,具體可參照步驟SllO和步驟S120的處理方式。
[0070]步驟S110、若所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段,則向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息,建立所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接;
[0071]可選的,由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段可以包括:進(jìn)入讀取內(nèi)核階段,或,由啟動(dòng)內(nèi)核階段進(jìn)入到讀取模塊階段。
[0072]本發(fā)明實(shí)施例可僅在VMM檢測(cè)到虛擬機(jī)的開(kāi)機(jī)階段為,進(jìn)入讀取內(nèi)核階段的情況下,向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息;也可僅在VMM檢測(cè)到虛擬機(jī)的開(kāi)機(jī)階段為,由啟動(dòng)內(nèi)核階段進(jìn)入到讀取模塊階段的情況下,向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息;還可既在檢測(cè)到虛擬機(jī)開(kāi)機(jī)階段處于進(jìn)入讀取內(nèi)核階段的情況下,和還在檢測(cè)到虛擬機(jī)開(kāi)機(jī)階段由啟動(dòng)內(nèi)核階段進(jìn)入到讀取模塊階段的情況下,向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息??蛇x的,在向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息之前,虛擬機(jī)監(jiān)視器可根據(jù)虛擬機(jī)與共享存儲(chǔ)系統(tǒng)的通信方式,生成建立網(wǎng)絡(luò)連接的請(qǐng)求信息,具體的建立網(wǎng)絡(luò)連接的請(qǐng)求信息的生成方式可視具體情況而定。
[0073]步驟S120、若所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段,則向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息,釋放所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接。
[0074]可選的,由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段可以包括:由讀取內(nèi)核階段進(jìn)入到啟動(dòng)內(nèi)核階段,或,結(jié)束讀取模塊階段。本發(fā)明實(shí)施例可僅在VMM檢測(cè)到虛擬機(jī)的開(kāi)機(jī)階段為,由讀取內(nèi)核階段進(jìn)入到啟動(dòng)內(nèi)核階段的情況下,向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息;也可僅在VMM檢測(cè)到虛擬機(jī)的開(kāi)機(jī)階段為,結(jié)束讀取模塊階段的情況下,向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息;還可既在檢測(cè)到虛擬機(jī)開(kāi)機(jī)階段由讀取內(nèi)核階段進(jìn)入到啟動(dòng)內(nèi)核階段的情況下,和還在檢測(cè)到虛擬機(jī)開(kāi)機(jī)階段處于結(jié)束讀取模塊階段的情況下,向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息。共享存儲(chǔ)系統(tǒng)在接收到釋放網(wǎng)絡(luò)連接的請(qǐng)求信息后,將執(zhí)行虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接的釋放過(guò)程。
[0075]本發(fā)明實(shí)施例中,建立網(wǎng)絡(luò)連接的請(qǐng)求信息的發(fā)送可以是VMM通過(guò)調(diào)用通信接口來(lái)實(shí)現(xiàn),而該建立網(wǎng)絡(luò)連接的請(qǐng)求信息是與開(kāi)機(jī)階段為由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段的虛擬機(jī)相對(duì)應(yīng)。釋放網(wǎng)絡(luò)連接的請(qǐng)求信息的發(fā)送也與此同理。
[0076]可選的,本發(fā)明實(shí)施例可在虛擬機(jī)開(kāi)機(jī)時(shí),周期性(檢測(cè)周期的時(shí)長(zhǎng)可以盡可能的小)的檢測(cè)虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間的通信狀態(tài)(即檢測(cè)虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間有無(wú)數(shù)據(jù)的收發(fā)、傳遞),在初次檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間存在通信時(shí),則可確定虛擬機(jī)開(kāi)機(jī)階段處于讀取內(nèi)核階段;在虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間的通信狀態(tài)由初次存在的通信狀態(tài)變?yōu)椴淮嬖谕ㄐ诺臓顟B(tài)時(shí),則可確定虛擬機(jī)開(kāi)機(jī)階段進(jìn)入到了啟動(dòng)內(nèi)核階段;對(duì)于虛擬機(jī)開(kāi)機(jī)階段進(jìn)入了啟動(dòng)內(nèi)核階段后,若檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間的通信狀態(tài)又變?yōu)榇嬖谕ㄐ诺臓顟B(tài),則確定啟動(dòng)內(nèi)核階段結(jié)束,虛擬機(jī)開(kāi)機(jī)階段進(jìn)入了讀取模塊階段;虛擬機(jī)開(kāi)機(jī)階段進(jìn)入了讀取模塊階段后,若檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間的通信狀態(tài)又變?yōu)椴淮嬖谕ㄐ诺臓顟B(tài),則確定讀取模塊階段結(jié)束。顯然,本發(fā)明實(shí)施例可預(yù)置各個(gè)通信狀態(tài)切換時(shí),各切換后的通信狀態(tài)維持的標(biāo)準(zhǔn)時(shí)長(zhǎng),在切換后的通信狀態(tài)實(shí)際維持的時(shí)長(zhǎng)達(dá)到該標(biāo)準(zhǔn)時(shí)長(zhǎng)時(shí),確定虛擬機(jī)開(kāi)機(jī)階段發(fā)生了變化;如當(dāng)虛擬機(jī)開(kāi)機(jī)階段由讀取內(nèi)核階段進(jìn)入了啟動(dòng)內(nèi)核階段,對(duì)應(yīng)的虛擬機(jī)與共享存儲(chǔ)系統(tǒng)的通信狀態(tài)由存在通信變?yōu)椴淮嬖谕ㄐ牛景l(fā)明實(shí)施例可預(yù)置該通信狀態(tài)切換下的不存在通信狀態(tài)所維持的標(biāo)準(zhǔn)時(shí)長(zhǎng),在實(shí)際的不存在通信狀態(tài)所維持的時(shí)長(zhǎng)滿足該標(biāo)準(zhǔn)時(shí)長(zhǎng)時(shí),確定虛擬機(jī)開(kāi)機(jī)階段進(jìn)入了啟動(dòng)內(nèi)核階段,以此保證開(kāi)機(jī)階段確定的正確性,其他開(kāi)機(jī)階段的確定可與此同理。
[0077]本發(fā)明實(shí)施例提供的虛擬機(jī)開(kāi)機(jī)方法,將虛擬機(jī)的開(kāi)機(jī)階段分為虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段,和虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段;通過(guò)檢測(cè)虛擬機(jī)當(dāng)前所處于的開(kāi)機(jī)階段,在虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段時(shí),建立虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接,使得虛擬機(jī)能夠占用網(wǎng)絡(luò)帶寬;在虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段時(shí),釋放虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接,使得虛擬機(jī)不再占用網(wǎng)絡(luò)帶寬。通過(guò)本發(fā)明實(shí)施例提供的虛擬機(jī)開(kāi)機(jī)方法,能夠針對(duì)不同虛擬機(jī)開(kāi)機(jī)階段的網(wǎng)絡(luò)帶寬需求,進(jìn)行虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接的建立和釋放;在虛擬機(jī)的不同開(kāi)機(jī)階段,為虛擬機(jī)調(diào)度對(duì)應(yīng)的網(wǎng)絡(luò)帶寬需求,提高了網(wǎng)絡(luò)帶寬的利用率,減少了虛擬機(jī)的開(kāi)機(jī)時(shí)間,解決了現(xiàn)有技術(shù)浪費(fèi)網(wǎng)絡(luò)帶寬的問(wèn)題。
[0078]在本發(fā)明實(shí)施例中,一個(gè)共享存儲(chǔ)系統(tǒng)可以存儲(chǔ)有多個(gè)虛擬機(jī)的磁盤(pán)鏡像,因此當(dāng)有多個(gè)虛擬機(jī)處于開(kāi)機(jī)階段時(shí),對(duì)應(yīng)的共享存儲(chǔ)系統(tǒng)可能會(huì)在短時(shí)間內(nèi)接收到大量的建立網(wǎng)絡(luò)連接的請(qǐng)求信息。對(duì)于這種情況,本發(fā)明實(shí)施例的共享存儲(chǔ)系統(tǒng)可不設(shè)置訪問(wèn)權(quán)限,任意的虛擬機(jī)均可對(duì)共享存儲(chǔ)系統(tǒng)進(jìn)行訪問(wèn),共享存儲(chǔ)系統(tǒng)在接收到多個(gè)虛擬機(jī)對(duì)應(yīng)的建立網(wǎng)絡(luò)連接的請(qǐng)求信息之后,可逐一對(duì)各個(gè)虛擬機(jī)對(duì)應(yīng)的建立網(wǎng)絡(luò)連接的請(qǐng)求信息進(jìn)行應(yīng)答,從而使得虛擬機(jī)在接收到應(yīng)答后,通過(guò)VMM執(zhí)行網(wǎng)絡(luò)連接的建立過(guò)程。
[0079]可選的,本發(fā)明實(shí)施例為控制對(duì)共享存儲(chǔ)系統(tǒng)的并發(fā)訪問(wèn)數(shù)量,避免過(guò)多的建立網(wǎng)絡(luò)連接的請(qǐng)求信息超過(guò)共享存儲(chǔ)系統(tǒng)的服務(wù)能力,本發(fā)明實(shí)施例的共享存儲(chǔ)系統(tǒng)也可設(shè)置訪問(wèn)權(quán)限,只有獲得訪問(wèn)權(quán)限的虛擬機(jī)才可通過(guò)VMM實(shí)現(xiàn)對(duì)共享存儲(chǔ)系統(tǒng)的訪問(wèn),圖3示出了本發(fā)明實(shí)施例向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息的方法流程圖,該方法流程與共享存儲(chǔ)系統(tǒng)設(shè)置訪問(wèn)權(quán)限情況下的建立網(wǎng)絡(luò)連接的請(qǐng)求信息的發(fā)送相對(duì)應(yīng)。參照?qǐng)D3,該方法流程可以包括:
[0080]步驟S111、向預(yù)存有開(kāi)機(jī)令牌的存儲(chǔ)設(shè)備請(qǐng)求開(kāi)機(jī)令牌;
[0081]當(dāng)虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段時(shí),VMM將為虛擬機(jī)請(qǐng)求開(kāi)機(jī)令牌,從而使得存儲(chǔ)設(shè)備能為對(duì)應(yīng)的虛擬機(jī)分配開(kāi)機(jī)令牌。
[0082]本發(fā)明實(shí)施例中,開(kāi)機(jī)令牌用于指示虛擬機(jī)訪問(wèn)共享存儲(chǔ)系統(tǒng)的權(quán)限,在本發(fā)明實(shí)施例中,只有VMM獲得了開(kāi)機(jī)令牌后,才允許對(duì)應(yīng)的虛擬機(jī)與共享存儲(chǔ)系統(tǒng)建立網(wǎng)絡(luò)連接,從共享存儲(chǔ)系統(tǒng)讀取數(shù)據(jù)??蛇x的,預(yù)存有開(kāi)機(jī)令牌的存儲(chǔ)設(shè)備可預(yù)先配置預(yù)設(shè)個(gè)數(shù)的開(kāi)機(jī)令牌,同時(shí)配置開(kāi)機(jī)令牌的狀態(tài)為空閑和占用,存儲(chǔ)設(shè)備在接收到一個(gè)請(qǐng)求開(kāi)機(jī)令牌的信息后,可為對(duì)應(yīng)的虛擬機(jī)分配一個(gè)空閑的開(kāi)機(jī)令牌,同時(shí)更新空閑開(kāi)機(jī)令牌的個(gè)數(shù)(空閑開(kāi)機(jī)令牌個(gè)數(shù)減一);在空閑開(kāi)機(jī)令牌的個(gè)數(shù)為零時(shí),存儲(chǔ)設(shè)備將無(wú)法為虛擬機(jī)分配開(kāi)機(jī)令牌,沒(méi)有得到開(kāi)機(jī)令牌的虛擬機(jī),將無(wú)法對(duì)共享存儲(chǔ)系統(tǒng)發(fā)起訪問(wèn)。
[0083]步驟S112、在獲得開(kāi)機(jī)令牌后,根據(jù)所述開(kāi)機(jī)令牌生成建立網(wǎng)絡(luò)連接的請(qǐng)求信息,向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息;
[0084]由于共享存儲(chǔ)系統(tǒng)配置有訪問(wèn)權(quán)限,在VMM獲得開(kāi)機(jī)令牌后,VMM可根據(jù)開(kāi)機(jī)令牌為對(duì)應(yīng)的虛擬機(jī)生成建立網(wǎng)絡(luò)連接的請(qǐng)求信息,向共享存儲(chǔ)系統(tǒng)發(fā)送該建立網(wǎng)絡(luò)連接的請(qǐng)求信息,以指示對(duì)應(yīng)的虛擬機(jī)具有訪問(wèn)共享存儲(chǔ)系統(tǒng)的權(quán)限,從而使得共享存儲(chǔ)系統(tǒng)配合進(jìn)行網(wǎng)絡(luò)連接的建立。
[0085]通過(guò)圖3所示流程可以看出,在共享存儲(chǔ)系統(tǒng)配置有訪問(wèn)權(quán)限的情況下,需先請(qǐng)求開(kāi)機(jī)令牌,再通過(guò)開(kāi)機(jī)令牌生成建立網(wǎng)絡(luò)連接的請(qǐng)求信息,進(jìn)而向共享存儲(chǔ)系統(tǒng)發(fā)起建立網(wǎng)絡(luò)連接的請(qǐng)求信息。由于VMM為對(duì)應(yīng)的虛擬機(jī)請(qǐng)求開(kāi)機(jī)令牌時(shí),存儲(chǔ)設(shè)備內(nèi)的空閑令牌數(shù)可能已經(jīng)為零,針對(duì)這種情況,VMM可隨機(jī)等待一個(gè)延遲時(shí)間后,再向存儲(chǔ)設(shè)備請(qǐng)求開(kāi)機(jī)令牌。對(duì)應(yīng)的,圖4示出了向預(yù)存有開(kāi)機(jī)令牌的存儲(chǔ)設(shè)備請(qǐng)求開(kāi)機(jī)令牌的方法流程,參照?qǐng)D4,該流程可以包括步驟:
[0086]步驟S1111、暫停虛擬機(jī)的運(yùn)行,向預(yù)存有開(kāi)機(jī)令牌的存儲(chǔ)設(shè)備請(qǐng)求開(kāi)機(jī)令牌;
[0087]本發(fā)明實(shí)施例中,當(dāng)虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段時(shí),由于后續(xù)的虛擬機(jī)啟動(dòng)需要根據(jù)從共享存儲(chǔ)系統(tǒng)中讀取的數(shù)據(jù)進(jìn)行,因此可在虛擬機(jī)能夠訪問(wèn)共享存儲(chǔ)系統(tǒng)前,暫停虛擬機(jī)的運(yùn)行,從而節(jié)約系統(tǒng)能耗。
[0088]步驟S1112、在所述存儲(chǔ)設(shè)備存在空閑的開(kāi)機(jī)令牌時(shí),接收所述存儲(chǔ)設(shè)備發(fā)送的開(kāi)機(jī)令牌,恢復(fù)所述虛擬機(jī)的運(yùn)行;
[0089]VMM接收了存儲(chǔ)設(shè)備發(fā)送的開(kāi)機(jī)令牌后,表明對(duì)應(yīng)的虛擬機(jī)已具有訪問(wèn)共享存儲(chǔ)系統(tǒng)的權(quán)限,可恢復(fù)虛擬機(jī)的運(yùn)行。
[0090]步驟S1113、若在預(yù)定時(shí)間內(nèi),未接收到所述存儲(chǔ)設(shè)備發(fā)送的開(kāi)機(jī)令牌,則隨機(jī)等待一個(gè)延遲時(shí)間后,重新向所述存儲(chǔ)設(shè)備請(qǐng)求開(kāi)機(jī)令牌,直至接收到所述存儲(chǔ)設(shè)備發(fā)送的開(kāi)機(jī)令牌。
[0091]由于重新向存儲(chǔ)設(shè)備請(qǐng)求開(kāi)機(jī)令牌的請(qǐng)求個(gè)數(shù)會(huì)很多,因此本發(fā)明實(shí)施例通過(guò)隨機(jī)等待的延遲時(shí)間重新向存儲(chǔ)設(shè)備請(qǐng)求開(kāi)機(jī)令牌,可使得多個(gè)重新向存儲(chǔ)設(shè)備請(qǐng)求開(kāi)機(jī)令牌的請(qǐng)求的請(qǐng)求時(shí)間能夠錯(cuò)開(kāi),避免了數(shù)量過(guò)多的并發(fā)請(qǐng)求。如果重新發(fā)起請(qǐng)求后,還未能接收到所述存儲(chǔ)設(shè)備發(fā)送的開(kāi)機(jī)令牌,則VMM將重復(fù)執(zhí)行步驟S1113直至最終接收到所述存儲(chǔ)設(shè)備發(fā)送的開(kāi)機(jī)令牌。
[0092]可選的,當(dāng)共享存儲(chǔ)系統(tǒng)配置有訪問(wèn)權(quán)限的情況下,向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息的過(guò)程可以為:向預(yù)存有開(kāi)機(jī)令牌的存儲(chǔ)設(shè)備發(fā)送釋放令牌請(qǐng)求,以便存儲(chǔ)設(shè)備更新空閑令牌的個(gè)數(shù),同時(shí)釋放當(dāng)前占有的開(kāi)機(jī)令牌,并向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息。當(dāng)預(yù)存有開(kāi)機(jī)令牌的存儲(chǔ)設(shè)備設(shè)置于共享存儲(chǔ)系統(tǒng)內(nèi)時(shí),向預(yù)存有開(kāi)機(jī)令牌的存儲(chǔ)設(shè)備發(fā)送釋放令牌請(qǐng)求即可認(rèn)為是向共享存儲(chǔ)系統(tǒng)發(fā)送了釋放網(wǎng)絡(luò)連接的請(qǐng)求信息,在VMM發(fā)送釋放令牌請(qǐng)求之后,即可執(zhí)行釋放虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接的具體過(guò)程。
[0093]可選的,本發(fā)明實(shí)施例還可加入虛擬機(jī)開(kāi)機(jī)階段的運(yùn)行時(shí)間超時(shí)檢測(cè)的機(jī)制,當(dāng)虛擬機(jī)進(jìn)入開(kāi)機(jī)階段時(shí)即可啟動(dòng)該機(jī)制,對(duì)應(yīng)的,圖5示出了虛擬機(jī)開(kāi)機(jī)階段的運(yùn)行時(shí)間超時(shí)檢測(cè)的方法流程,參照?qǐng)D5,該流程可以包括:
[0094]步驟S200、檢測(cè)虛擬機(jī)各開(kāi)機(jī)階段的運(yùn)行時(shí)間,是否超過(guò)各開(kāi)機(jī)階段預(yù)設(shè)的運(yùn)行時(shí)間;
[0095]可選的,可通過(guò)虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間的通信狀態(tài)的變化來(lái)確認(rèn)各開(kāi)機(jī)階段的運(yùn)行時(shí)間,是否超過(guò)各開(kāi)機(jī)階段預(yù)設(shè)的運(yùn)行時(shí)間。本發(fā)明實(shí)施例中,虛擬機(jī)的開(kāi)機(jī)階段分為讀取內(nèi)核階段,啟動(dòng)內(nèi)核階段,和讀取模塊階段。
[0096]對(duì)于讀取內(nèi)核階段,在進(jìn)入讀取內(nèi)核階段時(shí),可啟動(dòng)超時(shí)定時(shí)器,并以第一預(yù)設(shè)監(jiān)控時(shí)間為周期,檢測(cè)虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間的通信狀態(tài);若檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間始終存在通信,且所述超時(shí)定時(shí)器的定時(shí)時(shí)間超過(guò)所述第一預(yù)設(shè)運(yùn)行時(shí)間時(shí),確定讀取內(nèi)核階段的運(yùn)行時(shí)間超時(shí);若在所述超時(shí)定時(shí)器的定時(shí)時(shí)間未超過(guò)所述第一預(yù)設(shè)運(yùn)行時(shí)間時(shí),檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間不存在通信的時(shí)長(zhǎng)超過(guò)第一預(yù)設(shè)結(jié)束時(shí)長(zhǎng)時(shí),則確定讀取內(nèi)核階段的運(yùn)行時(shí)間未超時(shí)。
[0097]對(duì)于啟動(dòng)內(nèi)核階段,在虛擬機(jī)由讀取內(nèi)核階段進(jìn)入到啟動(dòng)內(nèi)核階段時(shí),啟動(dòng)超時(shí)定時(shí)器,并以第二預(yù)設(shè)監(jiān)控時(shí)間為周期,檢測(cè)虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間的通信狀態(tài);若檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間始終不存在通信,且所述超時(shí)定時(shí)器的定時(shí)時(shí)間超過(guò)所述第二預(yù)設(shè)運(yùn)行時(shí)間時(shí),確定啟動(dòng)內(nèi)核階段的運(yùn)行時(shí)間超時(shí);若在所述超時(shí)定時(shí)器的定時(shí)時(shí)間未超過(guò)所述第二預(yù)設(shè)預(yù)運(yùn)行時(shí)間時(shí),檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間存在通信的時(shí)長(zhǎng)超過(guò)第二預(yù)設(shè)結(jié)束時(shí)長(zhǎng)時(shí),則確定啟動(dòng)內(nèi)核階段的運(yùn)行時(shí)間未超時(shí)。
[0098]對(duì)于讀取模塊階段,在虛擬機(jī)由啟動(dòng)內(nèi)核階段進(jìn)入到讀取模塊階段時(shí),啟動(dòng)超時(shí)定時(shí)器,并以第三預(yù)設(shè)監(jiān)控時(shí)間為周期,檢測(cè)虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間的通信狀態(tài);若檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間始終存在通信,且所述超時(shí)定時(shí)器的定時(shí)時(shí)間超過(guò)所述第三預(yù)設(shè)運(yùn)行時(shí)間時(shí),確定讀取模塊階段的運(yùn)行時(shí)間超時(shí);若在所述超時(shí)定時(shí)器的定時(shí)時(shí)間未超過(guò)所述第三預(yù)設(shè)預(yù)運(yùn)行時(shí)間時(shí),檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間不存在通信的時(shí)長(zhǎng)超過(guò)第三預(yù)設(shè)結(jié)束時(shí)長(zhǎng)時(shí),確定讀取模塊階段的運(yùn)行時(shí)間未超時(shí)。
[0099]其中,第一預(yù)設(shè)監(jiān)控時(shí)間,第二預(yù)設(shè)監(jiān)控時(shí)間,第三預(yù)設(shè)監(jiān)控時(shí)間的取值可取決于虛擬機(jī)監(jiān)視器所運(yùn)行的操作系統(tǒng)所提供的時(shí)鐘精度以及每個(gè)虛擬機(jī)開(kāi)機(jī)階段的時(shí)間開(kāi)銷(xiāo);各個(gè)開(kāi)機(jī)階段所檢測(cè)的通信狀態(tài)的周期數(shù),取決于每個(gè)開(kāi)機(jī)階段的最大時(shí)間長(zhǎng)度(取決于系統(tǒng)配置)以及采樣周期的大小;第一預(yù)設(shè)運(yùn)行時(shí)間,第二預(yù)設(shè)運(yùn)行時(shí)間,第三預(yù)設(shè)運(yùn)行時(shí)間可視具體的虛擬機(jī)開(kāi)機(jī)情況選定。第一預(yù)設(shè)結(jié)束時(shí)長(zhǎng),第二預(yù)設(shè)結(jié)束時(shí)長(zhǎng),和第三預(yù)設(shè)結(jié)束時(shí)長(zhǎng)是根據(jù)不同開(kāi)機(jī)階段設(shè)定的通信狀態(tài)持續(xù)閾值,各值可根據(jù)對(duì)應(yīng)的開(kāi)機(jī)階段的具體情況進(jìn)行設(shè)定,也可統(tǒng)一為同一閾值。
[0100]步驟S210、若讀取內(nèi)核階段的運(yùn)行時(shí)間超過(guò)第一預(yù)設(shè)運(yùn)行時(shí)間,則確定讀取內(nèi)核階段運(yùn)行超時(shí);
[0101]其中,所述第一預(yù)設(shè)運(yùn)行時(shí)間為預(yù)設(shè)的讀取內(nèi)核階段的運(yùn)行時(shí)間。當(dāng)共享存儲(chǔ)系統(tǒng)配置有訪問(wèn)權(quán)限的情況下,若在讀取內(nèi)核階段,虛擬機(jī)占用有開(kāi)機(jī)令牌,則可在判定虛擬機(jī)開(kāi)機(jī)過(guò)程存在異常后,釋放虛擬機(jī)當(dāng)前占有的開(kāi)機(jī)令牌。
[0102]可選的,虛擬機(jī)開(kāi)機(jī)過(guò)程出現(xiàn)的異常情況是導(dǎo)致虛擬機(jī)啟動(dòng)階段運(yùn)行超時(shí)的一個(gè)原因。
[0103]步驟S220、若啟動(dòng)內(nèi)核階段的運(yùn)行時(shí)間超過(guò)第二預(yù)設(shè)運(yùn)行時(shí)間,則確定啟動(dòng)內(nèi)核階段運(yùn)行超時(shí);
[0104]其中,所述第二預(yù)設(shè)運(yùn)行時(shí)間為預(yù)設(shè)的啟動(dòng)內(nèi)核階段的運(yùn)行時(shí)間。
[0105]步驟S230、若讀取模塊階段的運(yùn)行時(shí)間超過(guò)第三預(yù)設(shè)運(yùn)行時(shí)間,則確定讀取模塊階段運(yùn)行超時(shí);
[0106]其中,所述第三預(yù)設(shè)運(yùn)行時(shí)間為預(yù)設(shè)的讀取模塊階段的運(yùn)行時(shí)間。當(dāng)共享存儲(chǔ)系統(tǒng)配置有訪問(wèn)權(quán)限的情況下,若在讀取模塊階段,虛擬機(jī)占用有開(kāi)機(jī)令牌,則可在判定虛擬機(jī)開(kāi)機(jī)過(guò)程存在異常后,釋放虛擬機(jī)當(dāng)前占有的開(kāi)機(jī)令牌。
[0107]對(duì)于虛擬機(jī)開(kāi)機(jī)過(guò)程存在異常的處理,可以是直接退出虛擬機(jī)的開(kāi)機(jī)流程。上文描述的是各開(kāi)機(jī)階段的運(yùn)行時(shí)間超過(guò)各開(kāi)機(jī)階段預(yù)設(shè)的運(yùn)行時(shí)間的情況,對(duì)于各開(kāi)機(jī)階段的運(yùn)行時(shí)間未超過(guò)各開(kāi)機(jī)階段預(yù)設(shè)的運(yùn)行時(shí)間的情況,虛擬機(jī)開(kāi)機(jī)流程可正常執(zhí)行。
[0108]下面對(duì)本發(fā)明實(shí)施例提供的較為優(yōu)選的虛擬機(jī)開(kāi)機(jī)方法進(jìn)行介紹,圖6為本發(fā)明實(shí)施例提供的虛擬機(jī)開(kāi)機(jī)方法的另一流程圖,參照?qǐng)D6,該方法包括步驟:
[0109]步驟S300、檢測(cè)虛擬機(jī)當(dāng)前所處于的開(kāi)機(jī)階段;
[0110]步驟S310、若步驟S300所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于進(jìn)入讀取內(nèi)核階段,或由啟動(dòng)內(nèi)核階段進(jìn)入到讀取模塊階段,則暫停虛擬機(jī)的運(yùn)行,向共享存儲(chǔ)系統(tǒng)請(qǐng)求開(kāi)機(jī)令牌;
[0111]步驟S320、在獲得開(kāi)機(jī)令牌后,根據(jù)所述開(kāi)機(jī)令牌生成建立網(wǎng)絡(luò)連接的請(qǐng)求信息,向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息,建立虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接;
[0112]步驟S330、若在預(yù)定時(shí)間內(nèi),未接收到共享存儲(chǔ)系統(tǒng)發(fā)送的開(kāi)機(jī)令牌時(shí),隨機(jī)等待一個(gè)延遲時(shí)間后,重新向共享存儲(chǔ)系統(tǒng)請(qǐng)求開(kāi)機(jī)令牌直至接收到所述存儲(chǔ)設(shè)備發(fā)送的開(kāi)機(jī)令牌,在獲得開(kāi)機(jī)令牌后,執(zhí)行步驟S320 ;
[0113]步驟S340、若步驟S300所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由讀取內(nèi)核階段進(jìn)入到啟動(dòng)內(nèi)核階段,或結(jié)束讀取模塊階段,則向共享存儲(chǔ)系統(tǒng)發(fā)送釋放令牌請(qǐng)求,釋放所述虛擬機(jī)當(dāng)前占有的開(kāi)機(jī)令牌,釋放虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接;
[0114]步驟S400、檢測(cè)虛擬機(jī)各開(kāi)機(jī)階段的運(yùn)行時(shí)間,是否超過(guò)各開(kāi)機(jī)階段預(yù)設(shè)的運(yùn)行時(shí)間;
[0115]步驟S410、若讀取內(nèi)核階段的運(yùn)行時(shí)間超過(guò)第一預(yù)設(shè)運(yùn)行時(shí)間,則確定讀取內(nèi)核階段運(yùn)行超時(shí),釋放所述虛擬機(jī)當(dāng)前占有的開(kāi)機(jī)令牌;
[0116]步驟S420、若啟動(dòng)內(nèi)核階段的運(yùn)行時(shí)間超過(guò)第二預(yù)設(shè)運(yùn)行時(shí)間,則確定啟動(dòng)內(nèi)核階段運(yùn)行超時(shí);
[0117]步驟S430、若讀取模塊階段的運(yùn)行時(shí)間超過(guò)第三預(yù)設(shè)運(yùn)行時(shí)間,則確定讀取模塊階段運(yùn)行超時(shí),釋放所述虛擬機(jī)當(dāng)前占有的開(kāi)機(jī)令牌。
[0118]值得注意的是,步驟S300-步驟S340,和步驟S400-步驟S430為不同的處理過(guò)程,沒(méi)有步驟之間的先后關(guān)系。
[0119]下面對(duì)本發(fā)明實(shí)施例提供的虛擬機(jī)監(jiān)視器進(jìn)行描述,下文描述的虛擬機(jī)監(jiān)視器與上文描述的虛擬機(jī)開(kāi)機(jī)方法對(duì)應(yīng),兩者可相互參照。
[0120]圖7為本發(fā)明實(shí)施例提供的虛擬機(jī)監(jiān)視器的結(jié)構(gòu)框圖,參照?qǐng)D7,虛擬機(jī)監(jiān)視器可以包括:
[0121]開(kāi)機(jī)階段檢測(cè)模塊100,用于檢測(cè)虛擬機(jī)當(dāng)前所處于的開(kāi)機(jī)階段;
[0122]網(wǎng)絡(luò)連接建立模塊110,用于在開(kāi)機(jī)階段檢測(cè)模塊100所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段時(shí),向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息,建立所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接;
[0123]網(wǎng)絡(luò)連接釋放模塊120,用于在開(kāi)機(jī)階段檢測(cè)模塊100所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段時(shí),向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息,釋放所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接。
[0124]通過(guò)本發(fā)明實(shí)施例提供的虛擬機(jī)監(jiān)視器,能夠針對(duì)不同虛擬機(jī)開(kāi)機(jī)階段的網(wǎng)絡(luò)帶寬需求,進(jìn)行虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接的建立和釋放;在虛擬機(jī)的不同開(kāi)機(jī)階段,為虛擬機(jī)調(diào)度對(duì)應(yīng)的網(wǎng)絡(luò)帶寬需求,提高了網(wǎng)絡(luò)帶寬的利用率,減少了虛擬機(jī)開(kāi)機(jī)時(shí)間,解決了現(xiàn)有技術(shù)浪費(fèi)網(wǎng)絡(luò)帶寬的問(wèn)題。
[0125]圖8為本發(fā)明實(shí)施例提供的虛擬機(jī)監(jiān)視器的另一結(jié)構(gòu)框圖,結(jié)合圖7和圖8所示,圖8所示虛擬機(jī)監(jiān)視器還包括:
[0126]開(kāi)機(jī)階段預(yù)配置模塊130,用于預(yù)先配置虛擬機(jī)的開(kāi)機(jī)階段,所述虛擬機(jī)的開(kāi)機(jī)階段包括:讀取內(nèi)核階段,啟動(dòng)內(nèi)核階段,和讀取模塊階段。
[0127]在圖8所示虛擬機(jī)監(jiān)視器的基礎(chǔ)上,開(kāi)機(jī)階段檢測(cè)模塊100的結(jié)構(gòu)可圖圖9所示,包括:
[0128]第一確定單元101,用于在虛擬機(jī)進(jìn)入讀取內(nèi)核階段時(shí),或,由啟動(dòng)內(nèi)核階段進(jìn)入到讀取模塊階段時(shí),確定所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段;
[0129]第二確定單元102,用于在虛擬機(jī)由讀取內(nèi)核階段進(jìn)入到啟動(dòng)內(nèi)核階段時(shí),或,結(jié)束讀取模塊階段時(shí),確定所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段。
[0130]圖10為本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)連接建立模塊的結(jié)構(gòu)框圖,參照?qǐng)D10,網(wǎng)絡(luò)連接建立模塊110可以包括:
[0131]開(kāi)機(jī)令牌請(qǐng)求單元111,用于向預(yù)存有開(kāi)機(jī)令牌的存儲(chǔ)設(shè)備請(qǐng)求開(kāi)機(jī)令牌;
[0132]其中,所述開(kāi)機(jī)令牌用于指示虛擬機(jī)訪問(wèn)共享存儲(chǔ)系統(tǒng)的權(quán)限;
[0133]網(wǎng)絡(luò)連接建立請(qǐng)求生成單元112,用于在獲得開(kāi)機(jī)令牌后,根據(jù)所述開(kāi)機(jī)令牌生成建立網(wǎng)絡(luò)連接的請(qǐng)求信息;
[0134]網(wǎng)絡(luò)連接建立請(qǐng)求發(fā)送單元113,用于向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息,以便建立虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接。
[0135]可選的,預(yù)存有開(kāi)機(jī)令牌的存儲(chǔ)設(shè)備可設(shè)置于共享存儲(chǔ)系統(tǒng)內(nèi)。
[0136]圖11為本發(fā)明實(shí)施例提供的開(kāi)機(jī)令牌請(qǐng)求單元的結(jié)構(gòu)框圖,參照?qǐng)D11,開(kāi)機(jī)令牌請(qǐng)求單元111可以包括:
[0137]虛擬機(jī)運(yùn)行暫停子單元1111,用于暫停所述虛擬機(jī)的運(yùn)行;
[0138]請(qǐng)求子單元1112,用于在暫停所述虛擬機(jī)的運(yùn)行后,向預(yù)存有開(kāi)機(jī)令牌的存儲(chǔ)設(shè)備請(qǐng)求開(kāi)機(jī)令牌;
[0139]開(kāi)機(jī)令牌接收子單元1113,用于在所述存儲(chǔ)設(shè)備存在空閑的開(kāi)機(jī)令牌時(shí),接收所述存儲(chǔ)設(shè)備返回的開(kāi)機(jī)令牌;
[0140]虛擬機(jī)運(yùn)行恢復(fù)子單元1114,用于在接收所述存儲(chǔ)設(shè)備返回的開(kāi)機(jī)令牌后,恢復(fù)所述虛擬機(jī)的運(yùn)行;
[0141]重新請(qǐng)求子單元1115,用于在預(yù)定時(shí)間內(nèi),未接收到所述存儲(chǔ)設(shè)備返回的開(kāi)機(jī)令牌時(shí),隨機(jī)等待一個(gè)延遲時(shí)間后,重新向所述存儲(chǔ)設(shè)備請(qǐng)求開(kāi)機(jī)令牌,直至接收到所述存儲(chǔ)設(shè)備返回的開(kāi)機(jī)令牌。
[0142]圖12為本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)連接釋放模塊的結(jié)構(gòu)框圖,參照?qǐng)D12,網(wǎng)絡(luò)連接釋放模塊120可以包括:
[0143]開(kāi)機(jī)令牌釋放請(qǐng)求單元121,用于向預(yù)存有開(kāi)機(jī)令牌的存儲(chǔ)設(shè)備發(fā)送釋放令牌請(qǐng)求;
[0144]開(kāi)機(jī)令牌釋放單元122,用于釋放虛擬機(jī)當(dāng)前占有的開(kāi)機(jī)令牌;
[0145]網(wǎng)絡(luò)連接釋放請(qǐng)求發(fā)送單元123,用于向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息。
[0146]圖13為本發(fā)明實(shí)施例提供的虛擬機(jī)監(jiān)視器的又一結(jié)構(gòu)框圖,結(jié)合圖8、圖9和圖13所示,虛擬機(jī)監(jiān)視器還可以包括:
[0147]超時(shí)檢測(cè)模塊140,用于檢測(cè)虛擬機(jī)各開(kāi)機(jī)階段的運(yùn)行時(shí)間,是否超過(guò)各開(kāi)機(jī)階段預(yù)設(shè)的運(yùn)行時(shí)間;
[0148]第一超時(shí)執(zhí)行模塊150,用于在讀取內(nèi)核階段的運(yùn)行時(shí)間超過(guò)第一預(yù)設(shè)運(yùn)行時(shí)間時(shí),確定讀取內(nèi)核階段運(yùn)行超時(shí),釋放虛擬機(jī)當(dāng)前占有的開(kāi)機(jī)令牌,所述第一預(yù)設(shè)運(yùn)行時(shí)間為預(yù)設(shè)的讀取內(nèi)核階段的運(yùn)行時(shí)間;
[0149]第二超時(shí)執(zhí)行模塊160,用于在啟動(dòng)內(nèi)核階段的運(yùn)行時(shí)間超過(guò)第二預(yù)設(shè)運(yùn)行時(shí)間時(shí),確定啟動(dòng)內(nèi)核階段運(yùn)行超時(shí),所述第二預(yù)設(shè)運(yùn)行時(shí)間為預(yù)設(shè)的啟動(dòng)內(nèi)核階段的運(yùn)行時(shí)間;
[0150]第三超時(shí)執(zhí)行模塊170,用于在讀取模塊階段的運(yùn)行時(shí)間超過(guò)第三預(yù)設(shè)運(yùn)行時(shí)間時(shí),確定讀取模塊階段運(yùn)行超時(shí),釋放虛擬機(jī)當(dāng)前占有的開(kāi)機(jī)令牌,所述第三預(yù)設(shè)運(yùn)行時(shí)間為預(yù)設(shè)的讀取模塊階段的運(yùn)行時(shí)間。
[0151]圖14為本發(fā)明實(shí)施例提供的超時(shí)檢測(cè)模塊的結(jié)構(gòu)框圖,參照?qǐng)D14,超時(shí)檢測(cè)模塊140可以包括:
[0152]第一檢測(cè)單元141,用于在進(jìn)入讀取內(nèi)核階段時(shí),啟動(dòng)超時(shí)定時(shí)器,并以第一預(yù)設(shè)監(jiān)控時(shí)間為周期,檢測(cè)虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間的通信狀態(tài);
[0153]第一超時(shí)判定單元142,用于在檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間始終存在通信,且所述超時(shí)定時(shí)器的定時(shí)時(shí)間超過(guò)所述第一預(yù)設(shè)運(yùn)行時(shí)間時(shí),確定讀取內(nèi)核階段的運(yùn)行時(shí)間超時(shí);在所述超時(shí)定時(shí)器的定時(shí)時(shí)間未超過(guò)所述第一預(yù)設(shè)預(yù)運(yùn)行時(shí)間時(shí),檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間不存在通信的時(shí)長(zhǎng)超過(guò)第一預(yù)設(shè)結(jié)束時(shí)長(zhǎng)時(shí),則確定讀取內(nèi)核階段的運(yùn)行時(shí)間未超時(shí);
[0154]第二檢測(cè)單元143,用于在虛擬機(jī)由讀取內(nèi)核階段進(jìn)入到啟動(dòng)內(nèi)核階段時(shí),啟動(dòng)超時(shí)定時(shí)器,并以第二預(yù)設(shè)監(jiān)控時(shí)間為周期,檢測(cè)虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間的通信狀態(tài);
[0155]第二超時(shí)判定單元144,用于在檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間始終不存在通信,且所述超時(shí)定時(shí)器的定時(shí)時(shí)間超過(guò)所述第二預(yù)設(shè)運(yùn)行時(shí)間時(shí),確定啟動(dòng)內(nèi)核階段的運(yùn)行時(shí)間超時(shí);在所述超時(shí)定時(shí)器的定時(shí)時(shí)間未超過(guò)所述第二預(yù)設(shè)預(yù)運(yùn)行時(shí)間時(shí),檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間存在通信的時(shí)長(zhǎng)超過(guò)第二預(yù)設(shè)結(jié)束時(shí)長(zhǎng)時(shí),則確定啟動(dòng)內(nèi)核階段的運(yùn)行時(shí)間未超時(shí);
[0156]第三檢測(cè)單元145,用于在虛擬機(jī)由啟動(dòng)內(nèi)核階段進(jìn)入到讀取模塊階段時(shí),啟動(dòng)超時(shí)定時(shí)器,并以第三預(yù)設(shè)監(jiān)控時(shí)間為周期,檢測(cè)虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間的通信狀態(tài);
[0157]第三超時(shí)判定單元146,用于在檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間始終存在通信,且所述超時(shí)定時(shí)器的定時(shí)時(shí)間超過(guò)所述第三預(yù)設(shè)運(yùn)行時(shí)間時(shí),確定讀取模塊階段的運(yùn)行時(shí)間超時(shí);在所述超時(shí)定時(shí)器的定時(shí)時(shí)間未超過(guò)所述第三預(yù)設(shè)預(yù)運(yùn)行時(shí)間時(shí),檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間不存在通信的時(shí)長(zhǎng)超過(guò)第三預(yù)設(shè)結(jié)束時(shí)長(zhǎng)時(shí),確定讀取模塊階段的運(yùn)行時(shí)間未超時(shí)。
[0158]顯然,第一檢測(cè)單元141、第二檢測(cè)單元143和第三檢測(cè)單元145可集成為一體。
[0159]下面將以共享存儲(chǔ)系統(tǒng)的角度,描述本發(fā)明實(shí)施例提供的虛擬機(jī)開(kāi)機(jī)方法,下文描述的虛擬機(jī)開(kāi)機(jī)方法與上文從虛擬監(jiān)視器角度描述的虛擬機(jī)開(kāi)機(jī)方法相對(duì)應(yīng),兩者可相互參照。
[0160]圖15為本發(fā)明實(shí)施例提供的虛擬機(jī)開(kāi)機(jī)方法的又一流程圖,參照?qǐng)D15,該方法可以包括步驟:
[0161]步驟S500、當(dāng)虛擬機(jī)狀態(tài)由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段時(shí),接收建立網(wǎng)絡(luò)連接的請(qǐng)求信息,建立所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接;
[0162]步驟S510、當(dāng)虛擬機(jī)狀態(tài)由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段時(shí),接收釋放網(wǎng)絡(luò)連接的請(qǐng)求信息,釋放所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接。
[0163]可選的,虛擬機(jī)的開(kāi)機(jī)階段包括:讀取內(nèi)核階段,啟動(dòng)內(nèi)核階段,和讀取模塊階段。虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段包括:進(jìn)入讀取內(nèi)核階段,或,由啟動(dòng)內(nèi)核階段進(jìn)入到讀取模塊階段。虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在的通信階段包括:由讀取內(nèi)核階段進(jìn)入到啟動(dòng)內(nèi)核階段,或,結(jié)束讀取模塊階段。
[0164]可選的,共享存儲(chǔ)系統(tǒng)可不配置訪問(wèn)權(quán)限,任意的虛擬機(jī)均能訪問(wèn)共享存儲(chǔ)系統(tǒng),共享存儲(chǔ)系統(tǒng)可逐一的接收各虛擬機(jī)發(fā)送的建立網(wǎng)絡(luò)連接的請(qǐng)求信息,實(shí)現(xiàn)虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間的網(wǎng)絡(luò)連接的建立過(guò)程。
[0165]可選的,共享存儲(chǔ)系統(tǒng)也可配置訪問(wèn)權(quán)限,只有擁有訪問(wèn)權(quán)限的虛擬機(jī)才能訪問(wèn)共享存儲(chǔ)系統(tǒng);對(duì)于這種情況,虛擬機(jī)需要獲得訪問(wèn)權(quán)限之后,才能通過(guò)虛擬機(jī)監(jiān)視器發(fā)起建立網(wǎng)絡(luò)連接的請(qǐng)求,可選的,共享存儲(chǔ)系統(tǒng)可預(yù)置預(yù)設(shè)個(gè)數(shù)的開(kāi)機(jī)令牌,開(kāi)機(jī)令牌用于指示虛擬機(jī)訪問(wèn)共享存儲(chǔ)系統(tǒng)的權(quán)限;共享存儲(chǔ)系統(tǒng)可在接收建立網(wǎng)絡(luò)連接的請(qǐng)求信息之前先接收第一請(qǐng)求信息,第一請(qǐng)求信息為虛擬機(jī)通過(guò)虛擬機(jī)監(jiān)視器發(fā)送的請(qǐng)求開(kāi)機(jī)令牌的請(qǐng)求信息,共享存儲(chǔ)系統(tǒng)在接收第一請(qǐng)求信息之后,向所述虛擬機(jī)返回開(kāi)機(jī)令牌,以便虛擬機(jī)根據(jù)所述開(kāi)機(jī)令牌生成建立網(wǎng)絡(luò)連接的請(qǐng)求信息,以致共享存儲(chǔ)系統(tǒng)接收根據(jù)所述開(kāi)機(jī)令牌生成的建立網(wǎng)絡(luò)連接的請(qǐng)求信息。
[0166]對(duì)于共享存儲(chǔ)系統(tǒng)配置訪問(wèn)權(quán)限的情況,在確定虛擬機(jī)由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在的通信階段時(shí),虛擬機(jī)可通過(guò)虛擬機(jī)監(jiān)視器向共享存儲(chǔ)系統(tǒng)發(fā)送第二請(qǐng)求信息,第二請(qǐng)求信息為釋放開(kāi)機(jī)令牌的請(qǐng)求信息,共享存儲(chǔ)系統(tǒng)在接收到第二請(qǐng)求信息后,將把第二請(qǐng)求信息確定為釋放網(wǎng)絡(luò)連接的請(qǐng)求信息,實(shí)現(xiàn)虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接的釋放。
[0167]可選的,共享存儲(chǔ)系統(tǒng)中可預(yù)置請(qǐng)求隊(duì)列,該請(qǐng)求隊(duì)列用于排列多個(gè)虛擬機(jī)發(fā)送的請(qǐng)求開(kāi)機(jī)令牌的請(qǐng)求信息,當(dāng)共享存儲(chǔ)系統(tǒng)接收到第一請(qǐng)求信息之后,將把第一請(qǐng)求信息加入到預(yù)置的請(qǐng)求隊(duì)列中;可選的,請(qǐng)求隊(duì)列中排列的請(qǐng)求開(kāi)機(jī)令牌的請(qǐng)求信息可按照加入的先后順序進(jìn)行隊(duì)列排序優(yōu)先級(jí)的確定,當(dāng)然也可指定提升某一請(qǐng)求開(kāi)機(jī)令牌的請(qǐng)求信息的排序優(yōu)先級(jí)。當(dāng)所加入到請(qǐng)求隊(duì)列中的第一請(qǐng)求信息在所述請(qǐng)求隊(duì)列的排序優(yōu)先級(jí)為第一時(shí),可判斷預(yù)置的預(yù)設(shè)個(gè)數(shù)的開(kāi)機(jī)令牌中是否存在空閑的開(kāi)機(jī)令牌,若存在空閑的開(kāi)機(jī)令牌,則向所述虛擬機(jī)返回開(kāi)機(jī)令牌,更新空閑的開(kāi)機(jī)令牌的個(gè)數(shù)(即空閑開(kāi)機(jī)令牌個(gè)數(shù)減一)。
[0168]顯然,請(qǐng)求隊(duì)列還可用于排列多個(gè)虛擬機(jī)發(fā)送的釋放開(kāi)機(jī)令牌的請(qǐng)求信息,共享存儲(chǔ)系統(tǒng)可在接收到第二請(qǐng)求信息之后,將第二請(qǐng)求信息加入到預(yù)置的請(qǐng)求隊(duì)列中,當(dāng)所加入的第二請(qǐng)求信息在所述請(qǐng)求隊(duì)列的排序優(yōu)先級(jí)為第一時(shí),更新空閑的開(kāi)機(jī)令牌的個(gè)數(shù)(即空閑開(kāi)機(jī)令牌個(gè)數(shù)加一)。
[0169]對(duì)于請(qǐng)求隊(duì)列混合請(qǐng)求開(kāi)機(jī)令牌的請(qǐng)求信息,和釋放開(kāi)機(jī)令牌的請(qǐng)求信息的情況,圖16示出了對(duì)應(yīng)的請(qǐng)求處理方式,圖16為本發(fā)明實(shí)施例提供的處理請(qǐng)求信息的方法流程圖,參照?qǐng)D16,該流程可以包括:
[0170]步驟S600、判斷請(qǐng)求隊(duì)列是否為空,若是,執(zhí)行步驟S610,若否,執(zhí)行步驟S620 ;
[0171]共享存儲(chǔ)系統(tǒng)接收到請(qǐng)求信息后,將所有的請(qǐng)求按照到達(dá)順序插入請(qǐng)求隊(duì)列,再對(duì)隊(duì)列內(nèi)的請(qǐng)求按照先進(jìn)先出的原則進(jìn)行處理,若請(qǐng)求隊(duì)列為空,則表明目前共享存儲(chǔ)系統(tǒng)沒(méi)有接收到請(qǐng)求信息,可結(jié)束流程。
[0172]步驟S610、結(jié)束流程;
[0173]步驟S620、判斷當(dāng)前請(qǐng)求的類(lèi)型,若當(dāng)前請(qǐng)求為請(qǐng)求開(kāi)機(jī)令牌對(duì)應(yīng)的請(qǐng)求,執(zhí)行步驟S630,若當(dāng)前請(qǐng)求為釋放開(kāi)機(jī)令牌對(duì)應(yīng)的請(qǐng)求,執(zhí)行步驟S660 ;
[0174]步驟S630、判斷當(dāng)前是否存在空閑的開(kāi)機(jī)令牌,若是,執(zhí)行步驟S640、若否,執(zhí)行步驟S650 ;
[0175]步驟S640、向虛擬機(jī)返回開(kāi)機(jī)令牌,空閑開(kāi)機(jī)令牌個(gè)數(shù)減一;
[0176]步驟S650、向虛擬機(jī)發(fā)送拒絕返回開(kāi)機(jī)令牌的信息;
[0177]步驟S660、更新空閑開(kāi)機(jī)令牌數(shù),將空閑開(kāi)機(jī)令牌個(gè)數(shù)加一。
[0178]下面對(duì)本發(fā)明實(shí)施例提供的共享存儲(chǔ)系統(tǒng)進(jìn)行描述,下文描述的共享存儲(chǔ)系統(tǒng)與上文以共享存儲(chǔ)系統(tǒng)角度描述的虛擬機(jī)開(kāi)機(jī)方法對(duì)應(yīng),兩者可相互參照。
[0179]圖17為本發(fā)明實(shí)施例提供的共享存儲(chǔ)系統(tǒng)的結(jié)構(gòu)框圖,參照?qǐng)D17,共享存儲(chǔ)系統(tǒng)可以包括:
[0180]連接建立請(qǐng)求接收模塊200,用于當(dāng)虛擬機(jī)狀態(tài)由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段時(shí),接收建立網(wǎng)絡(luò)連接的請(qǐng)求信息;
[0181]連接建立模塊210,用于在接收建立網(wǎng)絡(luò)連接的請(qǐng)求信息后,建立所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接;
[0182]連接釋放請(qǐng)求接收模塊220,用于當(dāng)虛擬機(jī)狀態(tài)由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段時(shí),接收釋放網(wǎng)絡(luò)連接的請(qǐng)求信息;
[0183]連接釋放模塊230,用于在接收釋放網(wǎng)絡(luò)連接的請(qǐng)求信息后,釋放所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接。
[0184]圖18為本發(fā)明實(shí)施例提供的共享存儲(chǔ)系統(tǒng)的另一結(jié)構(gòu)框圖,結(jié)合圖17和圖18所示,共享存儲(chǔ)系統(tǒng)還包括:
[0185]開(kāi)機(jī)令牌存儲(chǔ)模塊240,用于存儲(chǔ)開(kāi)機(jī)令牌,所述開(kāi)機(jī)令牌用于指示虛擬機(jī)訪問(wèn)共享存儲(chǔ)系統(tǒng)的權(quán)限。
[0186]在圖18所示共享存儲(chǔ)系統(tǒng)的基礎(chǔ)上,連接建立請(qǐng)求接收模塊200的結(jié)構(gòu)可如圖19所示,包括:
[0187]第一請(qǐng)求信息接收單元201,用于在虛擬機(jī)由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段時(shí),接收第一請(qǐng)求信息,所述第一請(qǐng)求信息為請(qǐng)求開(kāi)機(jī)令牌的請(qǐng)求信息;
[0188]開(kāi)機(jī)令牌返回單元202,用于在第一請(qǐng)求信息接收模塊201接收第一請(qǐng)求信息后,向所述虛擬機(jī)返回開(kāi)機(jī)令牌;
[0189]連接建立請(qǐng)求接收單元203,用于接收虛擬機(jī)通過(guò)虛擬機(jī)監(jiān)視器,根據(jù)所述開(kāi)機(jī)令牌生成的建立網(wǎng)絡(luò)連接的請(qǐng)求信息。
[0190]在圖18所示共享存儲(chǔ)系統(tǒng)的基礎(chǔ)上,連接釋放請(qǐng)求接收模塊220的結(jié)構(gòu)可如圖20所示,包括:
[0191]第二請(qǐng)求信息接收單元221,用于在虛擬機(jī)由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段時(shí),接收第二請(qǐng)求信息,所述第二請(qǐng)求信息為釋放開(kāi)機(jī)令牌的請(qǐng)求信息;
[0192]請(qǐng)求確定單元222,用于將所述第二請(qǐng)求信息確定為釋放網(wǎng)絡(luò)連接的請(qǐng)求信息。
[0193]圖21為本發(fā)明實(shí)施例提供的共享存儲(chǔ)系統(tǒng)的又一結(jié)構(gòu)框圖,結(jié)合圖18、圖19和圖21所示,共享存儲(chǔ)系統(tǒng)還包括:
[0194]請(qǐng)求加入模塊250,用于在第一請(qǐng)求信息接收單元201接收第一請(qǐng)求信息之后,將所述第一請(qǐng)求信息加入到預(yù)置的請(qǐng)求隊(duì)列中,所述請(qǐng)求隊(duì)列排列有多個(gè)虛擬機(jī)發(fā)送的請(qǐng)求開(kāi)機(jī)令牌的請(qǐng)求信息。
[0195]在圖21所示共享存儲(chǔ)系統(tǒng)的基礎(chǔ)上,開(kāi)機(jī)令牌返回單元202的結(jié)構(gòu)可如圖22所示,包括:
[0196]空閑判斷單元2021,用于所述第一請(qǐng)求信息在所述請(qǐng)求隊(duì)列的排序優(yōu)先級(jí)為第一時(shí),判斷預(yù)置的預(yù)設(shè)個(gè)數(shù)的開(kāi)機(jī)令牌中是否存在空閑的開(kāi)機(jī)令牌;
[0197]令牌返回更新單元2022,用于在空閑判斷單元2021判斷存在空閑的開(kāi)機(jī)令牌時(shí),向所述虛擬機(jī)返回開(kāi)機(jī)令牌,更新空閑的開(kāi)機(jī)令牌的個(gè)數(shù)。
[0198]可選的,請(qǐng)求加入模塊250還可用于將所述第二請(qǐng)求信息加入到預(yù)置的請(qǐng)求隊(duì)列中;所述預(yù)置的請(qǐng)求隊(duì)列還排列有多個(gè)虛擬機(jī)發(fā)送的釋放開(kāi)機(jī)令牌的請(qǐng)求信息。在此基礎(chǔ)上,共享存儲(chǔ)系統(tǒng)還可具有圖23所示結(jié)構(gòu),結(jié)合圖21和圖23所示,共享存儲(chǔ)系統(tǒng)還包括:令牌更新模塊260,用于在所述第二請(qǐng)求信息在所述請(qǐng)求隊(duì)列的排序優(yōu)先級(jí)為第一時(shí),更新空閑的開(kāi)機(jī)令牌的個(gè)數(shù)。
[0199]本發(fā)明實(shí)施例還提供一種可設(shè)置虛擬機(jī)的物理主機(jī),該物理主機(jī)可以包括上述所述的虛擬機(jī)監(jiān)視器,具體可參照?qǐng)D7-圖14所示的虛擬機(jī)監(jiān)視器對(duì)應(yīng)的描述。
[0200]本發(fā)明實(shí)施例還提供一種虛擬桌面基礎(chǔ)架構(gòu)VDI系統(tǒng),圖24為本發(fā)明實(shí)施例提供的VDI系統(tǒng)的結(jié)構(gòu)框圖,參照?qǐng)D24,VDI系統(tǒng)可包括:物理主機(jī)300和共享存儲(chǔ)系統(tǒng)400,其中,物理主機(jī)300可為上述所述的物理主機(jī),共享存儲(chǔ)系統(tǒng)可為上述所述的共享存儲(chǔ)系統(tǒng),具體可參照?qǐng)D17-圖23所示的共享存儲(chǔ)系統(tǒng)對(duì)應(yīng)的描述。
[0201]值得注意的是,一個(gè)物理主機(jī)300內(nèi)設(shè)置的多個(gè)虛擬機(jī)可對(duì)應(yīng)一個(gè)共享存儲(chǔ)系統(tǒng)400,即一個(gè)物理主機(jī)300內(nèi)的多個(gè)虛擬機(jī)可均從同一共享存儲(chǔ)系統(tǒng)400內(nèi)讀取磁盤(pán)鏡像,進(jìn)行開(kāi)機(jī)啟動(dòng);一個(gè)物理主機(jī)300內(nèi)設(shè)置的多個(gè)虛擬機(jī)也可對(duì)應(yīng)多個(gè)共享存儲(chǔ)系統(tǒng)400,即一個(gè)物理主機(jī)300內(nèi)的多個(gè)虛擬機(jī)的磁盤(pán)鏡像分散存儲(chǔ)在多個(gè)共享存儲(chǔ)系統(tǒng)400內(nèi),如一部分虛擬機(jī)的磁盤(pán)鏡像存儲(chǔ)在一個(gè)共享存儲(chǔ)系統(tǒng)400內(nèi),另一部分虛擬機(jī)的磁盤(pán)鏡像存儲(chǔ)在另一個(gè)共享存儲(chǔ)系統(tǒng)400內(nèi);多個(gè)物理主機(jī)300內(nèi)設(shè)置的多個(gè)虛擬機(jī)也可對(duì)應(yīng)多個(gè)共享存儲(chǔ)系統(tǒng)400。對(duì)于物理主機(jī)300與共享存儲(chǔ)系統(tǒng)400的數(shù)量對(duì)應(yīng)關(guān)系,可視具體情況而定,本發(fā)明實(shí)施例不作限定。
[0202]對(duì)于物理主機(jī)內(nèi)設(shè)置的多個(gè)虛擬機(jī)對(duì)應(yīng)多個(gè)共享存儲(chǔ)系統(tǒng)的情況,虛擬機(jī)需要先確定對(duì)應(yīng)的共享存儲(chǔ)系統(tǒng),才可確定虛擬機(jī)的磁盤(pán)鏡像存放的位置,可選的,可將多個(gè)共享存儲(chǔ)系統(tǒng)進(jìn)行編號(hào),虛擬機(jī)在開(kāi)機(jī)時(shí),對(duì)應(yīng)的虛擬機(jī)監(jiān)視器可確定與虛擬機(jī)對(duì)應(yīng)的共享存儲(chǔ)系統(tǒng)編號(hào)(可通過(guò)虛擬機(jī)標(biāo)識(shí)與共享存儲(chǔ)系統(tǒng)編號(hào)的映射關(guān)系來(lái)確定),進(jìn)而向?qū)?yīng)的共享存儲(chǔ)系統(tǒng)發(fā)起建立網(wǎng)絡(luò)連接的請(qǐng)求或釋放網(wǎng)絡(luò)連接的請(qǐng)求。此外,在共享存儲(chǔ)系統(tǒng)配置有訪問(wèn)權(quán)限的情況下,本發(fā)明實(shí)施例可配置各個(gè)共享存儲(chǔ)系統(tǒng)對(duì)應(yīng)的預(yù)設(shè)個(gè)數(shù)的開(kāi)機(jī)令牌,通過(guò)一個(gè)存儲(chǔ)設(shè)備存儲(chǔ)一個(gè)共享存儲(chǔ)系統(tǒng)的開(kāi)機(jī)令牌的方式進(jìn)行開(kāi)機(jī)令牌的存儲(chǔ)管理,虛擬機(jī)在開(kāi)機(jī)時(shí),監(jiān)視器可在確定與虛擬機(jī)對(duì)應(yīng)的共享存儲(chǔ)系統(tǒng)后,向該共享存儲(chǔ)系統(tǒng)對(duì)應(yīng)的存儲(chǔ)設(shè)備請(qǐng)求開(kāi)機(jī)令牌或釋放開(kāi)機(jī)令牌,進(jìn)而向?qū)?yīng)的共享存儲(chǔ)系統(tǒng)請(qǐng)求建立網(wǎng)絡(luò)連接或釋放網(wǎng)絡(luò)連接;顯然,也可在各個(gè)共享存儲(chǔ)系統(tǒng)內(nèi)配置各自對(duì)應(yīng)的開(kāi)機(jī)令牌,圖25示出了對(duì)應(yīng)的VDI系統(tǒng)結(jié)構(gòu),可一同參照。
[0203]本發(fā)明實(shí)施例還提供一種物理主機(jī),圖26示出了該物理主機(jī)的結(jié)構(gòu)框圖。物理主機(jī)可能是包含計(jì)算能力的主機(jī)服務(wù)器,或者是個(gè)人計(jì)算機(jī)PC,或者是可攜帶的便攜式計(jì)算機(jī)或終端等等,本發(fā)明具體實(shí)施例并不對(duì)主機(jī)的具體實(shí)現(xiàn)做限定。物理主機(jī)可以包括:處理器1,通信接口 2,存儲(chǔ)器3和通信總線4;
[0204]其中處理器1、通信接口 2、存儲(chǔ)器3通過(guò)通信總線4完成相互間的通信;
[0205]通信接口 2,用于獲取處理器I生成的建立網(wǎng)絡(luò)連接的請(qǐng)求信息,和釋放網(wǎng)絡(luò)連接的請(qǐng)求信息;在虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段時(shí),向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息,和,在虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段時(shí),向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息;
[0206]可選的,通信接口 2可以為網(wǎng)卡接口 ;
[0207]處理器I,用于執(zhí)行程序;
[0208]存儲(chǔ)器3,用于存放程序;
[0209]程序可以包括程序代碼,所述程序代碼包括計(jì)算機(jī)操作指令。
[0210]處理器I可能是一個(gè)中央處理器CPU,或者是特定集成電路ASIC (Applicat1nSpecific Integrated Circuit),或者是被配置成實(shí)施本發(fā)明實(shí)施例的一個(gè)或多個(gè)集成電路。
[0211 ] 存儲(chǔ)器3可能包含高速RAM存儲(chǔ)器,也可能還包括非易失性存儲(chǔ)器(non-volatilememory),例如至少一個(gè)磁盤(pán)存儲(chǔ)器。
[0212]其中,程序可具體用于:
[0213]檢測(cè)虛擬機(jī)當(dāng)前所處于的開(kāi)機(jī)階段;
[0214]若所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段,則向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息,建立虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接;
[0215]若所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在的通信階段,則向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息,釋放虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接。
[0216]可選的,程序可以包括圖7至圖14所示的功能模塊。
[0217]本說(shuō)明書(shū)中各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似部分互相參見(jiàn)即可。對(duì)于實(shí)施例公開(kāi)的裝置而言,由于其與實(shí)施例公開(kāi)的方法相對(duì)應(yīng),所以描述的比較簡(jiǎn)單,相關(guān)之處參見(jiàn)方法部分說(shuō)明即可。
[0218]專業(yè)人員還可以進(jìn)一步意識(shí)到,結(jié)合本文中所公開(kāi)的實(shí)施例描述的各示例的單元及算法步驟,能夠以電子硬件、計(jì)算機(jī)軟件或者二者的結(jié)合來(lái)實(shí)現(xiàn),為了清楚地說(shuō)明硬件和軟件的可互換性,在上述說(shuō)明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來(lái)執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以對(duì)每個(gè)特定的應(yīng)用來(lái)使用不同方法來(lái)實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。
[0219]結(jié)合本文中所公開(kāi)的實(shí)施例描述的方法或算法的步驟可以直接用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來(lái)實(shí)施。軟件模塊可以置于隨機(jī)存儲(chǔ)器(RAM)、內(nèi)存、只讀存儲(chǔ)器(ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬盤(pán)、可移動(dòng)磁盤(pán)、CD-ROM、或【技術(shù)領(lǐng)域】?jī)?nèi)所公知的任意其它形式的存儲(chǔ)介質(zhì)中。
[0220]對(duì)所公開(kāi)的實(shí)施例的上述說(shuō)明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對(duì)這些實(shí)施例的多種修改對(duì)本領(lǐng)域的專業(yè)技術(shù)人員來(lái)說(shuō)將是顯而易見(jiàn)的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實(shí)施例中實(shí)現(xiàn)。因此,本發(fā)明將不會(huì)被限制于本文所示的這些實(shí)施例,而是要符合與本文所公開(kāi)的原理和新穎特點(diǎn)相一致的最寬的范圍。
【權(quán)利要求】
1.一種虛擬機(jī)VM開(kāi)機(jī)方法,其特征在于,包括: 檢測(cè)虛擬機(jī)當(dāng)前所處于的開(kāi)機(jī)階段; 若所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段,則向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息,建立所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接; 若所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段,則向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息,釋放所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述虛擬機(jī)的開(kāi)機(jī)階段包括:讀取內(nèi)核階段,啟動(dòng)內(nèi)核階段,和讀取模塊階段; 所述由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段包括:進(jìn)入讀取內(nèi)核階段,或,由啟動(dòng)內(nèi)核階段進(jìn)入到讀取模塊階段; 所述由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段包括:由讀取內(nèi)核階段進(jìn)入到啟動(dòng)內(nèi)核階段,或,結(jié)束讀取模塊階段。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息的過(guò)程包括: 向預(yù)存有開(kāi)機(jī)令牌的存儲(chǔ)設(shè)備請(qǐng)求開(kāi)機(jī)令牌,在獲得開(kāi)機(jī)令牌后,根據(jù)所述開(kāi)機(jī)令牌生成建立網(wǎng)絡(luò)連接 的請(qǐng)求信息,向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息,其中,所述開(kāi)機(jī)令牌用于指示虛擬機(jī)訪問(wèn)共享存儲(chǔ)系統(tǒng)的權(quán)限; 所述向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息的過(guò)程包括: 向預(yù)存有開(kāi)機(jī)令牌的存儲(chǔ)設(shè)備發(fā)送釋放開(kāi)機(jī)令牌請(qǐng)求,釋放虛擬機(jī)當(dāng)前占有的開(kāi)機(jī)令牌,向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述向預(yù)存有開(kāi)機(jī)令牌的存儲(chǔ)設(shè)備請(qǐng)求開(kāi)機(jī)令牌的過(guò)程包括: 暫停所述虛擬機(jī)的運(yùn)行,向預(yù)存有開(kāi)機(jī)令牌的存儲(chǔ)設(shè)備請(qǐng)求開(kāi)機(jī)令牌; 在所述存儲(chǔ)設(shè)備存在空閑的開(kāi)機(jī)令牌時(shí),接收所述存儲(chǔ)設(shè)備發(fā)送的開(kāi)機(jī)令牌,恢復(fù)所述虛擬機(jī)的運(yùn)行; 若在預(yù)定時(shí)間內(nèi),未接收到所述存儲(chǔ)設(shè)備發(fā)送的開(kāi)機(jī)令牌,則隨機(jī)等待一個(gè)延遲時(shí)間后,重新向所述存儲(chǔ)設(shè)備請(qǐng)求開(kāi)機(jī)令牌,直至接收到所述存儲(chǔ)設(shè)備發(fā)送的開(kāi)機(jī)令牌。
5.根據(jù)權(quán)利要求3所述的方法,其特征在于,還包括: 檢測(cè)虛擬機(jī)各開(kāi)機(jī)階段的運(yùn)行時(shí)間,是否超過(guò)各開(kāi)機(jī)階段預(yù)設(shè)的運(yùn)行時(shí)間; 若讀取內(nèi)核階段的運(yùn)行時(shí)間超過(guò)第一預(yù)設(shè)運(yùn)行時(shí)間,則確定讀取內(nèi)核階段運(yùn)行超時(shí),釋放虛擬機(jī)當(dāng)前占有的開(kāi)機(jī)令牌,所述第一預(yù)設(shè)運(yùn)行時(shí)間為預(yù)設(shè)的讀取內(nèi)核階段的運(yùn)行時(shí)間; 若啟動(dòng)內(nèi)核階段的運(yùn)行時(shí)間超過(guò)第二預(yù)設(shè)運(yùn)行時(shí)間,則確定啟動(dòng)內(nèi)核階段運(yùn)行超時(shí),所述第二預(yù)設(shè)運(yùn)行時(shí)間為預(yù)設(shè)的啟動(dòng)內(nèi)核階段的運(yùn)行時(shí)間; 若讀取模塊階段的運(yùn)行時(shí)間超過(guò)第三預(yù)設(shè)運(yùn)行時(shí)間,則確定讀取模塊階段運(yùn)行超時(shí),釋放虛擬機(jī)當(dāng)前占有的開(kāi)機(jī)令牌,所述第三預(yù)設(shè)運(yùn)行時(shí)間為預(yù)設(shè)的讀取模塊階段的運(yùn)行時(shí)間。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述檢測(cè)虛擬機(jī)各開(kāi)機(jī)階段的運(yùn)行時(shí)間,是否超過(guò)各開(kāi)機(jī)階段預(yù)設(shè)的運(yùn)行時(shí)間的過(guò)程包括: 在進(jìn)入讀取內(nèi)核階段時(shí),啟動(dòng)超時(shí)定時(shí)器,并以第一預(yù)設(shè)監(jiān)控時(shí)間為周期,檢測(cè)虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間的通信狀態(tài);若檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間始終存在通信,且所述超時(shí)定時(shí)器的定時(shí)時(shí)間超過(guò)所述第一預(yù)設(shè)運(yùn)行時(shí)間時(shí),確定讀取內(nèi)核階段的運(yùn)行時(shí)間超時(shí);若在所述超時(shí)定時(shí)器的定時(shí)時(shí)間未超過(guò)所述第一預(yù)設(shè)運(yùn)行時(shí)間時(shí),檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間不存在通信的時(shí)長(zhǎng)超過(guò)第一預(yù)設(shè)結(jié)束時(shí)長(zhǎng)時(shí),則確定讀取內(nèi)核階段的運(yùn)行時(shí)間未超時(shí); 在虛擬機(jī)由讀取內(nèi)核階段進(jìn)入到啟動(dòng)內(nèi)核階段時(shí),啟動(dòng)超時(shí)定時(shí)器,并以第二預(yù)設(shè)監(jiān)控時(shí)間為周期,檢測(cè)虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間的通信狀態(tài);若檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間始終不存在通信,且所述超時(shí)定時(shí)器的定時(shí)時(shí)間超過(guò)所述第二預(yù)設(shè)運(yùn)行時(shí)間時(shí),確定啟動(dòng)內(nèi)核階段的運(yùn)行時(shí)間超時(shí);若在所述超時(shí)定時(shí)器的定時(shí)時(shí)間未超過(guò)所述第二預(yù)設(shè)預(yù)運(yùn)行時(shí)間時(shí),檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間存在通信的時(shí)長(zhǎng)超過(guò)第二預(yù)設(shè)結(jié)束時(shí)長(zhǎng)時(shí),則確定啟動(dòng)內(nèi)核階段的運(yùn)行時(shí)間未超時(shí); 在虛擬機(jī)由啟動(dòng)內(nèi)核階段進(jìn)入到讀取模塊階段時(shí),啟動(dòng)超時(shí)定時(shí)器,并以第三預(yù)設(shè)監(jiān)控時(shí)間為周期,檢測(cè)虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間的通信狀態(tài);若檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間始終存在通信,且所述超時(shí)定時(shí)器的定時(shí)時(shí)間超過(guò)所述第三預(yù)設(shè)運(yùn)行時(shí)間時(shí),確定讀取模塊階段的運(yùn)行時(shí)間超時(shí);若在所述超時(shí)定時(shí)器的定時(shí)時(shí)間未超過(guò)所述第三預(yù)設(shè)預(yù)運(yùn)行時(shí)間時(shí),檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間不存在通信的時(shí)長(zhǎng)超過(guò)第三預(yù)設(shè)結(jié)束時(shí)長(zhǎng)時(shí),確定讀取模塊階段的運(yùn)行時(shí)間未超時(shí)。
7.根據(jù)權(quán)利要 求3所述的方法,其特征在于,所述存儲(chǔ)設(shè)備設(shè)置于共享存儲(chǔ)系統(tǒng)內(nèi)。
8.一種虛擬機(jī)監(jiān)視器VMM,其特征在于,包括: 開(kāi)機(jī)階段檢測(cè)模塊,用于檢測(cè)虛擬機(jī)當(dāng)前所處于的開(kāi)機(jī)階段; 網(wǎng)絡(luò)連接建立模塊,用于在所述開(kāi)機(jī)階段檢測(cè)模塊所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段時(shí),向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息,建立所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接; 網(wǎng)絡(luò)連接釋放模塊,用于在所述開(kāi)機(jī)階段檢測(cè)模塊所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段時(shí),向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息,釋放所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接。
9.根據(jù)權(quán)利要求8所述的虛擬機(jī)監(jiān)視器,其特征在于,還包括: 開(kāi)機(jī)階段預(yù)配置模塊,用于預(yù)先配置虛擬機(jī)的開(kāi)機(jī)階段,所述虛擬機(jī)的開(kāi)機(jī)階段包括:讀取內(nèi)核階段,啟動(dòng)內(nèi)核階段,和讀取模塊階段; 所述開(kāi)機(jī)階段檢測(cè)模塊包括: 第一確定單元,用于在虛擬機(jī)進(jìn)入讀取內(nèi)核階段時(shí),或,由啟動(dòng)內(nèi)核階段進(jìn)入到讀取模塊階段時(shí),確定所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段; 第二確定單元,用于在虛擬機(jī)由讀取內(nèi)核階段進(jìn)入到啟動(dòng)內(nèi)核階段時(shí),或,結(jié)束讀取模塊階段時(shí),確定所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段。
10.根據(jù)權(quán)利要求8或9所述的虛擬機(jī)監(jiān)視器,其特征在于,所述網(wǎng)絡(luò)連接建立模塊包括: 開(kāi)機(jī)令牌請(qǐng)求單元,用于向預(yù)存有開(kāi)機(jī)令牌的存儲(chǔ)設(shè)備請(qǐng)求開(kāi)機(jī)令牌,其中,所述開(kāi)機(jī)令牌用于指示虛擬機(jī)訪問(wèn)共享存儲(chǔ)系統(tǒng)的權(quán)限; 網(wǎng)絡(luò)連接建立請(qǐng)求生成單元,用于在獲得開(kāi)機(jī)令牌后,根據(jù)所述開(kāi)機(jī)令牌生成建立網(wǎng)絡(luò)連接的請(qǐng)求信息; 網(wǎng)絡(luò)連接建立請(qǐng)求發(fā)送單元,用于向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息,以便建立虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接; 所述網(wǎng)絡(luò)連接釋放模塊包括: 開(kāi)機(jī)令牌釋放請(qǐng)求單元,用于向預(yù)存有開(kāi)機(jī)令牌的存儲(chǔ)設(shè)備發(fā)送釋放令牌請(qǐng)求; 開(kāi)機(jī)令牌釋放單元,用于釋放虛擬機(jī)當(dāng)前占有的開(kāi)機(jī)令牌; 網(wǎng)絡(luò)連接釋放請(qǐng)求發(fā)送單元,用于向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息。
11.根據(jù)權(quán)利要求10所述的虛擬機(jī)監(jiān)視器,其特征在于,所述開(kāi)機(jī)令牌請(qǐng)求單元包括: 虛擬機(jī)運(yùn)行暫停子單元,用于暫停所述虛擬機(jī)的運(yùn)行; 請(qǐng)求子單元,用于在暫停所述虛擬機(jī)的運(yùn)行后,向預(yù)存有開(kāi)機(jī)令牌的存儲(chǔ)設(shè)備請(qǐng)求開(kāi)機(jī)令牌; 開(kāi)機(jī)令牌接收子單元,用于在所述存儲(chǔ)設(shè)備存在空閑的開(kāi)機(jī)令牌時(shí),接收所述存儲(chǔ)設(shè)備返回的開(kāi)機(jī)令牌; 虛擬機(jī)運(yùn)行恢復(fù)子單元,用于在接收所述存儲(chǔ)設(shè)備返回的開(kāi)機(jī)令牌后,恢復(fù)所述虛擬機(jī)的運(yùn)行; 重新請(qǐng)求子單元,用于在預(yù)定時(shí)間內(nèi),未接收到所述存儲(chǔ)設(shè)備返回的開(kāi)機(jī)令牌時(shí),隨機(jī)等待一個(gè)延遲時(shí)間后,重新向所述存儲(chǔ)設(shè)備請(qǐng)求開(kāi)機(jī)令牌,直至接收到所述存儲(chǔ)設(shè)備返回的開(kāi)機(jī)令牌。
12.根據(jù)權(quán)利要求10所述的虛擬機(jī)監(jiān)視器,其特征在于,還包括: 超時(shí)檢測(cè)模塊,用于檢測(cè)虛擬機(jī)各開(kāi)機(jī)階段的運(yùn)行時(shí)間,是否超過(guò)各開(kāi)機(jī)階段預(yù)設(shè)的運(yùn)行時(shí)間; 第一超時(shí)執(zhí)行模塊,用于在讀取內(nèi)核階段的運(yùn)行時(shí)間超過(guò)第一預(yù)設(shè)運(yùn)行時(shí)間時(shí),確定讀取內(nèi)核階段運(yùn)行超時(shí),釋放虛擬機(jī)當(dāng)前占有的開(kāi)機(jī)令牌,所述第一預(yù)設(shè)運(yùn)行時(shí)間為預(yù)設(shè)的讀取內(nèi)核階段的運(yùn)行時(shí)間; 第二超時(shí)執(zhí)行模塊,用于在啟動(dòng)內(nèi)核階段的運(yùn)行時(shí)間超過(guò)第二預(yù)設(shè)運(yùn)行時(shí)間時(shí),確定啟動(dòng)內(nèi)核階段運(yùn)行超時(shí),所述第二預(yù)設(shè)運(yùn)行時(shí)間為預(yù)設(shè)的啟動(dòng)內(nèi)核階段的運(yùn)行時(shí)間; 第三超時(shí)執(zhí)行模塊,用于在讀取模塊階段的運(yùn)行時(shí)間超過(guò)第三預(yù)設(shè)運(yùn)行時(shí)間時(shí),確定讀取模塊階段運(yùn)行超時(shí),釋放虛擬機(jī)當(dāng)前占有的開(kāi)機(jī)令牌,所述第三預(yù)設(shè)運(yùn)行時(shí)間為預(yù)設(shè)的讀取模塊階段的運(yùn)行時(shí)間。
13.根據(jù)權(quán)利要求12所述的虛擬機(jī)監(jiān)視器,其特征在于,所述超時(shí)檢測(cè)模塊包括: 第一檢測(cè)單元,用于在進(jìn)入讀取內(nèi)核階段時(shí),啟動(dòng)超時(shí)定時(shí)器,并以第一預(yù)設(shè)監(jiān)控時(shí)間為周期,檢測(cè)虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間的通信狀態(tài);第一超時(shí)判定單元,用于在檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間始終存在通信,且所述超時(shí)定時(shí)器的定時(shí)時(shí)間超過(guò)所述第一預(yù)設(shè)運(yùn)行時(shí)間時(shí),確定讀取內(nèi)核階段的運(yùn)行時(shí)間超時(shí);在所述超時(shí)定時(shí)器的定時(shí)時(shí)間未超過(guò)所述第一預(yù)設(shè)預(yù)運(yùn)行時(shí)間時(shí),檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間不存在通信的時(shí)長(zhǎng)超過(guò)第一預(yù)設(shè)結(jié)束時(shí)長(zhǎng)時(shí),則確定讀取內(nèi)核階段的運(yùn)行時(shí)間未超時(shí); 第二檢測(cè)單元,用于在虛擬機(jī)由讀取內(nèi)核階段進(jìn)入到啟動(dòng)內(nèi)核階段時(shí),啟動(dòng)超時(shí)定時(shí)器,并以第二預(yù)設(shè)監(jiān)控時(shí)間為周期,檢測(cè)虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間的通信狀態(tài); 第二超時(shí)判定單元,用于在檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間始終不存在通信,且所述超時(shí)定時(shí)器的定時(shí)時(shí)間超過(guò)所述第二預(yù)設(shè)運(yùn)行時(shí)間時(shí),確定啟動(dòng)內(nèi)核階段的運(yùn)行時(shí)間超時(shí);在所述超時(shí)定時(shí)器的定時(shí)時(shí)間未超過(guò)所述第二預(yù)設(shè)預(yù)運(yùn)行時(shí)間時(shí),檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間存在通信的時(shí)長(zhǎng)超過(guò)第二預(yù)設(shè)結(jié)束時(shí)長(zhǎng)時(shí),則確定啟動(dòng)內(nèi)核階段的運(yùn)行時(shí)間未超時(shí); 第三檢測(cè)單元,用于在虛擬機(jī)由啟動(dòng)內(nèi)核階段進(jìn)入到讀取模塊階段時(shí),啟動(dòng)超時(shí)定時(shí)器,并以第三預(yù)設(shè)監(jiān)控時(shí)間為周期,檢測(cè)虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間的通信狀態(tài); 第三超時(shí)判定單元,用于在檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間始終存在通信,且所述超時(shí)定時(shí)器的定時(shí)時(shí)間超過(guò)所述第三預(yù)設(shè)運(yùn)行時(shí)間時(shí),確定讀取模塊階段的運(yùn)行時(shí)間超時(shí);在所述超時(shí)定時(shí)器的定時(shí)時(shí)間未超過(guò)所述第三預(yù)設(shè)預(yù)運(yùn)行時(shí)間時(shí),檢測(cè)到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)之間不存在通信的時(shí)長(zhǎng)超過(guò)第三預(yù)設(shè)結(jié)束時(shí)長(zhǎng)時(shí),確定讀取模塊階段的運(yùn)行時(shí)間未超時(shí)。
14.一種虛擬機(jī)VM開(kāi)機(jī)方法,其特征在于,包括: 當(dāng)虛擬機(jī)狀態(tài)由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段時(shí),接收建立網(wǎng)絡(luò)連接的請(qǐng)求信息,建立所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接; 當(dāng)虛擬機(jī)狀態(tài)由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段時(shí),接收釋放網(wǎng)絡(luò)連接的請(qǐng)求信息,釋放所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接。
15.根據(jù)權(quán)利要求14所述的方法,其特征在于,所述接收建立網(wǎng)絡(luò)連接的請(qǐng)求信息的過(guò)程包括: 接收第一請(qǐng)求信息,第一請(qǐng)求信息為請(qǐng)求開(kāi)機(jī)令牌的請(qǐng)求信息,通過(guò)虛擬機(jī)監(jiān)視器向所述虛擬機(jī)返回開(kāi)機(jī)令牌,在向所述虛擬機(jī)返回開(kāi)機(jī)令牌后,接收所述虛擬機(jī)通過(guò)虛擬機(jī)監(jiān)視器根據(jù)所述開(kāi)機(jī)令牌生成的建立網(wǎng)絡(luò)連接的請(qǐng)求信息,其中,所述開(kāi)機(jī)令牌用于指示虛擬機(jī)訪問(wèn)共享存儲(chǔ)系統(tǒng)的權(quán)限; 所述接收釋放網(wǎng)絡(luò)連接的請(qǐng)求信息的過(guò)程包括: 接收第二請(qǐng)求信息,將所述第二請(qǐng)求信息確定為釋放網(wǎng)絡(luò)連接的請(qǐng)求信息,所述第二請(qǐng)求信息為釋放開(kāi)機(jī)令牌的請(qǐng)求信息。
16.根據(jù)權(quán)利要求15所述的方法,其特征在于,在接收第一請(qǐng)求信息之后,還包括:將所述第一請(qǐng)求信息加入到預(yù)置的請(qǐng)求隊(duì)列中,所述請(qǐng)求隊(duì)列排列有多個(gè)請(qǐng)求開(kāi)機(jī)令牌的請(qǐng)求信息; 所述向所述虛擬機(jī)返回開(kāi)機(jī)令牌的過(guò)程包括:當(dāng)所述第一請(qǐng)求信息在所述請(qǐng)求隊(duì)列的排序優(yōu)先級(jí)為第一時(shí),判斷預(yù)置的預(yù)設(shè)個(gè)數(shù)的開(kāi)機(jī)令牌中是否存在空閑的開(kāi)機(jī)令牌; 若存在空閑的開(kāi)機(jī)令牌,則向所述虛擬機(jī)返回開(kāi)機(jī)令牌,更新空閑的開(kāi)機(jī)令牌的個(gè)數(shù)。
17.根據(jù)權(quán)利要求16所述的方法,其特征在于,在接收第二請(qǐng)求信息之后,還包括: 將所述第二請(qǐng)求信息加入到預(yù)置的請(qǐng)求隊(duì)列中;所述預(yù)置的請(qǐng)求隊(duì)列還排列有多個(gè)虛擬機(jī)發(fā)送的釋放開(kāi)機(jī)令牌的請(qǐng)求信息; 當(dāng)所述第二請(qǐng)求信息在所述請(qǐng)求隊(duì)列的排序優(yōu)先級(jí)為第一時(shí),更新空閑的開(kāi)機(jī)令牌的個(gè)數(shù)。
18.根據(jù)權(quán)利要求14-17任一項(xiàng)所述的方法,其特征在于,虛擬機(jī)的開(kāi)機(jī)階段包括:讀取內(nèi)核階段,啟動(dòng)內(nèi)核階段,和讀取模塊階段; 所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段包括:進(jìn)入讀取內(nèi)核階段,或,由啟動(dòng)內(nèi)核階段進(jìn)入到讀取模塊階段; 所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段包括:由讀取內(nèi)核階段進(jìn)入到啟動(dòng)內(nèi)核階段,或,結(jié)束讀取模塊階段。
19.一種共享存儲(chǔ)系統(tǒng),其特征在于,包括: 連接建立請(qǐng)求接收模塊,用于當(dāng)虛擬機(jī)狀態(tài)由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與 共享存儲(chǔ)系統(tǒng)存在通信的階段時(shí),接收建立網(wǎng)絡(luò)連接的請(qǐng)求信息; 連接建立模塊,用于在接收建立網(wǎng)絡(luò)連接的請(qǐng)求信息后,建立所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接; 連接釋放請(qǐng)求接收模塊,用于當(dāng)虛擬機(jī)狀態(tài)由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段時(shí),接收釋放網(wǎng)絡(luò)連接的請(qǐng)求信息; 連接釋放模塊,用于在接收釋放網(wǎng)絡(luò)連接的請(qǐng)求信息后,釋放所述虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接。
20.根據(jù)權(quán)利要求19所述的共享存儲(chǔ)系統(tǒng),其特征在于,還包括: 開(kāi)機(jī)令牌存儲(chǔ)模塊,用于存儲(chǔ)開(kāi)機(jī)令牌,所述開(kāi)機(jī)令牌用于指示虛擬機(jī)訪問(wèn)共享存儲(chǔ)系統(tǒng)的權(quán)限; 所述連接建立請(qǐng)求接收模塊包括: 第一請(qǐng)求信息接收單元,用于在虛擬機(jī)由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段時(shí),接收第一請(qǐng)求信息,所述第一請(qǐng)求信息為請(qǐng)求開(kāi)機(jī)令牌的請(qǐng)求信息; 開(kāi)機(jī)令牌返回單元,用于在所述第一請(qǐng)求信息接收模塊接收第一請(qǐng)求信息后,向所述虛擬機(jī)返回開(kāi)機(jī)令牌; 連接建立請(qǐng)求接收單元,用于接收虛擬機(jī)通過(guò)虛擬機(jī)監(jiān)視器,根據(jù)所述開(kāi)機(jī)令牌生成的建立網(wǎng)絡(luò)連接的請(qǐng)求信息; 所述連接釋放請(qǐng)求接收模塊包括: 第二請(qǐng)求信息接收單元,用于在虛擬機(jī)由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段時(shí),接收第二請(qǐng)求信息,所述第二請(qǐng)求信息為釋放開(kāi)機(jī)令牌的請(qǐng)求信息; 請(qǐng)求確定單元,用于將所述第二請(qǐng)求信息確定為釋放網(wǎng)絡(luò)連接的請(qǐng)求信息。
21.根據(jù)權(quán)利要求20所述的共享存儲(chǔ)系統(tǒng),其特征在于,還包括: 請(qǐng)求加入模塊,用于在所述第一請(qǐng)求信息接收單元接收第一請(qǐng)求信息之后,將所述第一請(qǐng)求信息加入到預(yù)置的請(qǐng)求隊(duì)列中,所述請(qǐng)求隊(duì)列排列有多個(gè)請(qǐng)求開(kāi)機(jī)令牌的請(qǐng)求信息; 所述開(kāi)機(jī)令牌返回單元包括: 空閑判斷單元,用于所述第一請(qǐng)求信息在所述請(qǐng)求隊(duì)列的排序優(yōu)先級(jí)為第一時(shí),判斷預(yù)置的預(yù)設(shè)個(gè)數(shù)的開(kāi)機(jī)令牌中是否存在空閑的開(kāi)機(jī)令牌; 令牌返回更新單元,用于在所述空閑判斷單元判斷存在空閑的開(kāi)機(jī)令牌時(shí),向所述虛擬機(jī)返回開(kāi)機(jī)令牌,更新空閑的開(kāi)機(jī)令牌的個(gè)數(shù)。
22.根據(jù)權(quán)利要求21所述的共享存儲(chǔ)系統(tǒng),其特征在于,所述請(qǐng)求加入模塊,還用于將所述第二請(qǐng)求信息加入到預(yù)置的請(qǐng)求隊(duì)列中;所述預(yù)置的請(qǐng)求隊(duì)列還排列有多個(gè)虛擬機(jī)發(fā)送的釋放開(kāi)機(jī)令牌的請(qǐng)求信息; 所述共享存儲(chǔ)系統(tǒng)還包括: 令牌更新模塊,用于在所述第二請(qǐng)求信息在所述請(qǐng)求隊(duì)列的排序優(yōu)先級(jí)為第一時(shí),更新空閑的開(kāi)機(jī)令牌的個(gè)數(shù)。
23.一種物理主機(jī),其特征在于,包括權(quán)利要求8-13任一項(xiàng)所述的虛擬機(jī)監(jiān)視器。
24.一種虛擬桌面基礎(chǔ)架構(gòu)VDI系統(tǒng),其特征在于,包括權(quán)利要求23所述的物理主機(jī),和權(quán)利要求19-22任一項(xiàng)所述的共享存儲(chǔ)系統(tǒng)。
25.一種物理主機(jī),其特征在于,包括:處理器,通信接口,存儲(chǔ)器和通信總線; 其中所述處理器、所述通信接口、所述存儲(chǔ)器通過(guò)所述通信總線完成相互間的通信; 所述通信接口,用于獲取所述處理器生成的建立網(wǎng)絡(luò)連接的請(qǐng)求信息,和釋放網(wǎng)絡(luò)連接的請(qǐng)求信息;在虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段時(shí),向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息;和,在虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段時(shí),向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息;所述處理器,用于執(zhí)行程序; 所述存儲(chǔ)器,用于存放程序; 其中程序用于: 檢測(cè)虛擬機(jī)當(dāng)前所處于的開(kāi)機(jī)階段; 若所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段,則向共享存儲(chǔ)系統(tǒng)發(fā)送建立網(wǎng)絡(luò)連接的請(qǐng)求信息,建立虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接; 若所檢測(cè)的虛擬機(jī)開(kāi)機(jī)階段處于由虛擬機(jī)與共享存儲(chǔ)系統(tǒng)存在通信的階段進(jìn)入到虛擬機(jī)與共享存儲(chǔ)系統(tǒng)不存在的通信階段,則向共享存儲(chǔ)系統(tǒng)發(fā)送釋放網(wǎng)絡(luò)連接的請(qǐng)求信息,釋放虛擬機(jī)與共享存儲(chǔ)系統(tǒng)間的網(wǎng)絡(luò)連接。
【文檔編號(hào)】G06F9/455GK104052776SQ201310081895
【公開(kāi)日】2014年9月17日 申請(qǐng)日期:2013年3月14日 優(yōu)先權(quán)日:2013年3月14日
【發(fā)明者】付斌章, 胡農(nóng)達(dá) 申請(qǐng)人:華為技術(shù)有限公司, 中國(guó)科學(xué)院計(jì)算技術(shù)研究所
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1