[發(fā)明專利]一種虛擬機(jī)熱遷移預(yù)測(cè)方法、系統(tǒng)和計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)有效
| 申請(qǐng)?zhí)枺?/td> | 202110451552.4 | 申請(qǐng)日: | 2021-04-26 |
| 公開(kāi)(公告)號(hào): | CN112988332B | 公開(kāi)(公告)日: | 2021-09-21 |
| 發(fā)明(設(shè)計(jì))人: | 張吉祥 | 申請(qǐng)(專利權(quán))人: | 杭州優(yōu)云科技有限公司 |
| 主分類號(hào): | G06F9/455 | 分類號(hào): | G06F9/455 |
| 代理公司: | 杭州宇信知識(shí)產(chǎn)權(quán)代理事務(wù)所(普通合伙) 33231 | 代理人: | 王煦麗 |
| 地址: | 310053 浙江省杭州市濱江區(qū)浦*** | 國(guó)省代碼: | 浙江;33 |
| 權(quán)利要求書: | 查看更多 | 說(shuō)明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 虛擬機(jī) 遷移 預(yù)測(cè) 方法 系統(tǒng) 計(jì)算機(jī) 可讀 存儲(chǔ) 介質(zhì) | ||
本發(fā)明公開(kāi)了一種虛擬機(jī)熱遷移預(yù)測(cè)方法、系統(tǒng)和計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),方法具體包括:S1、虛擬機(jī)新建內(nèi)存臟頁(yè)速率計(jì)算分析的線程;S2、測(cè)算預(yù)設(shè)時(shí)間內(nèi)完成哈希值計(jì)算的內(nèi)存頁(yè)個(gè)數(shù)M;S3、計(jì)算并對(duì)比N×M~(N+1)×M范圍內(nèi)的每一個(gè)內(nèi)存頁(yè)的哈希值,其中,N=0,1,2,3……,直至完成虛擬機(jī)所有內(nèi)存頁(yè)的哈希值計(jì)算,從而得到虛擬機(jī)所有內(nèi)存臟頁(yè)的數(shù)量;S4、基于內(nèi)存臟頁(yè)的數(shù)量計(jì)算得到臟頁(yè)速率,若臟頁(yè)速率大于遷移網(wǎng)絡(luò)帶寬的預(yù)設(shè)比例,則不進(jìn)行熱遷移;能夠準(zhǔn)確預(yù)測(cè)虛擬機(jī)能否熱遷移成功,且避免了虛擬機(jī)無(wú)效遷移和抖動(dòng),不會(huì)導(dǎo)致虛擬機(jī)頻繁地陷出到KVM中影響虛擬機(jī)運(yùn)行自身內(nèi)部的業(yè)務(wù),采用合適哈希算法進(jìn)行內(nèi)存臟頁(yè)速率計(jì)算,進(jìn)一步保證了較小的影響虛擬機(jī)性能。
技術(shù)領(lǐng)域
本發(fā)明涉及虛擬機(jī)技術(shù)領(lǐng)域,尤其涉及一種虛擬機(jī)熱遷移預(yù)測(cè)方法、系統(tǒng)和計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。
背景技術(shù)
隨著虛擬化技術(shù)的不斷發(fā)展,虛擬機(jī)(Virtual Machine,簡(jiǎn)稱VM)的應(yīng)用也越來(lái)越廣泛。 實(shí)際應(yīng)用中經(jīng)常需要把虛擬機(jī)在宿主機(jī)之間進(jìn)行熱遷移,以實(shí)現(xiàn)宿主機(jī)上軟件版本的升級(jí),或者是優(yōu)化資源利用率等。
熱遷移技術(shù)(Live Migration)是將整個(gè)虛擬機(jī)的設(shè)備信息等運(yùn)行狀態(tài)完整保存下來(lái),然后通過(guò)網(wǎng)絡(luò)快速發(fā)送到對(duì)端宿主機(jī)上,并在對(duì)端宿主機(jī)上恢復(fù)虛擬機(jī)狀態(tài),恢復(fù)以后虛擬機(jī)能在對(duì)端宿主機(jī)上平滑運(yùn)行。 這其中最主要的狀態(tài)就是內(nèi)存數(shù)據(jù)。 因?yàn)樘摂M機(jī)內(nèi)存數(shù)據(jù)信息在熱遷移過(guò)程中是不斷變化的,我們把這個(gè)在拷貝后數(shù)據(jù)又變化了的內(nèi)存頁(yè)稱之為“內(nèi)存臟頁(yè)”。在熱遷移算法中通過(guò)反復(fù)迭代拷貝把“內(nèi)存臟頁(yè)”傳輸?shù)綄?duì)端,直到最后剩下的臟頁(yè)數(shù)量非常少的時(shí)候就暫停虛擬機(jī)的運(yùn)行,一次性把剩余的臟頁(yè)拷貝到對(duì)端。
然而,虛擬機(jī)熱遷移并非是完美的事物,它會(huì)導(dǎo)致虛擬機(jī)性能下降和抖動(dòng)。如果虛擬機(jī)的業(yè)務(wù)非常繁忙、內(nèi)存臟頁(yè)產(chǎn)生的速度高于迭代傳輸?shù)乃俣龋ǖ鷤鬏數(shù)乃俣戎饕芟抻跓徇w移使用網(wǎng)絡(luò)的帶寬,以及同時(shí)使用該帶寬的其他虛擬機(jī)),那么會(huì)導(dǎo)致虛擬機(jī)一直處于熱遷移狀態(tài),無(wú)法遷移完成。如果虛擬機(jī)中運(yùn)行著性能抖動(dòng)敏感的業(yè)務(wù)(比如游戲業(yè)務(wù)、直播業(yè)務(wù)),長(zhǎng)時(shí)間無(wú)法完成熱遷移會(huì)導(dǎo)致虛擬機(jī)中運(yùn)行的業(yè)務(wù)性能下降和抖動(dòng),最后甚至是遷移失敗。 如果能準(zhǔn)確預(yù)測(cè)虛擬機(jī)能否成功熱遷移則可以避免無(wú)效的遷移與抖動(dòng),或者另選時(shí)機(jī)去進(jìn)行熱遷移。
中國(guó)發(fā)明專利CN202011415532.3公開(kāi)了一種虛擬熱遷移系統(tǒng)及其熱遷移方法,根據(jù)設(shè)定時(shí)間段內(nèi)待遷移虛擬機(jī)產(chǎn)生的臟頁(yè)量、以及源物理機(jī)和目的物理機(jī)之間的網(wǎng)絡(luò)帶寬,預(yù)估能否在內(nèi)存迭代拷貝的次數(shù)不超過(guò)預(yù)設(shè)閾值的情況下,將待遷移虛擬機(jī)從源物理機(jī)熱遷移到目的物理機(jī)。但是,該方法需要將待遷移虛擬機(jī)的EPT(Extended Page Tables)或NPT(Nested Page Tables)頁(yè)表設(shè)置為只讀,通過(guò)在KVM中攔截虛擬機(jī)寫內(nèi)存操作來(lái)統(tǒng)計(jì)一段時(shí)間內(nèi)虛擬機(jī)的臟頁(yè)變化率。這種方案會(huì)導(dǎo)致虛擬機(jī)因?yàn)閷憙?nèi)存而頻繁陷出到KVM中,從而影響虛擬機(jī)中運(yùn)行的業(yè)務(wù),所以會(huì)導(dǎo)致虛擬機(jī)自身的性能下降與抖動(dòng)。
目前虛擬機(jī)熱遷移采用的方案如下:宿主機(jī)操作系統(tǒng)內(nèi)核KVM模塊在熱遷移啟動(dòng)的時(shí)候創(chuàng)建一個(gè)bitmap來(lái)記錄虛擬機(jī)新產(chǎn)生的內(nèi)存臟頁(yè)的頁(yè)框號(hào),同時(shí)打開(kāi)CPU的自動(dòng)內(nèi)存頁(yè)標(biāo)臟功能。CPU在打開(kāi)自動(dòng)標(biāo)臟功能后會(huì)使用一個(gè)4K大小的內(nèi)存緩存著新產(chǎn)生的臟頁(yè)的頁(yè)框號(hào),我們稱之為“臟頁(yè)位置緩存”。緩存滿了以后 CPU會(huì)主動(dòng)陷入在宿主機(jī)的KVM中把4K的“臟頁(yè)位置緩存”同步到KVM的bitmap,然后清零“臟頁(yè)位置緩存”,重新陷出到虛擬機(jī)中繼續(xù)運(yùn)行。因此當(dāng)虛擬機(jī)中業(yè)務(wù)非常繁忙、內(nèi)存變化非??斓臅r(shí)候會(huì)導(dǎo)致虛擬機(jī)頻繁陷入到宿主機(jī)的KVM中進(jìn)行同步,因此影響虛擬機(jī)自身業(yè)務(wù)的運(yùn)行性能,這就導(dǎo)致了虛擬機(jī)的性能波動(dòng)。
發(fā)明內(nèi)容
本發(fā)明為了克服以上技術(shù)的不足,提供了一種虛擬機(jī)熱遷移預(yù)測(cè)方法、系統(tǒng)和計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),能夠準(zhǔn)確預(yù)測(cè)虛擬機(jī)能否熱遷移成功,且避免了虛擬機(jī)無(wú)效遷移和抖動(dòng)。
本發(fā)明的第一個(gè)方面提供了一種虛擬機(jī)熱遷移預(yù)測(cè)方法,包括:S1、虛擬
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于杭州優(yōu)云科技有限公司,未經(jīng)杭州優(yōu)云科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110451552.4/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 一種可信虛擬機(jī)平臺(tái)
- 虛擬機(jī)參數(shù)遷移的方法、設(shè)備和虛擬機(jī)服務(wù)器
- 一種虛擬機(jī)系統(tǒng)及其安全控制方法
- 一種云計(jì)算系統(tǒng)動(dòng)態(tài)分配虛擬機(jī)的方法
- 一種恢復(fù)、升級(jí)虛擬機(jī)的方法及裝置
- 虛擬機(jī)切換系統(tǒng)及切換方法
- 處理虛擬機(jī)集群的方法和計(jì)算機(jī)系統(tǒng)
- 虛擬機(jī)故障檢測(cè)、恢復(fù)系統(tǒng)及虛擬機(jī)檢測(cè)、恢復(fù)、啟動(dòng)方法
- 一種虛擬機(jī)遷移方法和系統(tǒng)
- 一種虛擬機(jī)容錯(cuò)系統(tǒng)及其容錯(cuò)方法
- 遷移方法和裝置
- 移動(dòng)邊緣系統(tǒng)中遷移應(yīng)用方法、相關(guān)設(shè)備及系統(tǒng)
- 虛擬機(jī)的遷移方法及裝置
- 數(shù)據(jù)遷移方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 計(jì)算任務(wù)遷移方法及計(jì)算任務(wù)遷移器
- 文件遷移方法、裝置、計(jì)算機(jī)設(shè)備及存儲(chǔ)介質(zhì)
- 基于遷移工具的國(guó)產(chǎn)化應(yīng)用系統(tǒng)遷移方法
- 數(shù)據(jù)遷移方法及裝置
- 文件遷移方法及裝置
- 一種數(shù)據(jù)遷移方法、裝置、電子設(shè)備和存儲(chǔ)介質(zhì)
- 圖像編碼裝置、圖像編碼方法、圖像譯碼裝置、圖像譯碼方法、程序以及記錄介質(zhì)
- 圖像編碼裝置、圖像編碼方法、圖像譯碼裝置、圖像譯碼方法
- 圖像編碼裝置、圖像編碼方法、圖像譯碼裝置、圖像譯碼方法
- 基于時(shí)間序列預(yù)測(cè)模型適用性量化的預(yù)測(cè)模型選擇方法
- 圖像編碼裝置、圖像編碼方法、圖像譯碼裝置、圖像譯碼方法
- 分類預(yù)測(cè)方法及裝置、預(yù)測(cè)模型訓(xùn)練方法及裝置
- 幀內(nèi)預(yù)測(cè)的方法及裝置
- 圖像預(yù)測(cè)方法及裝置、電子設(shè)備和存儲(chǔ)介質(zhì)
- 文本預(yù)測(cè)方法、裝置以及電子設(shè)備
- 模型融合方法、預(yù)測(cè)方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 一種數(shù)據(jù)庫(kù)讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





