必威电竞|足球世界杯竞猜平台

熱遷移
來源:互聯網

熱遷移(Live Migration),又稱動態遷移或實時遷移,是一種虛擬機保存/恢復的技術。它能夠將虛擬機的運行狀態完整保存,并快速恢復到原有的或不同的硬件平臺上,使得虛擬機能夠在遷移后繼續保持平穩運行,用戶幾乎感覺不到任何變化。

技術原理

Hyper-V熱遷移(Hyper-V Live Migration)是微軟Hyper-V自版本2.0開始支持的一項技術,旨在實現物理機與虛擬機之間的熱遷移。這種遷移通常是在計劃內的宕機情況發生時,如硬件升級或替換。Hyper-V熱遷移并不是針對故障狀態下發生的非計劃宕機。熱遷移過程分為幾個步驟:

1. 在源和目標計算機之間建立連接,以確保通信速度和效率。在源服務器或目標服務器負載過高的情況下,可能會出現WMI調用clusres.dll超時失敗的情況,這種情況在PRO調用熱遷移過程中會導致虛擬機長時間處于掛起狀態。微軟官方提供了相應的補丁,需要在所有節點上部署。

2. 傳輸虛擬機的配置和設備信息,這些信息不是來自虛擬機目錄中的XML配置文件,而是從注冊表中獲取。這兩步完成了遷移的準備工作,向目標服務器傳達了虛擬機所需資源的信息,并為其分配資源。

3. 傳輸虛擬機的內存,這是遷移的核心技術部分。無論是威睿還是Hyper-V,都無法回避此問題。盡管有些服務商聲稱服務不斷線,但從技術角度來看,這只是斷線時間從秒級降至毫秒級。具體而言,內存傳輸過程如下:

鎖定Guest主機內存,并將該部分信息傳輸到目標服務器。

Guest主機繼續運行,在Host主機中創建一個新的內存分區為Guest主機提供服務。該分區只保存更改的內容。

新內存分區繼續分片鎖定并傳輸。

重復第2-3步,直到操作1中的內存傳輸完成,以確保源HOST服務器與目標HOST服務器之間的內存差異在一個非常小的時間范圍內。

4. 暫停(掛起)源虛擬機并傳輸狀態。這部分包含了三個操作:

掛起源虛擬機。

傳輸最后的源虛擬機內存更改片段。

通知存儲,將存儲掛載到目標服務器。

第四步是遷移時間的關鍵所在。關鍵在于實時內存狀態的保存。在Hyper-V 1.0中,快速遷移采用了掛起源虛擬機后再處理內存的方法,因此遷移過程中宕機時間與虛擬機消耗的內存呈正相關。而在熱遷移中,宕機時間不再取決于遷移虛擬機消耗的內存,而是取決于一個相對較小時鐘周期內的內存變更片段。根據實際測試,在熱遷移操作中,ping包監視顯示根據系統負載的不同,丟包率在2%至6%之間,足以滿足大多數企業的高可用性需求。

發展現狀

