国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      虛擬機處理器資源的調(diào)整方法、裝置與虛擬機系統(tǒng)的制作方法

      文檔序號:6492896閱讀:457來源:國知局
      虛擬機處理器資源的調(diào)整方法、裝置與虛擬機系統(tǒng)的制作方法
      【專利摘要】本發(fā)明公開了一種虛擬機處理器資源的調(diào)整方法、裝置與虛擬機系統(tǒng)。該方法包括:針對虛擬機VM待刪除的VCPU,識別VCPU上是否有資源調(diào)度請求;響應(yīng)于VCPU上有資源調(diào)度請求,根據(jù)VM的操作系統(tǒng)啟動自動故障檢測操作的響應(yīng)時間門限值,延遲響應(yīng)資源調(diào)度請求,使得資源調(diào)度請求在響應(yīng)時間門限值內(nèi)未獲得響應(yīng);響應(yīng)于資源調(diào)度請求在響應(yīng)時間門限值內(nèi)未獲得響應(yīng),VM的操作系統(tǒng)啟動自動故障檢測操作,將VCPU上排隊的進程調(diào)度至VM的其他VCPU;刪除VCPU,釋放VCPU占有的物理服務(wù)器CPU資源。通過本發(fā)明提供的技術(shù)方案,能夠在運行狀態(tài)下減少VCPU資源,實現(xiàn)了虛擬機資源的彈性伸縮。
      【專利說明】虛擬機處理器資源的調(diào)整方法、裝置與虛擬機系統(tǒng)
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及計算機應(yīng)用領(lǐng)域,特別涉及一種虛擬機處理器資源的調(diào)整方法、裝置與虛擬機系統(tǒng)。
      【背景技術(shù)】
      [0002]虛擬機(Virtual Machine,VM)指通過軟件模擬的具有完整硬件系統(tǒng)功能的、運行在一個完全隔離環(huán)境中的完整計算機系統(tǒng)。虛擬機應(yīng)用軟件在宿主計算機的真實處理器和內(nèi)存基礎(chǔ)之上為虛擬機提供虛擬的硬件,這些虛擬的硬件能夠完全被安裝在虛擬機上的操作系統(tǒng)認為是真實的硬件。從操作系統(tǒng)的運行特性來看,虛擬出的硬件和真實的硬件沒有本質(zhì)上的差別,并且各個虛擬機之間具備相對獨立的運行空間。
      [0003]當(dāng)虛擬機處于運行狀態(tài)時,在某些情況下需要動態(tài)調(diào)整虛擬機的計算資源。例如,用戶需要配置某臺虛擬機的虛擬中央處理器VCPU個數(shù),在業(yè)務(wù)高峰期可以從I個VCPU增加到2個或4個VCPU。在業(yè)務(wù)處于平緩區(qū)而要從4個VCPU調(diào)整為2個VCPU。虛擬機在線資源彈性伸縮能夠?qū)崿F(xiàn)按需使用、按需分配,有效提高資源利用率。
      [0004]當(dāng)前針對虛擬機運行狀態(tài)下實現(xiàn)虛擬機部分資源的調(diào)整,可以實現(xiàn)在物理主機CPU超線程核數(shù)范圍內(nèi)在線增加VCPU的個數(shù)。目前也有一些針對采用RISC指令集的小型機,例如Unix服務(wù)器,可以提供運行過程中動態(tài)調(diào)整虛擬機的CPU和內(nèi)存,既可以增加也可以減少。
      [0005]不同于采用RISC指令集的小型機,x86服務(wù)器具有價格低廉、架構(gòu)通用等諸多優(yōu)點,成為了業(yè)界主流的計算單元,隨著業(yè)務(wù)應(yīng)用的需求不斷改變,在現(xiàn)有x86環(huán)境下實現(xiàn)在線減少虛擬機VCPU資源,十分重要。然而,在CISC指令集的x86架構(gòu)下,由于其虛擬化技術(shù)是近幾年來才得到大規(guī)模的發(fā)展,在x86架構(gòu)下的虛擬化軟件僅能夠支持動態(tài)VCPU資源的增加,而不能實現(xiàn)運行過程中減少VCPU資源,不能實現(xiàn)虛擬機物理資源的彈性伸縮。

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

      [0006]根據(jù)本發(fā)明實施例的一個方面,所要解決的一個技術(shù)問題是:提供一種虛擬機處理器資源的調(diào)整方法、裝置與虛擬機系統(tǒng),以實現(xiàn)虛擬機運行過程中減少虛擬中央處理器VCPU資源。
      [0007]本發(fā)明實施例提供的一種虛擬機處理器資源的調(diào)整方法,虛擬機VM具有多個虛擬處理器VCPU,所述方法包括:
      [0008]針對虛擬機VM待刪除的VCPU,識別所述VCPU上是否有資源調(diào)度請求;
      [0009]響應(yīng)于所述VCPU上有資源調(diào)度請求,根據(jù)所述VM的操作系統(tǒng)啟動自動故障檢測操作的響應(yīng)時間門限值,延遲響應(yīng)所述資源調(diào)度請求,使得所述資源調(diào)度請求在所述響應(yīng)時間門限值內(nèi)未獲得響應(yīng);
      [0010]響應(yīng)于所述資源調(diào)度請求在所述響應(yīng)時間門限值內(nèi)未獲得響應(yīng),所述VM的操作系統(tǒng)啟動自動故障檢測操作,將所述VCPU上排隊的進程調(diào)度至所述VM的其他VCPU ;[0011]刪除所述VCPU,釋放所述VCPU占有的物理服務(wù)器CPU資源。
      [0012]優(yōu)選地,所述方法還包括:
      [0013]比較所述多個VCPU的平均資源利用率;
      [0014]根據(jù)待刪除的VCPU的個數(shù)n,從所述多個VCPU中,選取平均資源利用率最低的η個VCPU,η為大于等于I的自然數(shù);
      [0015]以所述η個VCPU中的每一個VCPU作為待刪除的VCPU,分別執(zhí)行所述針對VM待刪除的虛擬處理器VCPU,識別所述VCPU上是否有資源調(diào)度請求的操作。
      [0016]優(yōu)選地,所述延遲所述VCPU響應(yīng)所述資源調(diào)度請求,具體包括:
      [0017]提高所述VCPU上的空閑idle進程的優(yōu)先級,使所述VCPU切換至idle狀態(tài);
      [0018]所述VM的虛擬機監(jiān)視器VMM不執(zhí)行為所述資源調(diào)度請求分配物理資源的操作。
      [0019]優(yōu)選地,所述提高所述VCPU的空閑idle進程的優(yōu)先級,具體包括:
      [0020]通過暫停suspend機制提高所述VCPU的空閑idle進程的優(yōu)先級。
      [0021]優(yōu)選地,所述方法還包括:
      [0022]接收虛擬處理器的資源調(diào)整指令,識別所述資源調(diào)整指令指示的調(diào)整內(nèi)容;
      [0023]響應(yīng)于所述資源調(diào)整指令為減少VCPU資源的資源調(diào)整指令,確定待刪除的VCPU的個數(shù)η后,執(zhí)行所述比較所述多個VCPU的平均資源利用率的操作。
      [0024]本發(fā)明實施例提供的一種虛擬機處理器資源的調(diào)整裝置,虛擬機VM具有多個虛擬處理器VCPU,所述裝置包括:
      [0025]識別單元,用于針對虛擬機VM待刪除的VCPU,識別所述VCPU上是否有資源調(diào)度請求;
      [0026]延遲單元,用于響應(yīng)于所述VCPU上有資源調(diào)度請求,根據(jù)所述VM的操作系統(tǒng)啟動自動故障檢測操作的響應(yīng)時間門限值,延遲響應(yīng)所述資源調(diào)度請求,使得所述資源調(diào)度請求在所述響應(yīng)時間門限值內(nèi)未獲得響應(yīng),以使得所述VM的操作系統(tǒng)啟動自動故障檢測操作,將所述VCPU上排隊的進程調(diào)度至所述VM的其他VCPU ;
      [0027]釋放單元,用于刪除所述VCPU,釋放所述VCPU占有的物理服務(wù)器CPU資源。
      [0028]優(yōu)選地,所述裝置還包括:
      [0029]選擇單元,用于比較所述多個VCPU的平均資源利用率;根據(jù)待刪除的VCPU的個數(shù)η,從所述多個VCPU中,選取平均資源利用率最低的η個VCPU,η為大于等于I的自然數(shù);
      [0030]所述識別單元以所述選擇單元選取的所述η個VCPU中的每一個VCPU作為待刪除的VCPU,分別執(zhí)行所述針對VM待刪除的虛擬處理器VCPU,識別所述VCPU上是否有資源調(diào)度請求的操作。
      [0031]優(yōu)選地,所述延遲單元,具體用于提高所述VCPU上的空閑idle進程的優(yōu)先級,使所述VCPU切換至idle狀態(tài),VM的虛擬機監(jiān)視器VMM不執(zhí)行為所述資源調(diào)度請求分配物理資源的操作。
      [0032]優(yōu)選地,所述延遲單元,具體用于通過suspend機制提高所述VCPU的空閑idle進程的優(yōu)先級。
      [0033]優(yōu)選地,所述裝置還包括:
      [0034]指令接收單元,用于接收虛擬處理器的資源調(diào)整指令,識別所述資源調(diào)整指令指示的調(diào)整內(nèi)容;響應(yīng)于所述資源調(diào)整指令為減少VCPU資源的資源調(diào)整指令,確定待刪除的VCPU的個數(shù)η。
      [0035]本發(fā)明實施例提供的一種虛擬機系統(tǒng),所述虛擬機具有多個虛擬處理器VCPU,所述虛擬機系統(tǒng)包括:
      [0036]識別單元,用于針對虛擬機系統(tǒng)待刪除的VCPU,識別所述VCPU上是否有資源調(diào)度請求;
      [0037]虛擬機監(jiān)視器VMM,用于響應(yīng)于所述VCPU上有資源調(diào)度請求,根據(jù)所述虛擬機系統(tǒng)的操作系統(tǒng)啟動自動故障檢測操作的響應(yīng)時間門限值,延遲響應(yīng)所述資源調(diào)度請求,使得所述資源調(diào)度請求在所述響應(yīng)時間門限值內(nèi)未獲得響應(yīng);
      [0038]操作系統(tǒng),用于識別所述資源調(diào)度請求在所述響應(yīng)時間門限值內(nèi)未獲得響應(yīng),啟動自動故障檢測操作,將所述VCPU上排隊的進程調(diào)度至所述虛擬機系統(tǒng)的其他VCPU ;
      [0039]釋放單元,用于響應(yīng)于所述VCPU上沒有排隊的進程,刪除所述VCPU,釋放所述VCPU占有的物理服務(wù)器CPU資源。
      [0040]優(yōu)選地,所述虛擬機系統(tǒng)還包括:
      [0041]選擇單元,用于比較所述多個VCPU的平均資源利用率;根據(jù)待刪除的VCPU的個數(shù)n,從所述多個VCPU中,選取平均資源利用率最低的η個VCPU,η為大于等于I的自然數(shù);
      [0042]所述識別單元以所述選擇單元選取的所述η個VCPU中的每一個VCPU作為待刪除的VCPU,分別執(zhí)行所述針對虛擬機系統(tǒng)待刪除的虛擬處理器VCPU,識別所述VCPU上是否有資源調(diào)度請求的操作。
      [0043]優(yōu)選地,所述VMM,具體用于提高所述VCPU上的空閑idle進程的優(yōu)先級,使所述VCPU切換至idle狀態(tài),所述虛擬機系統(tǒng)的VMM不執(zhí)行為所述資源調(diào)度請求分配物理資源的操作。
      [0044]基于本發(fā)明上述實施例提供的虛擬機處理器資源的調(diào)整方法、裝置與虛擬機系統(tǒng),針對虛擬機VM待刪除的VCPU,根據(jù)VM的操作系統(tǒng)啟動自動故障檢測操作的響應(yīng)時間門限值,延遲響應(yīng)資源調(diào)度請求,使得資源調(diào)度請求在響應(yīng)時間門限值內(nèi)未獲得響應(yīng),由VM的操作系統(tǒng)啟動自動故障檢測操作,將VCPU上排隊的進程調(diào)度至VM的其他VCPU,從而能夠刪除該VCPU。通過上述方案能夠在虛擬機運行狀態(tài)下減少VCPU資源,實現(xiàn)了虛擬機資源的彈性伸縮。根據(jù)上述各實施例,可以在x86架構(gòu)物理器的虛擬機上應(yīng)用本發(fā)明提供的技術(shù)方案,實現(xiàn)了 x86架構(gòu)下的虛擬化軟件對動態(tài)VCPU資源減少的支持。
      [0045]通過以下參照附圖對本發(fā)明的示例性實施例的詳細描述,本發(fā)明的其它特征及其優(yōu)點將會變得清楚。
      【專利附圖】

      【附圖說明】
      [0046]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
      [0047]同時,應(yīng)當(dāng)明白,為了便于描述,附圖中所示出的各個部分的尺寸并不是按照實際的比例關(guān)系繪制的。相似的標(biāo)號和字母在下面的附圖中表示類似項,因此,一旦某一項在一個附圖中被定義,則在隨后的附圖中不需要對其進行進一步討論。[0048]構(gòu)成說明書的一部分的附圖描述了本發(fā)明的實施例,并且連同說明書一起用于解釋本發(fā)明的原理。
      [0049]參照附圖,根據(jù)下面的詳細描述,可以更加清楚地理解本發(fā)明,其中:
      [0050]圖1示出本發(fā)明所提供的虛擬機處理器資源的調(diào)整方法一種實施例的流程示意圖;
      [0051]圖2示出本發(fā)明所提供的虛擬機處理器資源的調(diào)整方法另一種實施例的流程示意圖;
      [0052]圖3示出虛擬機系統(tǒng)的結(jié)構(gòu)示意圖;
      [0053]圖4示出虛擬機系統(tǒng)的虛擬機監(jiān)視器對指令的處理流程示意圖;
      [0054]圖5示出本發(fā)明所提供的虛擬機處理器資源的調(diào)整裝置一種實施例的結(jié)構(gòu)示意圖;
      [0055]圖6示出本發(fā)明所提供的虛擬機系統(tǒng)一種實施例的結(jié)構(gòu)示意圖;
      [0056]圖7示出本發(fā)明所提供的虛擬機處理器資源的調(diào)整方法一種實施例的網(wǎng)絡(luò)連接示意圖。
      【具體實施方式】
      [0057]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。應(yīng)注意到:除非另外具體說明,否則在這些實施例中闡述的部件和步驟的相對布置不限制本發(fā)明的范圍。
      [0058]以下對至少一個示例性實施例的描述實際上僅僅是說明性的,決不作為對本發(fā)明及其應(yīng)用或使用的任何限制?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
      [0059]對于相關(guān)領(lǐng)域普通技術(shù)人員已知的技術(shù)、方法和設(shè)備可能不作詳細討論,但在適當(dāng)情況下,所述技術(shù)、方法和設(shè)備應(yīng)當(dāng)被視為授權(quán)說明書的一部分。
      [0060]在這里示出和討論的所有示例中,任何具體值應(yīng)被解釋為僅僅是示例性的,而不是作為限制。因此,示例性實施例的其它示例可以具有不同的值。
      [0061]以下各實施例所提供的虛擬機處理器資源的調(diào)整方法、裝置與虛擬機系統(tǒng)可以應(yīng)用在x86架構(gòu)服務(wù)器的虛擬機上,實現(xiàn)x86架構(gòu)下的虛擬化軟件對動態(tài)VCPU資源減少的支持,也可以應(yīng)用在基于類似指令集物理主機的虛擬機上。
      [0062]參見圖1所示,圖1示出本發(fā)明所提供的虛擬機處理器資源的調(diào)整方法一種實施例的流程示意圖。虛擬機VM具有多個虛擬處理器VCPU,該實施例提供的虛擬機處理器資源的調(diào)整方法包括以下步驟。
      [0063]101,針對虛擬機VM待刪除的VCPU,識別VCPU上是否有資源調(diào)度請求。
      [0064]102,響應(yīng)于VCPU上有資源調(diào)度請求,根據(jù)VM的操作系統(tǒng)啟動自動故障檢測操作的響應(yīng)時間門限值,延遲響應(yīng)資源調(diào)度請求,使得資源調(diào)度請求在響應(yīng)時間門限值內(nèi)未獲得響應(yīng)。其中,響應(yīng)時間門限值為資源調(diào)度請求等待獲得響應(yīng)的最大時間值,當(dāng)資源調(diào)度請求在響應(yīng)時間門限值內(nèi)未得到響應(yīng),VM的操作系統(tǒng)啟動自動故障檢測。
      [0065]103,響應(yīng)于資源調(diào)度請求在響應(yīng)時間門限值內(nèi)未獲得響應(yīng),VM的操作系統(tǒng)啟動自動故障檢測操作,將VCPU上排隊的進程調(diào)度至VM的其他VCPU。由于VM的操作系統(tǒng)支持VCPU的自動故障檢測和重新調(diào)度,當(dāng)資源調(diào)度請求在響應(yīng)時間門限值內(nèi)未得到響應(yīng),VM的操作系統(tǒng)認為該VCPU出現(xiàn)故障,即通過故障模擬強迫虛擬機掛起要刪除的VCPU,從而將該VCPU上排隊的進程遷移到VCPU上。
      [0066]104,刪除VCPU,釋放VCPU占有的物理服務(wù)器CPU資源。
      [0067]基于本發(fā)明上述實施例提供的方法,針對虛擬機VM待刪除的VCPU,通過延遲響應(yīng)資源調(diào)度請求,使得資源調(diào)度請求在響應(yīng)時間門限值內(nèi)未獲得響應(yīng),由VM的操作系統(tǒng)啟動自動故障檢測操作,從而將VCPU上排隊的進程調(diào)度至VM的其他VCPU。從而能夠空出VCPU,并刪除該VCPU,完成資源的徹底回收,實現(xiàn)了運行狀態(tài)下動態(tài)VCPU資源的減少。
      [0068]參見圖2所示,圖2示出本發(fā)明所提供的虛擬機處理器資源的調(diào)整方法另一種實施例的流程示意圖。根據(jù)本發(fā)明方法實施例的另一個具體示例,該方法還包括:
      [0069]201,比較多個VCPU的平均資源利用率;
      [0070]202,根據(jù)待刪除的VCPU的個數(shù)n,從多個VCPU中,選取平均資源利用率最低的η個VCPU作為待刪除的VCPU,η為大于等于I的自然數(shù)。
      [0071]之后,以η個VCPU中的每一個VCPU作為待刪除的VCPU,分別執(zhí)行針對VM待刪除的虛擬處理器VCPU,識別VCPU上是否有資源調(diào)度請求的操作。
      [0072]參見圖3所示,圖3示出虛擬機系統(tǒng)的結(jié)構(gòu)示意圖。典型的基于多核平臺的虛擬機系統(tǒng)可分為3層:提供物理硬件的物理主機、虛擬機監(jiān)視器(VMM,Virtual MachineMonitor)、虛擬機VM。如圖3所示,在該結(jié)構(gòu)下虛擬機系統(tǒng)按照兩級的調(diào)度框架進行調(diào)度。首先是VMM負責(zé)第一級調(diào)度,即對VCPU在物理處理單元的調(diào)度。其次是客戶操作系統(tǒng)負責(zé)第二級調(diào)度,即虛擬機線程或進程在VCPU上的調(diào)度。從VMM的視覺來看,VCPU對物理CPU的訪問相當(dāng)于VMM的一個子進程,VCPU所獲得的分配資源就是VCPU對應(yīng)進程所獲得的資源。因此,通過本發(fā)明提供的控制方法,通過控制VMM不執(zhí)行為資源調(diào)度請求分配物理資源的操作,使VCPU上的資源請求得不到及時響應(yīng),從而能夠?qū)CPU實施控制并實現(xiàn)減少VCPUo
      [0073]根據(jù)本發(fā)明方法實施例的一個具體示例,圖1所示實施例的操作103中,延遲VCPU響應(yīng)資源調(diào)度請求可以通過如下方式實現(xiàn):
      [0074]提高VCPU上的空閑idle進程的優(yōu)先級,使VCPU切換至idle狀態(tài);VM的VMM不執(zhí)行為資源調(diào)度請求分配物理資源的操作。
      [0075]對于延遲操作,也可以通過在VMM的調(diào)度機制上進行設(shè)置,使得虛擬機的VCPU不能獲得執(zhí)行的機會。參見圖4所示,圖4示出虛擬機系統(tǒng)的虛擬機監(jiān)視器對指令的處理流程示意圖??梢圆蓸印疤貦?quán)解除”和“陷入一模擬”技術(shù),通過將VMM運行在最高特權(quán)級,客戶操作系統(tǒng)的大部分指令仍可在硬件上直接運行。當(dāng)客戶操作系統(tǒng)執(zhí)行到特權(quán)指令,才會陷入到最高特權(quán)級的VMM模擬執(zhí)行。如圖4所示,VMM通常包括調(diào)度器、分配器和解釋器,當(dāng)調(diào)度器分析識別收到的指令是可能改變資源的指令時,交給分配器進行資源調(diào)整。將訪問特權(quán)資源的指令交給解釋器。因此,通過分配器不對可能改變資源的指令進行響應(yīng),從而延遲VCPU響應(yīng)資源調(diào)度請求。
      [0076]根據(jù)本發(fā)明方法實施例的一個具體示例,具體可以通過suspend機制提高VCPU的空閑idle進程的優(yōu)先級。例如,設(shè)置idle進程的優(yōu)先級為最高,迫使該CPU切換到執(zhí)行idle,從而實現(xiàn)在x86架構(gòu)的資源環(huán)境下,該VCPU上排隊的進程得不到響應(yīng)而被遷移到其它VCPU上。
      [0077]根據(jù)本發(fā)明方法實施例的一個具體示例,該方法還包括:
      [0078]接收虛擬處理器的資源調(diào)整指令,識別資源調(diào)整指令指示的調(diào)整內(nèi)容;響應(yīng)于資源調(diào)整指令為減少VCPU資源的資源調(diào)整指令,確定待刪除的VCPU的個數(shù)η后,執(zhí)行比較多個VCPU的平均資源利用率的操作。
      [0079]若資源調(diào)整指令為增加VCPU資源的資源調(diào)整指令,則按照執(zhí)行對應(yīng)的增加VCPU資源的操作,具體執(zhí)行增加VCPU資源的操作,可以按照本領(lǐng)域技術(shù)人員所知道的實現(xiàn)方式實施。
      [0080]參見圖5所示,圖5示出本發(fā)明所提供的虛擬機處理器資源的調(diào)整系統(tǒng)一種實施例的結(jié)構(gòu)示意圖。虛擬機VM具有多個虛擬處理器VCPU,該實施例提供的虛擬機處理器資源的調(diào)整裝置包括:
      [0081]識別單元501,用于針對虛擬機VM待刪除的VCPU,識別VCPU上是否有資源調(diào)度請求;
      [0082]延遲單元502,用于響應(yīng)于VCPU上有資源調(diào)度請求,根據(jù)VM的操作系統(tǒng)啟動自動故障檢測操作的響應(yīng)時間門限值,延遲響應(yīng)資源調(diào)度請求,使得資源調(diào)度請求在響應(yīng)時間門限值內(nèi)未獲得響應(yīng),以使得VM的操作系統(tǒng)啟動自動故障檢測操作,將VCPU上排隊的進程調(diào)度至VM的其他VCPU ;
      [0083]釋放單元503,用于響應(yīng)于VCPU上沒有排隊的進程,刪除VCPU,釋放VCPU占有的物理服務(wù)器CPU資源。
      [0084]根據(jù)本發(fā)明裝置實施例的一個具體示例,裝置還包括:
      [0085]選擇單元504,用于比較多個VCPU的平均資源利用率;根據(jù)待刪除的VCPU的個數(shù)η,從多個VCPU中,選取平均資源利用率最低的η個VCPU,η為大于等于I的自然數(shù)。識別單元501,以選擇單元選取的η個VCPU中的每一個VCPU作為待刪除的VCPU,分別執(zhí)行針對VM待刪除的虛擬處理器VCPU,識別VCPU上是否有資源調(diào)度請求的操作。
      [0086]根據(jù)本發(fā)明裝置實施例的一個具體示例,延遲單元502具體用于提高VCPU上的空閑idle進程的優(yōu)先級,使VCPU切換至idle狀態(tài),VM的虛擬機監(jiān)視器VMM不執(zhí)行為資源調(diào)度請求分配物理資源的操作。
      [0087]根據(jù)本發(fā)明裝置實施例的一個具體示例,延遲單元502具體用于通過Suspend機制提高VCPU的空閑idle進程的優(yōu)先級。
      [0088]根據(jù)本發(fā)明裝置實施例的一個具體示例,該裝置還包括:
      [0089]指令接收單元505,用于接收虛擬處理器的資源調(diào)整指令,識別資源調(diào)整指令指示的調(diào)整內(nèi)容;響應(yīng)于資源調(diào)整指令為減少VCPU資源的資源調(diào)整指令,確定待刪除的VCPU的個數(shù)η。
      [0090]參見圖6所示,圖6示出本發(fā)明所提供的虛擬機系統(tǒng)一種實施例的結(jié)構(gòu)示意圖。該虛擬機具有多個虛擬處理器VCPU,包括:
      [0091]識別單元601,用于針對虛擬機系統(tǒng)待刪除的VCPUdPjlj VCPU上是否有資源調(diào)度請求,其中,識別單元601可以集成在虛擬機監(jiān)視器VMM602中;
      [0092]虛擬機監(jiān)視器VMM602,用于響應(yīng)于VCPU上有資源調(diào)度請求,根據(jù)VM的操作系統(tǒng)啟動自動故障檢測操作的響應(yīng)時間門限值,延遲響應(yīng)資源調(diào)度請求,使得資源調(diào)度請求在響應(yīng)時間門限值內(nèi)未獲得響應(yīng);
      [0093]虛擬機系統(tǒng)的操作系統(tǒng)603,用于識別資源調(diào)度請求在響應(yīng)時間門限值內(nèi)未獲得響應(yīng),啟動自動故障檢測操作,將VCPU上排隊的進程調(diào)度至虛擬機系統(tǒng)的其他VCPU ;
      [0094]釋放單元604,用于刪除VCPU,釋放VCPU占有的物理服務(wù)器CPU資源,其中,釋放單元604也可以集成在虛擬機監(jiān)視器VMM602中。
      [0095]根據(jù)本發(fā)明虛擬機系統(tǒng)實施例的一個具體示例,VM還包括:[0096]選擇單元605,用于比較多個VCPU的平均資源利用率;根據(jù)待刪除的VCPU的個數(shù)n,從多個VCPU中,選取平均資源利用率最低的η個VCPU,η為大于等于I的自然數(shù),其中,選擇單元605可以集成在虛擬機監(jiān)視器VMM602中;
      [0097]識別單元605以選擇單元選取的η個VCPU中的每一個VCPU作為待刪除的VCPU,分別執(zhí)行針對VM待刪除的虛擬處理器VCPU,識別VCPU上是否有資源調(diào)度請求的操作。
      [0098]根據(jù)本發(fā)明虛擬機系統(tǒng)實施例的一個具體示例,VMM602具體用于提高VCPU上的空閑idle進程的優(yōu)先級,使VCPU切換至idle狀態(tài),虛擬機系統(tǒng)的VMM不執(zhí)行為資源調(diào)度請求分配物理資源的操作。
      [0099]為了更全面的描述本發(fā)明提出的方法,參見圖7所示,圖7示出本發(fā)明所提供的虛擬機處理器資源的調(diào)整方法一種實施例的網(wǎng)絡(luò)連接示意圖。根據(jù)上述實施例的描述,本領(lǐng)域技術(shù)應(yīng)該知道,以下操作中可以選擇性地執(zhí)行部分操作。
      [0100]在圖7中,物理主機上有η臺虛擬機,分別是VM-1,VM-2,……,VM_n,其中VM-1上分配有4個VCPU,分別為VCPU-1、VCPU-2、VCPU-3、VCPU-4。由于業(yè)務(wù)需求的變化,需要將VM-1上面的4個VCPU資源調(diào)整為2個VCPU資源。
      [0101]接收虛擬處理器的資源調(diào)整指令,該指令可以由圖中管理服務(wù)器下發(fā),識別資源調(diào)整指令指示的調(diào)整內(nèi)容為將VM-1上面的4個VCPU資源調(diào)整為2個VCPU資源。
      [0102]響應(yīng)于資源調(diào)整指令為減少VCPU資源的資源調(diào)整指令,即將VM-1上面的4個VCPU資源調(diào)整為2個VCPU資源,對VM-1的各個VCPU的平均利用率進行比較。4個VP⑶的利用率分別為55%、43%、52%、38%,根據(jù)待刪除的VCPU的個數(shù)2,從多個VCPU中,選取平均資源利用率最低的2個VCPU,即VCPU-2和VCPU-4作為待刪除的VCPU。
      [0103]接下來,針對VCPU-2和VCPU-4分別識別VCPU上是否有資源調(diào)度請求。識別VCPU-2和VCPU-4上是否有資源調(diào)度請求,響應(yīng)于VCPU-2和VCPU-4上有資源調(diào)度請求,根據(jù)VM — I的操作系統(tǒng)啟動自動故障檢測操作的響應(yīng)時間門限值,分別對VCPU-2和VCPU-4的資源調(diào)度請求進行延遲。
      [0104]例如,虛擬機VM-1的操作系統(tǒng)資源調(diào)度算法支持對長時間得不到響應(yīng)的CPU能執(zhí)行進程切換,即支持VCPU的自動故障檢測和重新調(diào)度。VM -1的操作系統(tǒng)啟動自動故障檢測操作的響應(yīng)時間門限值5秒,VMM分別對VCPU-2和VCPU-4的資源調(diào)度請求延遲10秒,即延遲10秒后如果仍在請求隊列中才進行響應(yīng)。當(dāng)VCPU-2和VCPU-4的資源調(diào)度請求在5秒內(nèi)得不到響應(yīng),由于VMM對資源調(diào)度請求的延遲,VM-1的操作系統(tǒng)發(fā)現(xiàn)5秒內(nèi)VCPU-2和VCPU-4上的計算請求都得不到調(diào)度,則認為這兩個VCPU處于故障狀態(tài),將VCPU-2和VCPU-4上排隊的進程遷移到VCPU-1和VCPU-3上執(zhí)行,將VCPU-2和VCPU-4在短時間內(nèi)切換到執(zhí)行idle模式,最后進入halt狀態(tài)。當(dāng)VMM檢測到VCPU-2和VCPU-4上面除idle進程外沒有其他排隊的進程時,從邏輯上刪除VCPU-2和VCPU-4,釋放這2個VCPU在物理服務(wù)器CPU上占用的資源,完成CPU資源的徹底回收,減少虛擬機使用的計算資源,從而實現(xiàn)在線減少虛擬機VCPU資源的目標(biāo)。
      [0105]至此,已經(jīng)詳細描述了根據(jù)本發(fā)明的一種虛擬機處理器資源的調(diào)整方法、裝置與虛擬機系統(tǒng)。為了避免遮蔽本發(fā)明的構(gòu)思,沒有描述本領(lǐng)域所公知的一些細節(jié)。本領(lǐng)域技術(shù)人員根據(jù)上面的描述,完全可以明白如何實施這里公開的技術(shù)方案。
      [0106]本說明書中各個實施例均采用遞進的方式描述,每個實施例重點說明的都是與其它實施例的不同之處,各個實施例之間相同或相似的部分相互參見即可。對于虛擬機處理器資源的調(diào)整裝置、虛擬機實施例而言,由于其與方法實施例基本對應(yīng),所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。
      [0107]可能以許多方式來實現(xiàn)本發(fā)明的虛擬機處理器資源的調(diào)整方法、裝置與虛擬機系統(tǒng)。例如,可通過軟件、硬件、固件或者軟件、硬件、固件的任何組合來實現(xiàn)本發(fā)明的虛擬機處理器資源的調(diào)整方法、裝置與虛擬機系統(tǒng)。用于所述方法的步驟的上述順序僅是為了進行說明,本發(fā)明的方法的步驟不限于以上具體描述的順序,除非以其它方式特別說明。此外,在一些實施例中,還可將本發(fā)明實施為記錄在記錄介質(zhì)中的程序,這些程序包括用于實現(xiàn)根據(jù)本發(fā)明的方法的機器可讀指令。因而,本發(fā)明還覆蓋存儲用于執(zhí)行根據(jù)本發(fā)明的方法的程序的記錄介質(zhì)。
      [0108]雖然已經(jīng)通過示例對本發(fā)明的一些特定實施例進行了詳細說明,但是本領(lǐng)域的技術(shù)人員應(yīng)該理解,以上示例僅是為了進行說明,而不是為了限制本發(fā)明的范圍。本領(lǐng)域的技術(shù)人員應(yīng)該理解,可在不脫離本發(fā)明的范圍和精神的情況下,對以上實施例進行修改。本發(fā)明的范圍由所附權(quán)利要求來限定。
      【權(quán)利要求】
      1.一種虛擬機處理器資源的調(diào)整方法,其特征在于,虛擬機VM具有多個虛擬處理器VCPU,所述方法包括: 針對虛擬機VM待刪除的VCPU,識別所述VCPU上是否有資源調(diào)度請求; 響應(yīng)于所述VCPU上有資源調(diào)度請求,根據(jù)所述VM的操作系統(tǒng)啟動自動故障檢測操作的響應(yīng)時間門限值,延遲響應(yīng)所述資源調(diào)度請求,使得所述資源調(diào)度請求在所述響應(yīng)時間門限值內(nèi)未獲得響應(yīng); 響應(yīng)于所述資源調(diào)度請求在所述響應(yīng)時間門限值內(nèi)未獲得響應(yīng),所述VM的操作系統(tǒng)啟動自動故障檢測操作,將所述VCPU上排隊的進程調(diào)度至所述VM的其他VCPU ; 刪除所述VCPU,釋放所述VCPU占有的物理服務(wù)器CPU資源。
      2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 比較所述多個VCPU的平均資源利用率; 根據(jù)待刪除的VCPU的個數(shù)n,從所述多個VCPU中,選取平均資源利用率最低的η個VCPU,η為大于等于I的自然數(shù); 以所述η個VCPU中的每一個VCPU作為待刪除的VCPU,分別執(zhí)行所述針對VM待刪除的虛擬處理器VCPU,識別所述VCPU上是否有資源調(diào)度請求的操作。
      3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述延遲所述VCPU響應(yīng)所述資源調(diào)度請求,具體包括: 提高所述VCPU上的空閑idle進程的優(yōu)先級,使所述VCPU切換至idle狀態(tài); 所述VM的虛擬機監(jiān)視器VMM不執(zhí)行為所述資源調(diào)度請求分配物理資源的操作。
      4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述提高所述VCPU的空閑idle進程的優(yōu)先級,具體包括: 通過暫停suspend機制提高所述VCPU的空閑idle進程的優(yōu)先級。
      5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述方法還包括: 接收虛擬處理器的資源調(diào)整指令,識別所述資源調(diào)整指令指示的調(diào)整內(nèi)容; 響應(yīng)于所述資源調(diào)整指令為減少VCPU資源的資源調(diào)整指令,確定待刪除的VCPU的個數(shù)η后,執(zhí)行所述比較所述多個VCPU的平均資源利用率的操作。
      6.一種虛擬機處理器資源的調(diào)整裝置,其特征在于,虛擬機VM具有多個虛擬處理器VCPU,所述裝置包括:識別單元,用于針對虛擬機VM待刪除的VCPU,識別所述VCPU上是否有資源調(diào)度請求;延遲單元,用于響應(yīng)于所述VCPU上有資源調(diào)度請求,根據(jù)所述VM的操作系統(tǒng)啟動自動故障檢測操作的響應(yīng)時間門限值,延遲響應(yīng)所述資源調(diào)度請求,使得所述資源調(diào)度請求在所述響應(yīng)時間門限值內(nèi)未獲得響應(yīng),以使得所述VM的操作系統(tǒng)啟動自動故障檢測操作,將所述VCPU上排隊的進程調(diào)度至所述VM的其他VCPU ; 釋放單元,用于刪除所述VCPU,釋放所述VCPU占有的物理服務(wù)器CPU資源。
      7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述裝置還包括: 選擇單元,用于比較所述多個VCPU的平均資源利用率;根據(jù)待刪除的VCPU的個數(shù)η,從所述多個VCPU中,選取平均資源利用率最低的η個VCPU,η為大于等于I的自然數(shù);所述識別單元以所述選擇單元選取的所述η個VCPU中的每一個VCPU作為待刪除的VCPU,分別執(zhí)行所述針對VM待刪除的虛擬處理器VCPU,識別所述VCPU上是否有資源調(diào)度請求的操作。
      8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述延遲單元,具體用于提高所述VCPU上的空閑idle進程的優(yōu)先級,使所述VCPU切換至idle狀態(tài),VM的虛擬機監(jiān)視器VMM不執(zhí)行為所述資源調(diào)度請求分配物理資源的操作。
      9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述延遲單元,具體用于通過suspend機制提高所述VCPU的空閑idle進程的優(yōu)先級。
      10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述裝置還包括: 指令接收單元,用于接收虛擬處理器的資源調(diào)整指令,識別所述資源調(diào)整指令指示的調(diào)整內(nèi)容;響應(yīng)于所述資源調(diào)整指令為減少VCPU資源的資源調(diào)整指令,確定待刪除的VCPU的個數(shù)η。
      11.一種虛擬機系統(tǒng),其特征在于,所述虛擬機具有多個虛擬處理器VCPU,所述虛擬機系統(tǒng)包括: 識別單元,用于針對虛擬機VM待刪除的VCPU,識別所述VCPU上是否有資源調(diào)度請求; 虛擬機監(jiān)視器VMM,用于響應(yīng)于所述VCPU上有資源調(diào)度請求,根據(jù)所述VM的操作系統(tǒng)啟動自動故障檢測操作的響應(yīng)時間門限值,延遲響應(yīng)所述資源調(diào)度請求,使得所述資源調(diào)度請求在所述響應(yīng)時間門限值內(nèi)未獲得響應(yīng); 操作系統(tǒng),用于識別所述資源調(diào)度請求在所述響應(yīng)時間門限值內(nèi)未獲得響應(yīng),啟動自動故障檢測操作,將所述VCPU上排隊的進程調(diào)度至所述VM的其他VCPU ; 釋放單元,用于響應(yīng)于所`述VCPU上沒有排隊的進程,刪除所述VCPU,釋放所述VCPU占有的物理服務(wù)器CPU資源。
      12.根據(jù)權(quán)利要求11所述的虛擬機系統(tǒng),其特征在于,所述VM還包括: 選擇單元,用于比較所述多個VCPU的平均資源利用率;根據(jù)待刪除的VCPU的個數(shù)n,從所述多個VCPU中,選取平均資源利用率最低的η個VCPU,η為大于等于I的自然數(shù); 所述識別單元以所述選擇單元選取的所述η個VCPU中的每一個VCPU作為待刪除的VCPU,分別執(zhí)行所述針對VM待刪除的虛擬處理器VCPU,識別所述VCPU上是否有資源調(diào)度請求的操作。
      13.根據(jù)權(quán)利要求12所述的虛擬機系統(tǒng),其特征在于,所述VMM,具體用于提高所述VCPU上的空閑idle進程的優(yōu)先級,使所述VCPU切換至idle狀態(tài),所述VM的VMM不執(zhí)行為所述資源調(diào)度請求分配物理資源的操作。
      【文檔編號】G06F9/50GK103870332SQ201210539178
      【公開日】2014年6月18日 申請日期:2012年12月13日 優(yōu)先權(quán)日:2012年12月13日
      【發(fā)明者】金華敏, 賴培源, 蔡康, 黃勇軍, 李巧玲, 秦潤鋒, 樊勇兵, 陳天 申請人:中國電信股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1