VMware vCenter VMotion 详解
1. 革命性的虛擬機移動性
VMware VMotion作為VMware VI3和vSphere產品系列的一個重要特性,常常讓很多用戶感到驚奇,具體的實現方式也一直是一個謎。實際上,VMotion已經成為服務器虛擬化的一個標竿,如果沒有VMotion功能的虛擬化,根本沒辦法運行生產環境。
vMotion最大的特性是"整個遷移過程虛擬機應用不會中斷”,也就是說在虛擬機不停機的情況下將一臺虛擬機從一個esx服務器上遷移到另外一臺服務器上,這樣可以非常方便的在不影響業務的前提下對esx主機進行維護。VMware 客戶中 70% 都在生產中部署了 VMware VMotion 技術,此技術利用服務器、存儲和網絡連接的完全虛擬化,可將正在運行的整個虛擬機從一臺服務器即刻移到另一臺服務器中。VMware VMotion 使用 VMware 的集群文件系統來控制對虛擬機存儲器的訪問。在使用 VMotion 進行實時遷移的過程中,虛擬機的活動內存和準確的執行狀態通過高速網絡快速從一臺服務器傳輸到另一臺服務器,對虛擬機磁盤存儲器的訪問被即刻切換到新的物理主機。由于網絡也由 VMware ESX進行了虛擬化,因此虛擬機會保留其網絡標識和連接,從而確保實現無縫的遷移過程。
通過 VMware VMotion,您可以:
在零停機、用戶毫無察覺的情況下執行實時遷移。 持續地自動優化資源池中的虛擬機。 在無需安排停機、不中斷業務運營的情況下執行硬件維護。 主動將虛擬機從發生故障或性能不佳的服務器中移出。
2. VMotion 的主機配置
要成功使用 VMotion,必須先正確配置主機,請確保已在以下每個區域中正確地配置了主機:
必須針對 VMotion 正確許可每臺主機。 每臺主機必須滿足 VMotion 的共享存儲器需求。 每臺主機必須滿足 VMotion 的網絡要求。
2.1 VMotion 共享存儲器要求
在通過 VMotion 遷移期間,所遷移的虛擬機必須位于源主機和目標主機均可訪問的存儲器上。共享存儲器通常位于存儲區域網絡 (SAN) 上,但也可以使用 iSCSI和 NFS 共享存儲器得以實現。
2.2 VMotion 網絡要求
VMotion 要求在所有啟用 VMotion 的主機之間設置千兆以太網 (GigE)。每臺啟用 VMotion 的主機都必須至少有兩個以太網適配器,其中必須至少有一個是千兆以太網適配器:
在每臺主機上,為 VMotion 配置 VMkernel 端口組。并且考量到性能,最好為VMotion網絡綁定專用網卡,具體參考《VMware ESX Server網絡設置》,《VMware vCenter vDS 分布式交換機 》與《WMware ESX Server網絡負載均衡配置》。 確保虛擬機在源主機和目標主機上可以訪問相同的子網。 確保用于虛擬機端口組的網絡標簽在主機之間是一致的。在通過 VMotion 遷移期間,vCenter Server 根據匹配的網絡標簽將虛擬機分配到端口組。 為獲取最佳 VMotion 性能,建議使用巨幀。
3. CPU 兼容性和遷移
vCenter Server 在允許遷移正在運行或已掛起的虛擬機時會執行一些兼容性檢查以確保虛擬機與目標主機兼容。VMotion 在基礎 ESX/ESXi 系統之間傳輸虛擬機的運行狀況。成功的遷移要求目標主機的處理器能夠使用源主機的處理器在虛擬機遷移出源主機時使用的等效指令來執行。處理器的時鐘速度和緩存大小以及處理器內核的數量可以不同,但處理器必須屬于相同的供應商類別(AMD 或 Intel),并且使用兼容的功能集,以達到通過vMotion 遷移所需的兼容性。已掛起的虛擬機的遷移還要求虛擬機能夠使用等效指令在目標主機上恢復執行。
開始通過 VMotion 遷移或開始已掛起虛擬機的遷移時,遷移虛擬機向導會檢查目標主機的兼容性,如果有阻礙遷移的兼容性問題存在,向導會生成錯誤消息。
虛擬機啟動時,會確定可用的 CPU 功能集。虛擬機的 CPU 功能集基于主機的 CPU 功能集。但是,如果主機是使用增強型 VMotion 兼容性 (EVC) 的群集的一部分,或者如果虛擬機已應用 CPU 兼容性掩碼,則主機的一些CPU 功能對虛擬機而言不可見。有關詳細信息,請在 VMware 知識庫中搜索《VMotion 和 CPU 兼容性常見問題答》。
4. 關于增強型 VMotion 兼容性
可以使用增強型 VMotion 兼容性 (Enhanced VMotion Compatibility, EVC) 功能幫助確保群集內主機的兼容性。EVC 可以確保群集內的所有主機向虛擬機提供相同的 CPU 功能集,即使這些主機上的實際 CPU也是如此。使用 EVC 可避免因 CPU 不兼容而導致通過 VMotion 遷移失敗。在“群集設置”對話框中配置 EVC。配置 EVC 時,請將群集中的所有主機處理器配置為提供基準處理能集。EVC 利用 AMD-V Extended Migration 技術(適用于 AMD 主機)和 Intel FlexMigration 技術(Intel 主機)屏蔽處理器功能,以便主機可提供早期版本的處理器的功能集。基準功能集必須等同于群集最小功能集的主機的功能集,或為主機功能集的子集。
5. VMotion 的虛擬機配置要求
以下虛擬機配置可能會阻止通過 VMotion 遷移:
不能使用“通過 VMotion 遷移”來遷移因群集目的而使用裸磁盤的虛擬機。 如果虛擬機使用目標主機上無法訪問的設備所支持的虛擬設備,則不能使用“通過 VMotion 遷移”功能來遷移該虛擬機。(例如,不能遷移帶有源主機上物理 CD 驅動器支持的 CD 驅動器的虛擬機。)在遷移虛擬機之前,請斷開這些設備。 如果虛擬機使用客戶端計算機上設備所支持的虛擬設備,則不能使用“通過 VMotion 遷移”功能來遷移該虛擬機。在遷移虛擬機之前,請斷開這些設備。
6. VMotion 步驟
簡單來說,VMotion 遷移會在以下三個階段發生:
當請求通過 VMotion 遷移時,vCenter Server 通過其當前主機驗證現有虛擬機是否處于穩定狀況。 此時,虛擬機狀況信息(內存、寄存器和網絡連接)將復制到目標主機。 虛擬機將恢復其新主機上的活動。如果遷移期間出錯,虛擬機將恢復其原始狀態和位置。
發生VMotion開始時,就相當于在目標機器上創建一個新的虛擬機。在新虛擬機創建過程中的前10%部分和創建其他的虛擬機沒什么兩樣。接下去,我們開始為該虛擬機啟動VMM(虛擬機監控程序,是每個虛擬機必備的底層),這實際上就是啟動了一個新的虛擬機,并為它清空了一段內存地址。此時,該虛擬機并沒有訪問磁盤,也沒有執行任何指令,它只是準備好了接受內存段,然后填充到它自己的內存頁表里。
從虛擬機創建到10%這個點,我們開始從源虛擬機將內存段復制到目標虛擬機,該動作需要的時間取決于網絡速度、網絡擁塞、虛擬機正在使用的內存大小和內存變化的速度(此時虛擬機仍然在正常運行中)。當完成到80%時,我們假定可以在1秒或更短時間內完成內存復制。接著我們就暫停源虛擬機,復制剩余的內存段,啟動目標虛擬機,并且從目標虛擬機上執行反向ARP,讓網絡交換機知道新的MAC地址。當到達90%,復制最后可能變化的內存到目標虛擬機。接著源虛擬機被破壞(只是解散配置和VMM),從而成功完成該次VMotion。
7. VMotion前期準備
7.1 建立VMkernel Port Group
7.2 確保源主機和目標主機的兼容性
雖然這個過程很簡單,配置過程卻是有些麻煩,特別是遇到一些讓人匪夷所思的問題時,思考解決辦法往往讓人頭疼不已。
1. 檢查CPU是否兼容:
2. 確保符合VMotion 網絡要求:
3. 確保所遷移的虛擬機必須位于源主機和目標主機均可訪問的存儲器上:
4. 數據及網絡映射圖:
4. 確保源主機沒有連接軟盤和CD/DVD:
8. VMotion過程圖解
8.1. 開始遷移
8.2 選擇遷移對象
8.3 遷移成功
遷移中虛擬機Guest OS的網絡狀況:
從這幅圖上可以看到,其實在遷移過程中網絡連接是有一段非常短暫的中斷的。但對于絕大多數網絡應用程序所采用的TCP/IP協議通信來說,連接往往會超時重試,數據包往往會丟包重發,所以在中斷時間較短的情況下,遷移并不影響虛擬機的正常網絡通信。
9. VMotion關鍵技術
VMotion用到下述三項技術:
1. 虛擬機的全部狀態信息被壓縮在一套存儲于共享存儲器的文件中。作為載體的存儲器類型可以是光纖通道(Fibre Channel),iSCSI存儲區域網絡(iSCSI Storage Area Network,SAN)或者網絡附加存儲器(Network Attached Storage,NAS)。VMware的群集虛擬機系統(VMFS)允許多臺ESX服務器同時訪問同一個虛擬機文件。
2. 虛擬機的動態內存和執行狀態在一個高速的網絡上進行快速傳輸,允許虛擬機即時地在源ESX服務器和目標ESX服務器之間進行信息交換。在遷移過程中,VMotion只是在點陣圖里對信息交換進行監控,所以整個轉移過程對用戶來說是透明的。一旦整個內存和系統狀態全部復制到目標ESX服務器中,VMotion就會自動終止源虛擬機,同時將點陣圖轉移到目標ESX服務器中,并在目標ESX服務器中重新啟動虛擬機。上述整個操作假如是在一個千兆以太網絡中進行,那么不用兩秒的時間就可以完成。
3. 虛擬機使用的網絡同樣也會被目標ESX服務器虛擬化,確保在實時遷移之后,虛擬機的網絡身份和連接能夠得到保留。VMotion將MAC地址作為進程的一部分來進行管理。一旦目標機被激活,VMotion會檢查網絡路由器來確保它能識別虛擬機MAC地址新的物理位置。由于虛擬機使用VMotion來進行實時遷移,它的執行狀態,網絡身份和動態鏈接都能夠得到保護,所以對于用戶來說,整個遷移過程并沒有引起服務器停機或者網絡中斷。
總結
以上是生活随笔為你收集整理的VMware vCenter VMotion 详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 安防板块龙头企业 必须给大家介绍一些
- 下一篇: 中煤能源是国企还是央企