VMotion

VMware公司開發的技術

VMotion,將正在運行的虛擬機從一台物理伺服器移動至另一台物理伺服器,而不影響最終用戶。

簡介信息


VMware VMotion可使IT環境保持正常運行,為您提供空前的靈活性和可用性,以滿足您的業務和最終用戶不斷增長的需要。以零停機時間遷移虛擬機。
VMware VMotion是VMware開發出的一項獨特技術,它將伺服器、存儲和網路設備完全虛擬化,使得正在運行的整個虛擬機能夠在瞬間從一台伺服器移到另一台伺服器上。虛擬機的全部狀態由存儲在共享存儲器上的一組文件進行封裝,而VMware的VMFS群集文件系統允許源和目標VMware ESX同時訪問這些虛擬機文件。然後,虛擬機的活動內存和精確的執行狀態可通過高速網路迅速傳輸。由於網路也被VMware ESX虛擬化,因此,虛擬機保留其網路標識和連接,從而確保實現無縫遷移。
*在零停機且用戶毫無察覺的情況下執行實時遷移。
*不間斷地自動優化資源池中的虛擬機。
*在不安排停機時間、不中斷業務運營的情況下執行硬體維護。
*主動將虛擬機從出故障或運行不正常的伺服器中移出。
這些產品的可靠性和可管理性由數以千計的客戶在生產實踐中使用了數年後得到證實,他們也從中獲益匪淺。跨基礎架構的虛擬機實時遷移功能異常簡單,使用該功能您能夠可靠、自如地管理實時遷移:
*執行多個并行遷移,從而不間斷地優化虛擬IT環境。
*利用提供實時可用性信息的遷移嚮導,在幾秒鐘內確定虛擬機的最佳位置。
*跨VMware ESX所支持的任何類型的硬體和存儲器(包括光纖通道SAN、NAS和iSCSISAN)
遷移運行任何操作系統的任意虛擬機。
*區分實時遷移優先順序,以確保至關重要的虛擬機始終能夠訪問它們所需的資源。
*安排遷移在預定時間發生,且無需管理員在場
*通過詳細的遷移記錄保持審核跟蹤。
Vmotion工作原理:
使用Vmotion將虛擬機從一台物理伺服器實時遷移到另外一台物理伺服器的過程是通過三項基礎技術實現的
(1)首先,虛擬機的整個狀態由存儲在共享存儲器(如光纖通道或iSCSI存儲區域網路(SAN),或網路連接存儲(NAS))上的一組文件封裝起來。VMWare群集Virtual Machine File System(VMFS)允許安裝多個ESX Server,以并行訪問同一組虛擬機文件。
(2)第二,虛擬機的活動內存及精確的執行狀態通過高速網路快速傳輸,因而允許虛擬機立即從源ESX Server上運行切換到在目標ESX Server上運行。Vmotion通過在點陣圖中連續跟蹤內存事物來確保用戶察覺不到此傳輸期。一旦整個內存和系統狀態以拷貝到目標ESX Server,Vmotion將終止源虛擬機的運行,將點陣圖拷貝到目標ESX Server,並在目標ESX Server上恢復虛擬機的運行。整個過程在乙太網上需要不到兩秒鐘的時間。
(3)第三,虛擬機使用的網路也被底層ESX Server虛擬化,確保即使在遷移之後,虛擬機的網路身份和網路連接也能保留下來。Vmotion在此過程中管理虛擬MAC。一旦目標機被激活,Vmotion就會ping網路路由器,以確保它知道MAC地址的新物理位置。因為用Vmotion進行虛擬機遷移可保持精確的執行狀態、網路身份和活動網路連接,其結果是實現了零停機時間而且不中斷用戶操作。

增強版本


vSphere5.1進一步增強了vMotion的功能,為虛擬機在線遷移提供了更大的靈活性,在沒有SAN網路或者共享存儲的情況下就能進行虛擬機的在線遷移。在vSphere 5.1之前版本中,如果要想遷移虛擬機所在的數據存儲(Storage vMotion)和虛擬機所在的ESXi主機(vMotion)必須分兩步進行。而在vSphere 5.1中能夠同時進行Storage vMotion和vMOtion操作,從而也就實現了在沒有共享存儲的情況下進行vMotion遷移的目的。
解讀vSphere5.1vMotion增強功能
如下圖1所示,兩台ESXi主機使用的數據存儲都是本地存儲,虛擬機就建在本地數據存儲中。vSphere 5.1的vMotion增強功能藉助TCP/IP網路,將虛擬機內存和磁碟數據拷貝至目標主機,從而實現了在沒有共享存儲的主機之間同時遷移內存和存儲的功能。
vSphere 5.1的vMotion增強功能
vSphere 5.1的vMotion增強功能
圖1.vSphere 5.1的vMotion增強功能
藉助網路在一個操作中同時進行vMotion和Storage vMotion操作,無疑對源主機和目標主機之間的網路提出了更高要求。為了解決這個問題,vSphere 5.1 vMotion繼續利用了vSphere 5.0中引入的多網卡特性,而且還能夠在多個網路適配器之間網路負載平衡。多適配器特性使用戶能夠在源主機和目標主機之間部署多個vMotion網路介面。初始化遷移操作時vSphere 5.1能夠基於鏈路速度匹配源和目標的vMotion網路,達到充分利用鏈路帶寬的目的。為了保證連接的可靠性,在源和目標主機的網路之間建立了TCP連接而且能夠透明地在網路連接之間進行負載均衡。
使用vSphere Web Client在線虛擬機遷移
在vSphere5.1之前的版本中,要同時更改虛擬機所在的主機和數據存儲,必須關閉虛擬機。換句話說,當虛擬機處於在線/運行狀態時,“更改主機和數據存儲”選項是灰色的,要同時更改虛擬機所在的主機和數據存儲必須分兩步操作:更改主機、更改數據存儲。
在vSphere5.1中,使用vSphere Web Client進行虛擬機的在線遷移並不需要進行很複雜的操作:打開vSphere Web Client后,單擊“虛擬機和模板”視圖,右鍵單擊你想遷移的虛擬機,直接選擇“更改主機和數據存儲”即可
如何提高vMotion遷移的成功率
在vSphere5.1之前的版本中進行vMotion遷移時,想必我們對如下錯誤並不陌生:“遷移已超出最大為100s的切換時間上限,ESX已搶先使遷移失敗,以允許虛擬機在源上繼續運行。”
造成這個問題的原因是vMotion遷移超出了100s的限制,在vSphere5.1中同時進行vMotion和Storage vMotion操作對網路提出了更高的要求,如果配置不當,發生上述操作的概率無疑會更大。那麼如何儘可能提高vMotion遷移的成功率呢?在進行vMotion操作時建議進行如下配置:
1.建立單獨的vMotion網路,分離vMotion網路、管理網路和虛擬機所在的生產網路。這樣可以避免不同網路爭用帶寬,造成網路瓶頸。
2.如果沒有建立單獨的vMotion網路,建議在非業務高峰期進行虛擬機的遷移操作,這樣可以減少生產網路對vMotion網路的影響。
3.為vMotion網路配置多個網路適配器,這樣就能夠利用vSphere5.0提供的多網卡負載均衡功能,加快在線遷移速度。
4.vMotion網路已經能夠支持10Gb乙太網,在條件允許的情況下使用萬兆網路提供虛擬機的在線遷移。
5.如果允許業務停機窗口,那麼停止虛擬機再進行虛擬機的遷移將大幅度提高遷移速度,因為虛擬機內存中已經沒有活動數據了。