在vSphere羣集中配置EVC的注意事項

 

在爲VMware vSphere虛擬化環境配置高可用羣集(HA)時,有一個重要的參數:EVC配置。若是加入羣集的主機具備相同的配置(關鍵是CPU相同),則配置較爲方便。若是混合使用新、舊不一樣的服務器,服務器的CPU型號不一致時,則加入同一羣集時,配置EVC就較爲麻煩,本文將介紹這一問題。html

1 VMware EVC概述

EVC 是 Enhanced vMotion Compatibility 的簡稱,是VMware羣集功能的一個參數。EVC 容許在不一樣代 CPU 之間遷移虛擬機緩存

EVC 不容許 AMD 和 Intel CPU 與 vMotion 兼容。已啓用 EVC 的羣集僅容許來自羣集中單個供應商的 CPU。 vCenter Server 不容許未來自不一樣 CPU 供應商的主機添加到已啓用 EVC 的羣集。安全

由於 EVC 容許在不一樣代 CPU 之間遷移虛擬機,所以憑藉 EVC,管理員能夠在同一羣集裏混合使用較舊和較新代服務器,而且能夠在這些主機之間使用 vMotion 遷移虛擬機。 這使得管理員能夠更輕鬆地將新硬件添加到現有基礎架構中,並有助於擴展示有主機的價值。 憑藉 EVC,無需任何虛擬機停機便可實現完整羣集升級。在將新主機添加到羣集時,能夠將虛擬機遷移到新主機並停用舊主機。服務器

在啓用 EVC 後,將羣集中的全部主機都配置爲向羣集中正在運行的全部虛擬機提供由用戶選擇的處理器類型的 CPU 功能。 這可確保 vMotion 的 CPU 兼容性,即便基礎硬件可能因爲主機不一樣而有所不一樣。 會向虛擬機(不管其在哪一個主機上運行)公開相同的 CPU 功能,所以虛擬機能夠在羣集中的任何主機之間進行遷移。網絡

在配置了HA以後,在配置並啓用了DRS或DPM功能以後,自動或手動在不一樣主機之間遷移正在運行的虛擬機(以平衡資源)都會使用VMotion技術。vCenter Server使用vMotion 在不一樣 ESXi 主機之間傳輸虛擬機的運行情況。vCenter Server 在遷移正在運行或已掛起的虛擬機前會執行一些兼容性檢查,以確保虛擬機與目標主機兼容。架構

成功的實時遷移要求:目標主機的處理器可以在遷移以後向虛擬機提供與源主機的處理器在遷移以前所提供的相同的指令。源處理器和目標處理器之間的時鐘速度、緩存大小以及核心數量能夠不一樣,但處理器必須屬於相同的供應商類別(AMD 或 Intel),以便與 vMotion 兼容。ide

已掛起的虛擬機的遷移還要求虛擬機可以使用等效指令在目標主機上恢復執行。操作系統

經過 vMotion 遷移「正在運行」或「已掛起」虛擬機的遷移時,遷移虛擬機嚮導會檢查目標主機的兼容性,若是有阻礙遷移的兼容性問題存在,嚮導會生成錯誤消息。設計

在打開虛擬機電源時,肯定可供操做系統以及虛擬機中運行的應用程序使用的 CPU 指令集。VMware根據如下項目肯定此 CPU「功能集」:3d

l 主機 CPU 系列和型號

l BIOS 中可能禁用 CPU 功能的設置

l 在主機上運行的 ESX/ESXi 版本

l 虛擬機的虛擬硬件版本

l 虛擬機的客戶機操做系統

要提升具備不一樣 CPU 功能集的主機之間的 CPU 兼容性,可經過將主機置於加強型 vMotion 兼容性 (EVC) 羣集中來「隱藏」虛擬機中的一些主機 CPU 功能。

2 爲相同CPU的主機配置EVC

若是是相同型號的主機(主要是CPU相同)加入同一羣集,則只要查看其中一臺主機能支持到的最高EVC參數,而後用此參數配置羣集EVC設置,而後將全部主機加入到羣集便可。本節將介紹這一內容。

2.1 向數據中心中添加主機

使用vSphere Web Client登陸到vCenter Server,建立數據中心,將主機先加入「數據中心」查看EVC資料後,再建立羣集,設置羣集EVC參數爲第一臺主機所查看到的EVC參數,而後將主機移入「羣集」,並向羣集添加其餘主機。

