国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

Xen虛擬機動態(tài)增量遷移的研究實現

2012-05-14 16:55:27姜濤
卷宗 2012年10期
關鍵詞:虛擬機

姜濤

摘要:Xen虛擬機現有遷移機制中,源主機和目的主機需要連接共享存儲服務,共享存儲是動態(tài)遷移的必要條件。針對這一局限性提出了一種包括外存遷移在內的動態(tài)增量遷移方法,可以在動態(tài)遷移過程中,把虛擬機磁盤文件從源主機遷移至目的主機,從而降低了動態(tài)遷移的成本,擴大了動態(tài)遷移的應用范圍。并通過實驗進行了性能分析。

關鍵詞:虛擬機;Xen;增量遷移

1 引言

目前,虛擬機產品主要應用于大規(guī)模數據中心,其在線遷移都依賴于物理主機之間采用集中式共享外存設備。對于擁有獨立本地外存的服務器和個人計算機,遷移技術在這種場合下受到限制,所以實現一個包括外存遷移在內的虛擬機增量遷移方案將使遷移技術得到更廣泛的應用。

2 虛擬機遷移技術分析

為了拓寬現有遷移技術的應用范圍,有必要實現一個包括外存遷移在內的遷移方案,使得在采用分散式本地存儲的計算機環(huán)境下,仍然能夠利用遷移技術轉移計算環(huán)境,并且保證遷移過程中操作系統(tǒng)服務的可用性,這就需要動態(tài)增量遷移技術。

3 Xen虛擬機動態(tài)增量遷移的設計

對于VM(Virtual Machine)的內存狀態(tài)的遷移,Xen采用了主流的預拷貝(pre-copy)的策略。結合內存遷移的策略,動態(tài)增量遷移主要分為三個階段:PUSH階段、停機拷貝階段和PULL階段。

在PUSH階段源VM仍在運行,其外存訪問被VMM監(jiān)控。在內存pre-copy之前采用與內存遷移同樣的原理先進行外存的pre-copy。外存pre-copy結束后,進入Xen的內存pre-copy階段,在此期間VM對外存的訪問仍然被監(jiān)控記錄,作為后續(xù)階段同步剩余不一致外存狀態(tài)的依據。在停機拷貝階段,源VM被掛機,傳輸剩余的內存狀態(tài)、CPU狀態(tài)等,并將VMM所記錄的外存狀態(tài)信息發(fā)送給目的VM。

4 Xen虛擬機動態(tài)增量遷移的實現

4.1 PUSH階段

在遷移開始之前,用戶通過遷移命令(xm migrate)向源主機VMM發(fā)出遷移請求,收到請求后VMM通知塊設備即將開始遷移。然后檢查內存是否夠用,如果不夠用則先釋放部分內存,以保證有足夠的內存進行遷移。接著源主機與目的主機建立socket連接,源主機請求遷移,當收到目的主機的響應之后,進入PUSH階段[5] 。

在遷移過程中,源主機需要監(jiān)控VM對外存的訪問。在設備后端初始化一個bitmap用于記錄外存塊的狀態(tài)變化。如果某個外存塊在循環(huán)期間被寫臟,就將塊標志位置1。每輪循環(huán)首先獲取此bitmap記錄,根據該記錄發(fā)送前一輪發(fā)送過程中被VM寫臟的外存塊。

4.2停機拷貝階段

進入至停機階段,源VM被掛起,目的VM尚未啟動,剩余內存臟頁和外存臟塊以及運行狀態(tài)等信息被拷貝到目的主機。在外存pre-copy結束至源VM被掛起的過程中,源VM外存訪問產生的臟塊仍然被設備后端記錄在bitmap中。

加入外存遷移的停機拷貝階段,與之前的區(qū)別主要體現在將源主機設備后端所監(jiān)控記錄的bitmap發(fā)送給目的主機,目的主機啟動后將根據該bitmap確定本地外存數據是否已經與源VM的外存數據一致[6]。通常情況下,外存的臟塊生成率相對內存產生臟頁的機率是比較低的,因此理論上對停機拷貝階段時間的影響不大。

4.3 PULL階段

PULL階段由源主機和目的主機的遷移進程合作完成,包括目的VM外存訪問按需向源主機請求以及源主機VM外存主動向目的主機post-copy。

進入至PULL階段,源主機向設備后端請求監(jiān)控外存狀態(tài)的bitmap,并根據此bitmap確定從最后一輪外存pre-copy至源VM被掛起的過程中哪些外存部分被源VM寫臟,并將臟塊發(fā)送至目的主機。當bitmap中標記的所有臟塊都被傳輸至目的主機后,目的主機已經獲得了所有最新的外存數據,外存遷移結束[7]。