服務器虛擬化技術是當前的熱點,而虛擬機的“熱遷移(Live Migration)”技術則是虛擬化技術當中的熱點。熱遷移技術是指可以把一個虛擬機從一臺物理服務器遷移到另一臺物理服務器上,威睿公司在05年通過VMotion(虛擬機的遷移代理程序)、虛擬中心管理軟件(Virtual Center management)首先進入到了這一領域。因為VMware將其虛擬機文件系統(VMFS)覆蓋了存儲系統來允許虛擬機之間的熱遷移,因此VMotion只能在兩臺訪問同一個VMFS的服務器上進行虛擬機的熱遷移。XenSource公司,這家提供開源Xen Hypervisor的供應商,宣布了其產品的熱遷移特性。下個月,XenSource公司將在XenEnterprise 4.1當中內置XenMotion,并將通過賽門鐵客的維爾軟件來提供存儲管理能力。XenSource公司的資深副總裁Gordon Mangione表示,Xen與賽門鐵客構成了絕妙的組合,因為很多Xen的使用者都在使用賽門鐵客的維爾文件系統,這就不必強迫用戶采用新的文件管理系統。微軟公司也計劃在其開發代號為的Veridian hypervisor當中提供虛擬機的熱遷移功能,但微軟并沒有給出確切的日期。不過,微軟公司Windows服務器分公司高級產品經理Patrick O'Rourke表示會在以后的升級中將其添加進去。虛擬機的熱遷移技術最初是被用于雙機容錯或者負載均衡,從而在應用上有很多優勢。首先是可伸縮性比較強,在晚上或周末,IT管理者可以讓運行某些關鍵業務的服務器適當減少工作量,以便進行更新操作系統,給應用程序打補丁等。而到了白天,又可以彈性地進行大負載量的運算。其次,數據中心都追求環保節能,工作量負載大的應用程序必然會令服務器能耗增加,有了虛擬機熱遷移技術,當一臺物理服務器負載過大時,系統管理員可以將其上面的虛擬機遷移到其他服務器,可有效減低數據中心服務器的總體能耗,再通過冷卻系統將數據中心的溫度保持在正常水平。但是,進行虛擬機的熱遷移也有不少的限制。例如,VMotion在進行遷移之前,管理軟件會檢測目標服務器的X86架構是否與原服務器兼容。包括存儲設備以及處理器,虛擬機必須放到共享的存儲里,CPU的類型也要一樣,不僅不能一個是英特爾,一個是AMD,甚至相同廠商不同產品線的CPU也不行,比如英特爾至強和奔騰。不過,處理器廠商正在試圖解決這一問題。AMD已經找到了一種方法并將其加入到處理器架構之中,幫助虛擬機監控器分辨正在使用的X86指令。AMD虛擬化技術解決方案總監Tim Mueting說:“我們的目標是讓虛擬機在不同的處理器之間進行遷移。”而在08年6月12日,英特爾宣布,將在下半年推出兩項新的虛擬化技術。其中一項名為“FlexMigration”,可將虛擬機轉移到其他物理服務器,這一硬件級別的熱遷移技術被業界普遍看好,并被認為是威睿 VMotion的主要競爭對手。據悉,英特爾將在45納米制程的Penryn處理器當中內嵌FlexMigration技術,該技術可支持跨代遷移。這樣,虛擬機就可以在基于Penryn處理器的服務器和其他雙核、四核處理器之間任意遷移。

應用領域

計算機共享

在公共場合,用戶需要共享計算機,但由于不同的系統配置和軟件設置,需要花費大量時間進行配置和恢復。此時,使用虛擬機的保存/恢復技術可以有效地解決這個問題。用戶可以在虛擬機中執行所有工作,需要暫停時將虛擬機保存到文件中。下次使用時,可以通過先前的文件恢復虛擬機繼續工作。

數據庫備份

對于大型、關鍵的數據庫應用,備份是一項重要且復雜的任務。虛擬機的保存/恢復技術可以使數據庫在虛擬機中運行,需要備份時只需保存虛擬機,這樣數據庫中的所有數據和狀態都會得到備份。如果數據庫崩潰,可以通過恢復虛擬機來恢復整個數據庫。

環境重現

在進行性能測試或程序調試時,需要重現當時的環境,而這往往需要重新啟動、配置軟件,并耗費一定的時間。使用虛擬機的保存/恢復技術,可以將已重現的環境保存起來,未來測試時只需恢復即可。一個512MB內存的虛擬機只需要幾秒鐘就能完成保存/恢復,顯著縮短了重現時間。

系統硬件維護

許多操作系統都能穩定支持7x24小時運行,但硬件需要定期維護。利用虛擬機的動態遷移技術,可以將虛擬機從需要維護的物理機器遷移到備用機器,等待維護完成后,再將其遷回原始物理機器。所有系統服務和應用程序在恢復后仍能正常運行,用戶不會感覺到因硬件維護而導致的服務中斷。

參考資料 >

OpenStack虛擬機冷遷移與熱遷移.天翼云.2024-10-29

openStack動態遷移.CSDN博客.2024-10-29

什么是 Hyper.Microsoft.2024-10-29

生活家百科家居網