(1)在 vSphere Web Client 中,導航到數據中心、羣集或數據中心中的文件夾。在本示例中,導航到「vCenter.heinfo.edu.cn(vCenter Server)→Datacenter(數據中心)」,在中間窗格中單擊「添加主機」連接,在「添加主機」對話框中,鍵入主機的 IP 地址或名稱,在本示例中,要添加的主機IP地址爲172.18.96.34(如圖3-4-32所示),而後單擊「下一步」按鈕, 在「鏈接設置」中,鍵入ESXi主機管理員帳戶root及密碼。

clip_image002

圖3-4-32 添加主機名稱或IP地址

(3)在「安全警示」對話框中,顯示「vCenter Server的證書存儲沒法驗證該主機」,單擊「是」按鈕,添加並替換此主機的證書並繼續工做。

(4)在「主機摘要」對話框,顯示了要添加主機的信息、供應商、型號及ESXi版本,以及當前主機中的建立或加載的虛擬機。

(5)在「分配許可證」對話框,從「許可證」列表中,爲當前添加的主機選擇許可。

(6)在「鎖定模式」中,可選擇鎖定模式選項以禁用管理員帳戶的遠程訪問。通常狀況下,要「禁用」這一選項。

(7)在「即將完成」對話框,顯示了新添加主機的信息,如圖3-4-39所示。單擊「完成」按鈕。

clip_image004

圖3-4-39 即將完成

(8)在將主機添加到數據中心以後,在「導航器」中單擊主機,在「摘要」選項卡中,單擊展開「配置」選項,音「EVC模式」,在「支持的EVC模式」中,記錄主機所能支持的EVC模式,並以最後一個爲準,如圖3-4-41所示。

clip_image006

圖3-4-41 查看主機支持的EVC模式

在記錄每一個主機能支持的EVC模式中,排列在後面的須要的CPU「越新」。當羣集中有多個不一樣CPU的主機時,其EVC模式以最後一個相同的爲準。

2.2 建立羣集

羣集是一組主機。將主機添加到羣集時,主機的資源將成爲羣集資源的一部分。羣集管理其中全部主機的資源。羣集啓用 vSphere High Availability (HA)、vSphere Distributed Resource Scheduler (DRS) 和 VMware Virtual SAN 功能。

(1)在 vSphere Web Client 導航器中,瀏覽到數據中心,在中間窗格中單擊「建立羣集」,如圖3-4-42所示。

clip_image008

圖3-4-42 建立羣集

(2)在「名稱」文本框中,設置新建羣集的名稱,例如設置名稱爲HA01。以後根據須要啓用羣集的名稱,例如,若是要啓用DRS,請在「DRS」後面的方框單擊並選中。若是要啓用「vSphere HA」請在其後選中,如圖6-88所示。大多數的狀況下,DRS與vSphere HA是必選項。

在啓用DRS時,選擇一個自動化級別和遷移閾值。在啓用HA時,選擇是否啓用「主機監控」和「接入控制」,若是啓用接入控制,請指定策略。

在「虛擬機監控」選項中,選擇一個虛擬機監控選項,並指定虛擬機監控敏感度,在此設置爲「低」。

【說明】在「vSphere HA」功能中,「啓用主機監控」,當有HA中的主機死機或其餘故障致使主機不能使用時,原來主機上運行的虛擬機,會在其餘主機註冊並從新啓動。若是HA中的主機沒有故障,但某個虛擬機出現問題,例如某虛擬機「藍屏」死機,若是要檢測這種故障並將「藍屏」的虛擬機從新啓動,則在「虛擬機監控狀態」中選擇「僅虛擬機監控」,並在「監控敏感度」選項中選擇「低、中、高」,通常選擇「低」便可。

(3)在「EVC模式」中,選擇加強型 vMotion 兼容性 (EVC) 設置。EVC 能夠確保羣集內的全部主機向虛擬機提供相同的 CPU 功能集,即便這些主機上的實際 CPU 不一樣也是如此。這樣能夠避免因 CPU 不兼容而致使經過 vMotion 遷移失敗。在右側的下拉列表中,根據你的主機的CPU型號、支持功能,選擇EVC模式,如圖3-4-43所示。根據圖3-4-41的檢查,在本示例中選擇EVC爲「Intel "Haswell" Generation」,如圖3-4-44所示。

clip_image010

圖3-4-43 啓用DRS及HA功能

clip_image012

圖3-4-44 EVC模式

在「vSAN」功能處,選擇是否啓用「vSAN」 羣集功能。關於「虛擬SAN」,本章暫時不作介紹。以後單擊「肯定」按鈕,完成羣集的建立。