5 性能測試

第一輪測試在兩臺物理主機A和B之間進行,兩物理主機均通過網卡連接到局域網,VM從一臺物理主機遷移至另一臺物理主機。通常文件系統(tǒng)的塊大小為4KB,也就是8個扇區(qū)[8]。在對VM進行外存遷移時,首先以8個連續(xù)的扇區(qū)組成的磁盤塊作為bitmap中一個監(jiān)控單位,逐漸遞增,在無工作負載情況下進行多次遷移實驗,得到各階段遷移時間:

第二輪測試在兩臺物理主機A和B之間設置共享存儲C,利用未修改過的Xen虛擬機進行試驗,同樣是在無負載條件下進行遷移,得到各階段遷移時間:

從兩組實驗結果,可以看出,動態(tài)增量遷移在總體遷移時間上明顯大于共享存儲的遷移,其中停機階段時間相差很少,主要體現在Pre-copy階段和Pull階段,其主要原因是這兩個階段中加入了外存遷移。在對實時性要求不是特別嚴格,而需要全系統(tǒng)遷移的情況下,動態(tài)增量遷移的實現擺脫了對共享存儲的依賴,使虛擬機遷移更加自由。

參考文獻

[1] C Clark,K Fraser,S Hand,J G Hansen,E Jul,C Limpach,I Pratt,A Warfield.Live migration of virtual machines[A].In Proceedings of the 2nd USENIX/ACM Symposium on Net-worked Systems Design and Implementation(NSDI2005)[C]. Berkeley,CA,USA:USENIX Association,2005:273-286.

[2] R Chandra,N Zeldovich,C Sapuntzakis,MS Lam.The collec-tive:a Cache-based system management architecture[A].In Proceedings of the Second USENIX/ACM Symposium on Net-worked Systems Design and Implementation(NSDI2005)[C].Boston,MA,2005:259-272.

[3] 劉鵬程.面向云計算的虛擬機動態(tài)遷移框架[J].計算機工程,2010,36(5):37-39

[4] 石磊,鄒德清,金海.Xen虛擬化技術[M],華中科技大學出版社,2009:38.

[5] 江雪.虛擬機動態(tài)遷移的研究[J].計算機應用,2008,28(9):2375-2377.

[6] 張彬彬,羅英偉,汪小林.虛擬機全系統(tǒng)在線遷移[J].電子學報,2009,37(4):896-899.

[7] C P Sapuntzakis,R Chandra,B Pfaff,J Chow,M S Lam,M Rosenblum.Optimizing the migration of virtual computers[A]. In Proceedings of the5th Symposium on Operating Systems Design and Implementation(OSDI2002)[C].New York,NY,USA:ACM,2002,Volume36:377-390.

[8] R Bradford,E Kotsovinos,A Feldmann,H Schioberg.Live wide-area migration of virtual machines including local persistent state[A].In Proceedings of the3rd International Conference on Virtual Execution Environments(VEE07)[C].NewYork,NY,USA:ACM,2007:169-179.

猜你喜歡
虛擬機
基于VMware的計算機網絡課程虛擬實驗平臺搭建
東方教育(2016年8期)2017-01-17 20:13:28
虛擬機技術在計算機安全技術實驗教學中的應用
東方教育(2016年8期)2017-01-17 13:00:15
還原卡與虛擬機技術在計算機實驗室中的使用對比陳治
虛擬機技術在計算機組裝課堂中的應用
虛擬機服務器在教學實踐中的探索研究
淺談計算機系統(tǒng)虛擬化網絡設置方案
基于虛擬機的軟件保護系統(tǒng)研究與設計
任務驅動教學法在《網絡應用服務管理》教學中的應用
虛擬機局域網組建技術應用初探
虛擬機在中職企業(yè)網搭建中的應用
应用必备| 抚松县| 锡林郭勒盟| 屯昌县| 商丘市| 土默特左旗| 河北省| 南华县| 余姚市| 北流市| 广安市| 拉萨市| 灵台县| 玉环县| 绥化市| 垦利县| 安康市| 介休市| 广灵县| 称多县| 平顺县| 永靖县| 古浪县| 错那县| 桑日县| 鲁山县| 七台河市| 葫芦岛市| 西畴县| 许昌市| 基隆市| 怀宁县| 八宿县| 江阴市| 华容县| 祁连县| 东至县| 济南市| 衡东县| 溆浦县| 阳西县|