虛擬機(jī)運(yùn)行方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及虛擬機(jī)技術(shù)領(lǐng)域,特別是涉及一種虛擬機(jī)運(yùn)行方法和裝置。
【背景技術(shù)】
[0002]隨著云計(jì)算技術(shù)領(lǐng)域的高速發(fā)展,越來(lái)越多的公司開(kāi)發(fā)了自己公司的云平臺(tái)。然而作為云平臺(tái)中最基礎(chǔ)的IaaS(Infrastructure as a Service,基礎(chǔ)設(shè)施即服務(wù))層中虛擬機(jī)的高可靠運(yùn)行是影響云平臺(tái)的首要因素,當(dāng)運(yùn)行有虛擬機(jī)的服務(wù)器出現(xiàn)宕機(jī)時(shí),則虛擬機(jī)的運(yùn)行也會(huì)中斷,虛擬機(jī)的可靠性較低,這導(dǎo)致依賴(lài)于虛擬機(jī)構(gòu)建的云平臺(tái)受到影響。
【發(fā)明內(nèi)容】
[0003]基于此,有必要針對(duì)虛擬機(jī)的可靠性較低的問(wèn)題,提供一種虛擬機(jī)運(yùn)行方法和裝置。
[0004]—種虛擬機(jī)運(yùn)行方法,所述方法包括:
[0005]定期收集虛擬機(jī)服務(wù)器的負(fù)載信息;
[0006]當(dāng)監(jiān)測(cè)到所述虛擬機(jī)服務(wù)器發(fā)生異常時(shí),根據(jù)所述虛擬機(jī)服務(wù)器的所述負(fù)載信息確定所述虛擬機(jī)服務(wù)器所運(yùn)行的虛擬機(jī);
[0007]向所述備用服務(wù)器發(fā)送啟動(dòng)所述虛擬機(jī)的啟動(dòng)指令,使所述備用服務(wù)器根據(jù)所述啟動(dòng)指令,從所述虛擬機(jī)服務(wù)器和所述備用服務(wù)器各自劃分出的部分磁盤(pán)構(gòu)成的分布式文件系統(tǒng)中獲取所述虛擬機(jī)的啟動(dòng)文件和增量文件,以根據(jù)所述啟動(dòng)文件啟動(dòng)所述虛擬機(jī),并根據(jù)所述增量文件恢復(fù)運(yùn)行狀態(tài)。
[0008]在其中一個(gè)實(shí)施例中,所述方法還包括:
[0009]所述虛擬機(jī)服務(wù)器將所述虛擬機(jī)運(yùn)行過(guò)程中所產(chǎn)生的增量文件存儲(chǔ)到所述虛擬機(jī)服務(wù)器的虛擬機(jī)磁盤(pán),并將存儲(chǔ)的增量文件同步到所述分布式文件系統(tǒng)。
[0010]在其中一個(gè)實(shí)施例中,所述當(dāng)監(jiān)測(cè)到所述虛擬機(jī)服務(wù)器發(fā)生異常時(shí),根據(jù)所述虛擬機(jī)服務(wù)器的所述負(fù)載信息確定所述虛擬機(jī)服務(wù)器所運(yùn)行的虛擬機(jī),包括:
[0011 ]接收監(jiān)控服務(wù)器在監(jiān)控到虛擬機(jī)服務(wù)器異常時(shí)觸發(fā)的異常信息;
[0012]獲取所述異常信息中虛擬機(jī)服務(wù)器的標(biāo)識(shí);
[0013]在所述負(fù)載信息中提取與所述虛擬機(jī)服務(wù)器的標(biāo)識(shí)對(duì)應(yīng)的虛擬機(jī)標(biāo)識(shí)。
[0014]在其中一個(gè)實(shí)施例中,所述方法還包括:
[0015]定期收集備用服務(wù)器的負(fù)載信息;
[0016]在確定所述虛擬機(jī)服務(wù)器所運(yùn)行的虛擬機(jī)后,根據(jù)收集的備用服務(wù)器的負(fù)載信息選定備用服務(wù)器;
[0017]向選定的備用服務(wù)器發(fā)送啟動(dòng)所述虛擬機(jī)的啟動(dòng)指令。
[0018]在其中一個(gè)實(shí)施例中,所述方法還包括:
[0019]所述備用服務(wù)器或者所述虛擬機(jī)服務(wù)器在啟動(dòng)所述虛擬機(jī)時(shí),鏈接到所述分布式文件系統(tǒng)中的啟動(dòng)文件開(kāi)始啟動(dòng)所述虛擬機(jī),并將所述啟動(dòng)文件同步到本地的虛擬機(jī)磁盤(pán)后重新鏈接到本地的啟動(dòng)文件繼續(xù)啟動(dòng)所述虛擬機(jī)。
[0020]上述虛擬機(jī)運(yùn)行方法,當(dāng)監(jiān)測(cè)到虛擬機(jī)服務(wù)器發(fā)生異常時(shí),根據(jù)收集到虛擬機(jī)服務(wù)器的負(fù)載信息確定虛擬機(jī)服務(wù)器所運(yùn)行的虛擬機(jī),并向備用服務(wù)器發(fā)送啟動(dòng)虛擬機(jī)的啟動(dòng)指令,備用服務(wù)器根據(jù)啟動(dòng)指令從分布式文件系統(tǒng)中獲取虛擬機(jī)的啟動(dòng)文件和增量文件,以在備用服務(wù)器上啟動(dòng)并恢復(fù)虛擬機(jī)的運(yùn)行。這樣,在虛擬機(jī)服務(wù)器出現(xiàn)宕機(jī)時(shí),運(yùn)行在虛擬機(jī)服務(wù)器上的虛擬機(jī)會(huì)的運(yùn)行會(huì)中斷,虛擬機(jī)服務(wù)器對(duì)應(yīng)的備用服務(wù)器會(huì)將在虛擬機(jī)服務(wù)器上運(yùn)行中斷的虛擬機(jī)啟動(dòng),使虛擬機(jī)在備用服務(wù)器上繼續(xù)運(yùn)行,避免了由于虛擬機(jī)運(yùn)行中斷而影響依賴(lài)于虛擬機(jī)的云平臺(tái),提高了虛擬機(jī)的可靠性。
[0021]—種虛擬機(jī)運(yùn)行裝置,所述裝置包括:
[0022]負(fù)載信息收集模塊,用于定期收集虛擬機(jī)服務(wù)器的負(fù)載信息;
[0023]虛擬機(jī)確定模塊,用于當(dāng)監(jiān)測(cè)到所述虛擬機(jī)服務(wù)器發(fā)生異常時(shí),根據(jù)所述虛擬機(jī)服務(wù)器的所述負(fù)載信息確定所述虛擬機(jī)服務(wù)器所運(yùn)行的虛擬機(jī);
[0024]虛擬機(jī)啟動(dòng)模塊,用于向所述備用服務(wù)器發(fā)送啟動(dòng)所述虛擬機(jī)的啟動(dòng)指令,使所述備用服務(wù)器根據(jù)所述啟動(dòng)指令,從所述虛擬機(jī)服務(wù)器和所述備用服務(wù)器各自劃分出的部分磁盤(pán)構(gòu)成的分布式文件系統(tǒng)中獲取所述虛擬機(jī)的啟動(dòng)文件和增量文件,以根據(jù)所述啟動(dòng)文件啟動(dòng)所述虛擬機(jī),并根據(jù)所述增量文件恢復(fù)運(yùn)行狀態(tài)。
[0025]在其中一個(gè)實(shí)施例中,所述虛擬機(jī)服務(wù)器將所述虛擬機(jī)運(yùn)行過(guò)程中所產(chǎn)生的增量文件存儲(chǔ)到所述虛擬機(jī)服務(wù)器的虛擬機(jī)磁盤(pán),并將存儲(chǔ)的增量文件同步到所述分布式文件系統(tǒng)。
[0026]在其中一個(gè)實(shí)施例中,所述虛擬機(jī)確定模塊包括:
[0027]異常信息接收模塊,用于接收監(jiān)控服務(wù)器在監(jiān)控到虛擬機(jī)服務(wù)器異常時(shí)觸發(fā)的異常信息;
[0028]服務(wù)器標(biāo)識(shí)獲取模塊,用于獲取所述異常信息中虛擬機(jī)服務(wù)器的標(biāo)識(shí);
[0029]虛擬機(jī)標(biāo)識(shí)提取模塊,用于在所述負(fù)載信息中提取與所述虛擬機(jī)服務(wù)器的標(biāo)識(shí)對(duì)應(yīng)的虛擬機(jī)標(biāo)識(shí)。
[0030]在其中一個(gè)實(shí)施例中,所述負(fù)載信息收集模塊還用于定期收集備用服務(wù)器的負(fù)載信息;
[0031]所述虛擬機(jī)啟動(dòng)模塊還用于在確定所述虛擬機(jī)服務(wù)器所運(yùn)行的虛擬機(jī)后,根據(jù)收集的備用服務(wù)器的負(fù)載信息選定備用服務(wù)器;向選定的備用服務(wù)器發(fā)送啟動(dòng)所述虛擬機(jī)的啟動(dòng)指令。
[0032]在其中一個(gè)實(shí)施例中,所述備用服務(wù)器或者所述虛擬機(jī)服務(wù)器在啟動(dòng)所述虛擬機(jī)時(shí),鏈接到所述分布式文件系統(tǒng)中的啟動(dòng)文件開(kāi)始啟動(dòng)所述虛擬機(jī),并將所述啟動(dòng)文件同步到本地的虛擬機(jī)磁盤(pán)后重新鏈接到本地的啟動(dòng)文件繼續(xù)啟動(dòng)所述虛擬機(jī)。
[0033]上述虛擬機(jī)運(yùn)行裝置,當(dāng)監(jiān)測(cè)到虛擬機(jī)服務(wù)器發(fā)生異常時(shí),根據(jù)收集到虛擬機(jī)服務(wù)器的負(fù)載信息確定虛擬機(jī)服務(wù)器所運(yùn)行的虛擬機(jī),并向備用服務(wù)器發(fā)送啟動(dòng)虛擬機(jī)的啟動(dòng)指令,備用服務(wù)器根據(jù)啟動(dòng)指令從分布式文件系統(tǒng)中獲取虛擬機(jī)的啟動(dòng)文件和增量文件,以在備用服務(wù)器上啟動(dòng)并恢復(fù)虛擬機(jī)的運(yùn)行。這樣,在虛擬機(jī)服務(wù)器出現(xiàn)宕機(jī)時(shí),運(yùn)行在虛擬機(jī)服務(wù)器上的虛擬機(jī)會(huì)的運(yùn)行會(huì)中斷,虛擬機(jī)服務(wù)器對(duì)應(yīng)的備用服務(wù)器會(huì)將在虛擬機(jī)服務(wù)器上運(yùn)行中斷的虛擬機(jī)啟動(dòng),使虛擬機(jī)在備用服務(wù)器上繼續(xù)運(yùn)行,避免了由于虛擬機(jī)運(yùn)行中斷而影響依賴(lài)于虛擬機(jī)的云平臺(tái),提高了虛擬機(jī)的可靠性。
【附圖說(shuō)明】
[0034]圖1為一個(gè)實(shí)施例中虛擬機(jī)運(yùn)行系統(tǒng)的應(yīng)用環(huán)境圖;
[0035]圖2為一個(gè)實(shí)施例中虛擬機(jī)運(yùn)行方法的流程示意圖;
[0036]圖3為一個(gè)實(shí)施例中選定備用服務(wù)器的步驟的流程示意圖;
[0037]圖4為一個(gè)實(shí)施例中虛擬機(jī)運(yùn)行裝置的結(jié)構(gòu)框圖;
[0038]圖5為一個(gè)實(shí)施例中虛擬機(jī)確定模塊的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0039]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0040]圖1是虛擬機(jī)運(yùn)行系統(tǒng)的應(yīng)用環(huán)境圖。虛擬機(jī)運(yùn)行系統(tǒng)包括管理控制平臺(tái)102、監(jiān)測(cè)服務(wù)器104、虛擬機(jī)服務(wù)器106和備用服務(wù)器集群110。其中監(jiān)測(cè)服務(wù)器102和虛擬機(jī)服務(wù)器104均可以是一臺(tái)服務(wù)器,也可以是服務(wù)器集群。管理控制平臺(tái)102、監(jiān)測(cè)服務(wù)器104、虛擬機(jī)服務(wù)器106和備用服務(wù)器集群110之間通過(guò)網(wǎng)絡(luò)相連接。備用服務(wù)器集群110包括至少一個(gè)備用服務(wù)器,還包括管理服務(wù)器112。當(dāng)備用服務(wù)器集群110中只有一臺(tái)備用服務(wù)器時(shí),則備用服務(wù)器同時(shí)也是管理服務(wù)器。
[0041 ]如圖2所示,在一個(gè)實(shí)施例中,提供一種虛擬機(jī)運(yùn)行方法,本實(shí)施例以該方法應(yīng)用圖1中備用服務(wù)器集群110中的管理服務(wù)器112上為例進(jìn)行說(shuō)明,該方法具體包括以下步驟:
[0042]步驟202,定期收集虛擬機(jī)服務(wù)器的負(fù)載信息。
[0043]具體地,管理服務(wù)器112可根據(jù)預(yù)設(shè)間隔時(shí)間來(lái)收集虛擬機(jī)服務(wù)器106的負(fù)載信息。虛擬機(jī)服務(wù)器106的負(fù)載信息是用于表示虛擬機(jī)服務(wù)器106中所運(yùn)行任務(wù)的情況。虛擬機(jī)服務(wù)器106的負(fù)載信息具體可以包括虛擬機(jī)服務(wù)器106的標(biāo)識(shí)、虛擬機(jī)服務(wù)器106的資源利用率、虛擬機(jī)服務(wù)器106上所運(yùn)行虛擬機(jī)的個(gè)數(shù)以及每個(gè)虛擬機(jī)服務(wù)器的標(biāo)識(shí)。
[0044]在一個(gè)實(shí)施例中,在虛擬機(jī)服務(wù)器106所在網(wǎng)段中設(shè)置備用服務(wù)器集群110,在備用服務(wù)器集群110中設(shè)置奇數(shù)個(gè)備用服務(wù)器,奇數(shù)大于等于I。備用服務(wù)器集群110中的備用服務(wù)器的數(shù)量與網(wǎng)段中虛擬機(jī)服務(wù)器的數(shù)量相匹配,當(dāng)網(wǎng)段虛擬機(jī)服務(wù)器的數(shù)量較多時(shí),則設(shè)置多個(gè)備用服務(wù)器,當(dāng)網(wǎng)段虛擬機(jī)服務(wù)器的數(shù)量較少時(shí),則設(shè)置少量備用服務(wù)器。備用服務(wù)器之間通過(guò)由備用服務(wù)器發(fā)起投票的方式選取管理服務(wù)器,每次統(tǒng)計(jì)得票數(shù)最多的備用服