【說明】在不一樣版本的ESXi中,EVC模式不一樣,在ESXi 6.5中,Intel CPU支持的選項包括如下:

Intel Merom Generation

Intel Penryn Generation

Intel Nehalen Generation

Intel Westmere Generation

Intel Sandy Bridge Generation

Intel ivy Bridge Generation

Intel Haswell Generation

Intel Broadwell Generation

AMD支持CPU支持的選項包括如下:

AMD Opteron Generation 1 ("Rev. E")

AMD Opteron Generation 2 ("Rev. F")

AMD Opteron Generation 3 ("Greyhound")(不支持3DNow)

AMD Opteron Generation 3 ("Greyhound")

AMD Opteron Generation 4 ("Bulldozer")

AMD Opteron "Piledriver" Generation

AMD Opteron "Steamroller" Generation

當網絡中有多臺不一樣型號的ESXi主機時,若是主機相同,則記下「支持的EVC模式」列表中最後一項。當具備不一樣EVC模式支持的主機,建立成同一個羣集時,其EVC選項支持以最少的一臺主機的最後一項爲準。

2.3 將主機添加到羣集

在記錄每一個主機的EVC並根據記錄的EVC建立羣集以後,接下來的操做是將主機「移入」羣集,或者向羣集中添加其餘未添加到vCenter Server中的主機(這些主機與已經添加到vCenter Server中的部分主機具備相同的CPU,因此無需事先所有添加,而是在等待建立羣集以後再次添加)。將主機移入羣集或向羣集中添加主機的操做比較簡單,管理員便可以用鼠標選中主機,將其「拖拽」並移動到羣集,也能夠右擊ESXi主機,選擇「移至」(如圖3-4-45所示),並在隨後「移至」對話框中,選擇移入的羣集,並單擊「OK」按鈕。

clip_image014

圖3-4-45 移至

添加以後能夠將其餘ESXi主機「移入」此羣集,也能夠在「導航器」中選中羣集,在右側單擊「添加主機」連接,向羣集中添加其餘ESXi主機(沒有添加到vCenter Server清單中的ESXi主機)。

在將ESXi主機移入羣集時,主機會配置「vSphere HA」代理,此時主機前面會有一個「×××」的感嘆號,等配置vSphere HA完成後,狀態正常。以後在「導航器」中選中某個主機,在「摘要→配置→EVC模式」中,能夠看到當前EVC模式及支持的EVC模式,如圖3-4-49所示。

clip_image016

圖3-4-49 查看EVC模式

3 爲不一樣主機啓用EVC實驗

若是CPU不一樣的主機加入同一羣集,須要以EVC最低支持主機爲準。爲了演示這些功能,本節以圖3-7-6所示環境爲例進行介紹。

clip_image018

圖3-7-6 vSphere HA實驗環境

爲了充分體驗VMotion的功能,以及爲了解決實際中碰到的困難,咱們設計以下的實驗環境:

(1)2臺ESXi主機,其中每一個主機的CPU不一樣,其支持的EVC功能不一致。其中支持較高EVC功能的主機(172.18.96.34,i7-4790K,支持Haswell)已經加入了羣集,須要將另外一臺支持較低EVC功能的ESXi主機(172.18.96.35,E3-1230 V2,支持ivy Bridge)加入羣集。但若是直接將主機加入羣集,則會彈出圖3-7-7所示錯誤。

(2)因此低EVC支持的ESXi主機要加入高EVC支持的羣集,須要修改羣集設置將EVC「降級」。若是要將羣集支持的EVC降級,降級以前當前羣集中的主機,若是存在運行的虛擬機,將不能降級。此時錯誤信息如圖3-7-8所示。

clip_image020

圖3-7-7 低EVC支持的主機加入高EVC配置的羣集的錯誤提示

clip_image022

圖3-7-8 嘗試下降EVC時的錯誤提示

(3)因爲172.18.96.34已經運行了虛擬機,而且是vCenter Server的虛擬機,當前vCenter Server不能關機,由於關機以後,vSphere Web Client將不能工做(羣集功能是vCenter Server所支持的)。

1 vCenter保存在共享存儲中

對於此類問題,若是vCenter Server保存在共享存儲中,解決思路:

(1)使用vSphere Client或vSphere Host Client登陸(EVC支持高的)172.18.96.34,將vCenter Server關機,並將vCenter Server虛擬機從ESXi清單中「移除」。

(2)使用vSphere Client或vSphere Host Client登陸(EVC支持低的)172.18.96.35,瀏覽存儲,將vCenter Server添加到清單。以後打開vCenter Server虛擬機的電源。

(3)等vCenter Server啓動以後,使用vSphere Web Client登陸vCenter Server,關閉(EVC支持高的)172.18.96.34主機上全部正在運行的虛擬機,若是有「休眠」的虛擬機,請將休眠的虛擬機「打開電源」,以後再關閉這些虛擬機的電源。不然,若是高EVC支持的主機上有正在運行的虛擬機或者休眠的虛擬機,在嘗試加入更低EVC配置的羣集時,會彈出「沒法容許主機進入羣集當前的加強型VMotion兼容模式。主機上己打開電源或己掛起的虛擬機正在使用該模式所隱藏的CPU功能」,圖3-7-9所示錯誤提示。

clip_image024

圖3-7-9 高EVC支持的主機上有運行或休眠的虛擬機不能加入低EVC配置的羣集

等全部虛擬機關閉而且沒有休息的虛擬機時,修改羣集中EVC設置,從原來支持Haswell改成ivy Bridge,並將172.18.96.35加入到羣集。

2 vCenter保存在本地存儲中,無共享存儲

若是vCenter Server保存在本地存儲中,而且當前環境中沒有共享存儲,解決思路以下:

(1)使用vSphere Web Client,將(EVC支持低的)172.18.96.35添加到「數據中心」根目錄,但不要將172.18.96.35加入到羣集,此時也不能加入。

(2)右擊正在運行的vCenter Server虛擬機(本示例爲vCenter-172.18.96.221),選擇「克隆到虛擬機」(圖3-7-10所示),設置克隆後虛擬機的名稱爲其餘名稱,本示例爲vcenter_91.221(如圖3-7-11所示),目標選擇172.18.96.35主機(如圖3-7-12所示)、存儲選擇172.18.96.35的本地存儲(如圖3-7-13所示)。

clip_image026

圖3-7-10 克隆到虛擬機

clip_image028

圖3-7-11 設置克隆後虛擬機名稱

clip_image030

圖3-7-12 選擇172.18.96.35爲目標主機

clip_image032

圖3-7-13 選擇172.18.96.35的本地存儲爲目標存儲

(2)等虛擬機克隆完成以後,在清單中能夠看到克隆前正在運行的vCenter虛擬機(名稱爲vCenter-172.18.96.221)、克隆成功後狀態爲關閉的虛擬機(名稱爲vCenter_96.221),如圖3-7-14所示,請關閉在172.18.96.34主機上運行的vCenter Server虛擬機vCenter-172.18.96.221。等(EVC支持高的)172.18.96.34主機上的vCenter Server虛擬機關閉後,使用vSphere Client或vSphere Host Client登陸(EVC支持低的)172.18.96.35,打開克隆後的vCenter Server虛擬機(名稱爲vCenter_96.221)的電源。

clip_image034

圖3-7-14 克隆完成

(3)等vCenter Server啓動以後,使用vSphere Web Client登陸vCenter Server,關閉(EVC支持高的)172.18.96.34主機上全部正在運行的虛擬機,若是有「休眠」的虛擬機,請將休眠的虛擬機「打開電源」,以後再關閉這些虛擬機的電源。而後修改羣集中EVC設置,從原來支持Haswell改成ivy Bridge(如圖3-7-15所示),並將172.18.96.35加入到羣集,如圖3-7-16所示。

clip_image036

圖3-7-15 更改EVC模式

clip_image038

圖3-7-16 將另外一個主機加入到羣集

3 vCenter保存在本地存儲,有共享存儲

若是vCenter Server保存在本地存儲中,當前環境中有共享存儲,此時vCenter Server運行在(EVC支持高的)172.18.96.34主機上。解決思路以下:

(1)使用vSphere Web Client登陸vCenter Server,選中正在運行的vCenter Server虛擬機,右擊選擇「遷移」,選擇「更改存儲」,將vCenter Server的存儲從172.18.96.34更改到鏈接到172.18.96.34的共享存儲。

(2)等更改存儲完成後,再參照前文介紹的步驟操做(vCenter Server關機、從高EVC支持的ESXi清單移除、添加到低EVC支持的ESXi、從新打開vCenter Server電源、從新鏈接vCenter Server、從新配置羣集、將低EVC支持的ESXi主機加入到羣集),這些不一一介紹。

更多虛擬化課程及視頻,請單擊「VMware系統集成工程師」專題。

http://edu.51cto.com/topic/1308.html

相關文章
相關標籤/搜索