vSphere部署系列之09——HA和DRS群集管理

分類:IT技術 時間:2016-10-14

vSphere部署系列之09——HA和DRS群集管理

群集(Cluster)是將多臺物理主機組織起來,群集管理其中所有主機的資源,形成一個大的資源池。群集中的所有的虛擬機可在池中的任意主機上自由移動,並且群集可做到快速擴容和HA故障冗余。群集的前提條件是要有共享存儲,所有虛擬機及其配置文件必須駐留在共享存儲器上。

在前面的博文章節中,已搭建了比較基礎的實驗環境,實現了vCenter對ESXi主機的管理,網絡管理、共享存儲管理。在這種情況下,各物理主機之間的計算資源(CPU、內存)是完全獨立的,在某臺主機出現問題時,虛擬機的運行得不到保障。

為了達到計算資源的均衡利用,和更好的業務保障,接下來需要創建群集,並啟用群集的HA和DRS解決方案。

實驗環境總體規劃,請見前面的博文《vSphere部署系列之03——實驗環境總體規劃》

 wKioL1e25-HBNFJ6AALXJy2rt0w665.png-wh_50

▲總體規劃網絡拓撲圖

一、前期工作

在此前的操作中,已經配置了vMotion網絡,並配置了共享存儲。

為方便接下來的調試,先在每臺服務器上新建並運行一個虛擬機。系統安裝完成後,各虛擬機安裝VMware Tools,並且,在CD/DVD的設置中,要斷開與主機ISO鏡像的連接(在裝系統時會需要用到),否則在vMotion遷移時會報錯。

二、新建群集

VMware建議首先創建空群集。在已計劃群集的資源和網絡架構之後,再使用 vSphere 客戶端將主機添加到群集,並指定群集的VMware HA 設置。

本案是在vSpherer Client連接vCenter Server的主界面中進行。

選中左側清單中的數據中心“SQ-DataCenter”,通過右擊菜單中的“新建群集”子菜單,將會彈出“新建群集向導”對話框。

 wKiom1e26A_AJAQ_AAEZofsIQto872.png-wh_50

▲單擊子菜單“新建群集”,將會彈出新建群集向導對話框

 wKioL1e26CXykkF5AAD4CtFg_rg422.png-wh_50

▲新建群集向導對話框,設備群集名稱,本案設為“Cluster01”。

在這一步中直接勾選群集的兩項功能,也可留作以後再配置。這裏暫不勾選,創建一個空群集。

 wKiom1e26CaB3RUgAADKchXtOwY154.png-wh_50

▲VMware EVC設置。由於Vmotion對硬件要求嚴格,EVC用於將不同型號的INTEL或者AMD系列CPU的服務器之間相互遷移虛擬機。

這裏選擇默認的“禁用EVC”。本案中兩臺物理主機配置相同,不存在兼容性問題。

 wKiom1e26Caj0-Y8AADF1MESobU310.png-wh_50

▲虛擬機交換文件位置設置

 wKioL1e26CbTOF6FAAC1Da_vo_o084.png-wh_50

至此一個空群集創建完成。群集建立完成後,將主機往該群集裏拖,即可完成添加。以後如果要退出,則將主機向數據中心處拖動即可——但此時主機要進入維護模式,才能操作。

wKiom1e26CewLxPOAAGUQYQa2rg709.png-wh_50

▲在摘要->常規區域中,可看到此時群集的資源總體情況。

本案中,兩臺服務器配置一樣,CPU均為兩個6核的E5-2630 v2,內存均為4條8G。

因此這裏看到的群集資源為:總內存(2*4*8G)64G,處理器總核數和為(2*2*6)24核。另外,總存儲為兩臺主機的本在磁盤容量之和、再加上共享存儲的磁盤容量。

雖然此時群集的資源,是兩臺物理主機的總和,但由於沒有啟用HA功能,還是各自私有的。此時關掉某臺主機的話,其虛擬機也會跟著被關機。

也就是說,此時群集還沒實現自動vMotion,如要遷移虛擬機,仍需要人工幹預。接下來要為群集設置啟用vSphere HA和vSphere DRS, 

對於加入群集的主機,需要在全部虛擬機關機或遷移至其他主機的的情況下,才能進入維護模式。否則會報錯,提示“資源不足 無法滿足群集上的vSphere HA故障切換配置”。

三、HA和DRS設置

首先了解一下vSphere HA和DRS的原理和功能。

vSphere HA(高可用性)通過對群集中不同主機的虛擬機的即時監控,通過主機故障轉移功能,使得主機上面的虛擬機可以成功的轉移到其它群集內的主機上,有效的避免了主機宕機給企業帶來的危害,降低了風險(當然vmware還有更厲害的武器,那就是vmware的FT功能)。

vSphere DRS(分布式資源調度)聚合群集中的ESXi主機資源,通過監控利用率,自動分配這些資源給虛擬機,並能夠跨ESXi主機不斷進行虛擬機資源優化。DRS利用vMotion以滿足虛擬機在群集中的可用資源配額,vMotion將虛擬機遷移到有更多可用資源的ESXi主機上來平衡利用率,DRS也可以使用vMotion進行分散資源整理,使得虛擬機有更多的資源利用。

HA的心跳檢測信號可以通過在 ESXi 主機之間發生, 不受 DRS 和 VMotion 的影響;HA 甚至都不依賴於 VC 服務器,VC 於 HA 的作用僅限於配置時需要它,配置完成之後,只要設定了心跳檢測的隔離地址,便與VC服務器無關了(前提是不需要用到DRS和VMotion 等功能)。

下面進行HA的DRS的設置。通過右擊群集,在其菜單中選擇“編輯設置”,將會彈出設置對話框,可修群集的VMware HA和vSphere DRS設置。

 wKiom1e26PrRuBfjAAE-B4u8yWI204.png-wh_50

▲Cluster01設置對話框。在功能選擇區域中,首先勾選“打開vSphere HA”和“打開vSphere DRS”

此時在左則列表框中可看到“vSphere HA”和“vSphere DRS”及其子選項。選中各項,根據需要進行具體的設置即可。

如無特殊情況,各子項設置使用默認設置即可。也就是說,勾選這兩項後,直接單擊“確定”按鈕,即完成了 HA和DRS的啟用、設置。

A、vSphere HA設置

 wKioL1e26PuhYwSqAAE9Ra28ekE059.png-wh_50

▲主機監控及接入控制,這裏選擇選擇默認值

 wKioL1e26PughnBCAADf3fugI7c525.png-wh_50

▲虛擬機選項

其中“虛擬機 重新啟動優先級”選項指定發生主機故障時重啟 VM 的相對優先級,優先級較高的 VM 將優先啟動,依此類推,優先級從高到低次第啟動;“主機隔離響應”選項則用於對已與集群失去連接的主機進行操作。

 wKiom1e26PyB8hxgAAD-3uV_lwE527.png-wh_50

▲虛擬機監控,默認為“已禁用”

 wKiom1e26PyhoD2cAAEuIve1G9Y194.png-wh_50

▲數據存儲檢測信號,默認為第一項,這裏選擇第三項,並勾選共享存儲

B、vSphere DRS 設置

 

wKioL1e26P3wC9tEAAEc-buwRG4300.png-wh_50

▲自動化級別,自動級別決定了DRS的自動響應級別,包括位置生成和負載均衡,這裏選擇選擇默認值——全自動優先級3。

可移動閾值滑塊以使用從“保守”到“激進”這5個設置中的一個。這5種遷移設置將根據其所分配的優先級生成建議。每次將滑塊向右移動一個設置,將會允許包含下一較低優先級的建議。

 wKioL1e26P3xd7CzAAErfi4F3Rg721.png-wh_50

▲DRS組合管理器,可以創建虛擬機與主機間的關聯性規則,從而與適當的虛擬機 DRS組建立關聯性(或反關聯性)關系。暫時不設置。

 wKiom1e26P6gvT-nAAEYEnijyXU733.png-wh_50

▲規則,在這裏可以根據需要添加一系列的相應規則,控制群集內主機上的虛擬機的放置位置。暫時不添加。

 wKiom1e26P_yrMNPAADTFYCF9nY516.png-wh_50

▲虛擬機選項,自動化級別為默認的全自動。

 wKioL1e26P_RsnIMAAFC8GDdYt4106.png-wh_50

wKioL1e26QDyj56aAAEPepgJHiM032.png-wh_50

 

配置完成後,在群集摘要中,可以看到HA和DRS配置信息。

 wKiom1e26QCxoxDdAAF4Nu_S9Iw329.png-wh_50

▲群集的摘要信息,單擊“配置問題”鏈接,將彈出群集配置問題對話框

 wKioL1e26QGh3PFYAADjh9iwVyE221.png-wh_50

▲集配置問題對話框,顯示有網絡冗余問題和數據存儲問題

以上群集配置問題對話框中,顯示有網絡冗余問題和數據存儲問題,這在各主機的摘要中也會有提示。

 wKioL1e26QKC-bDBAACtTgwAyo8224.png-wh_50

▲主機esxi01摘要中的配置問題提示

VMware建議為vSphere HA 設置冗余網絡連接。本案在此前的網絡設計中,對這一點有疏忽,Management Network所在的vSwitch0只對應了vmnic0一個網卡,不滿足網絡冗余,因此出現“此主機當前沒有管理網絡冗余”提示,但不阻礙HA的使用。

官方顯示:自 vSphere 5.0 開始,vSphere HA 至少需要在群集中的所有主機之間共享兩個共享數據存儲,才能正常運行數據存儲檢測(DataStore HeartBeat)信號。因為本案只是用了一個共享存儲因此出現“vSphere HA檢測信號數據存儲數目為1,少於要求數目:2”問題。

(在高級設置中,das.heartbeatdsperhost一項,用於更改所需的檢測信號數據存儲的數量。有效數值為2-5,默認為2。

das.ignoreinsufficienthbdatastore用於在如果主機不具有足夠的 vSphere HA 檢測信號數據存儲,則禁用創建的配置問題。默認值為 false。必為True,則不會再出現此提示。)

wKiom1e26QLw5rJZAACuf_R7g7Q279.png-wh_50

▲主機esxi01摘要中的可看到該主機為HA群集中的主機

如果看esxi02,則其vSphereHA狀況顯示為“已連接(從屬)”

每個啟用了HA的群集通常只存在一臺首選主機(Master),其他所有主機都是從屬主機(Slave)。首選主機的職責是管理群集主機和受保護的虛擬機列表、監控從屬主機的狀況等,如果從屬主機發生故障或無法訪問,首選主機將確定需要重新啟動的虛擬機。

首先主機是通過選舉規則產生的。選舉的規則有兩條:擁有最多的datastore的主機當選;如果主機擁有的datastore一樣多,那麽Managed Objective ID((MOID) )號最大的那臺主機當選。

在完成以上配置的情況下,如果關閉某一臺主機,其上面的虛擬機會自動遷移到另一個主機上。當該主機重新啟動之後,先前自動遷移出去的虛擬機會自動遷移回來。如果關閉的是首選主機,由(唯一的)從屬主機會晉升為首選主機。

此時若在群集中直接新建虛擬機,由於是DRS是配置為全自動級別,虛擬機最終運行在哪臺主機上,由DRS按負載均衡原則、根據各主機的資源使用情況來決定。

 wKiom1e26QTBJZymAADxYSfyMo0625.png-wh_50

▲直接在群集Cluster01中新建虛擬機

HA和DRS,以及更進一步的FT,都有很深的學問,細究起來可以琢磨好幾天。筆者本人懂得並不深入,不敢班門弄斧,下面僅就易於實驗、在實踐中較常用到的DRS規則做一些設置,以窺DRS的魅力。

四、vSphere DRS規則的設置

為對DRS有更好的調試、研究,在該群集Cluster01中再創建六個虛擬機——將其中一個虛擬機做成模板(改名為Win2008R2-Temp),然後再從模板中批量創建虛擬機。關於虛擬機模板,後續文章會有專門研究。

 wKioL1e26QTimfdmAAEbPaZfZJU175.png-wh_50

▲查看群集虛擬機,可看到運行的虛擬機均勻地分布在兩主機上

以上8個虛擬機中,VM1和VM2是esxi01和esxi02在加入群集前創建的,仍分別運行在最初主機上,其他6個虛擬機VM3、VM4、VM7和VM8,則在啟動時,因缺少初始位置的數據,會被DRS按全自動的方式、根據主機的資源使用情況,進行隨機分配。由於兩臺主機硬件配置(性能)相同,所以最終平均分配在兩臺主機上。

主機虛擬機esxi01VM1、VM4、VM5、VM7esxi02VM2、VM3、VM6、VM8

▲當前虛擬機運行情況

通過使用此主機DRS組,可以創建虛擬機與主機間的關聯性規則,從而與適當的虛擬機DRS組建立關聯性(或反關聯性)關系,這樣可以實現控制群集內主機上的虛擬機的放置位置。

接下來,就使用DRS組管理和規則,對虛擬機的運行位置,按需進行重新分配。假設指定VM1-VM3運行在esxi01上,VM4-VM6運行在esxi02上——主要這兩臺主機是運行,就按這個規定運行虛擬要同——剩余兩個VM7、VM8不指定。

主機虛擬機esxi01VM1、VM2、VM3、VM7esxi02VM4、VM5、VM6、VM8

▲預想虛擬機運行情況

打開群集設置對話框,在“DRS組管理器”和“規則”選項中進行操作

 wKiom1e26w-iOR62AAD_CHN2LzE286.png-wh_50

▲群集設置對話框->DRS組管理器

單擊虛擬機DRS組中的“添加”按鈕,會彈出虛擬機“DRS組”設置對話框;

單擊主機DRS組中的“添加”按鈕,會彈出主機“DRS組”設置對話框。

 wKioL1e26xCT9QtUAACVX_QJ2xw834.png-wh_50

▲虛擬機“DRS組”設置對話框,

在此創建一個名為“A Group”的DRS組,並將虛擬機VM1-VM3移入到該組。

設備完成後,單擊“確定”按鍵返回上一級。

按同樣的方式,在此創建一個名為“B Group”的DRS組,並將虛擬機VM4-VM6移入到該組。

 wKiom1e26xHTB9v0AACD6r6Gtxc885.png-wh_50

▲主機“DRS組”設置對話框,

在此創建一個名為“H1 Group”的DRS組,並將主機esxi01移入到該組。單擊“確定”按鈕,完成設置。

按同樣的方式,創建一個名為“H2 Group”的DRS組,並將主機esxi02移入到該組。

 wKiom1e26xGwTs9DAAE9cVnoIZ0951.png-wh_50

▲創建了A Group、BGroup和H1 Group、H2 Group的DRS組管理器

接下來設置DRS規則。

DRS有兩種類型的規則。一種是用於指定虛擬機DRS組和主機DRS組之間的關聯性或反關聯性。關聯性規則規定,所選虛擬機DRS組的成員可以或必須在特定的主機DRS組成員上運行。反關聯性規則規定,所選虛擬機DRS組的成員不能在特定的主機DRS組成員上運行。另一種是用於指定各個虛擬機之間的關聯性或反關聯性。指定關聯性的規則會使DRS嘗試將指定的虛擬機一起保留在同一臺主機上(如,出於性能考慮)。根據反關聯性規則,DRS嘗試將指定的虛擬機分開,如,當一臺主機出現問題時,將不會同時丟失兩臺虛擬機。

 wKiom1e2623AxoXFAAFxmz5LHhY946.png-wh_50

▲群集設置對話框->規則,單擊“添加”按鈕,彈出規則對話框。

規則類型有三類:

單獨的虛擬機:指定DRS組的VM必須分開在不同的主機DRS組運行;

聚集的虛擬機:指定DRS組的VM必須分開在相同的主機DRS組運行;

虛擬機到主機:可以指定特定的VM組必須在組中的主機上運行。

 wKioL1e26xLjrQafAACQYU-Wg5Q140.png-wh_50

▲規則設置對話框(在DRS組管理器選項卡中,也是可以設置DRS組的),

在此創建一個名為“Rule1-A-H1”的規則,類型為“虛擬機到主機”,群集虛擬機組選擇“A Group”,群集主機組選擇“H1 Group”。即指定A Group組中的虛擬機運行在H1 Group組的主機上。

按同樣的方式,此創建一個名為“Rule2-B-H2”的規則,類型為“虛擬機到主機”,群集虛擬機組選擇“A Group”,群集主機組選擇“H1 Group”。即指定B Group組中的虛擬機運行在H2 Group組的主機上。

 wKioL1e26xTR0XEvAAECQUSAtcE508.png-wh_50

▲創建了規則Rule1-A-H1和Rule2-B-H2,但“確定”按鈕,完成設置

 wKioL1e26xWgzy2pAAIGUHyzOEI090.png-wh_50

▲群集虛中虛擬機列表,VM2、VM3、VM4、VM5已根據規則自動遷移

DRS規則設置完成後,大約過半分鐘,群集中的虛擬機會便根據規則定義的關鍵性,自動遷移到被指定的主機組中(本案主機組只有一臺主機)。待虛擬機重新分配完成後,違反規則對虛擬機進行手動遷移,是不被允許的。

 wKiom1e26xWDTdZ4AAC5VW2-DgA717.png-wh_50

▲試途將VM1由esxi01向esxi02遷移時受到制止。

此時,若把exsi01主機關機,虛擬機DRS組A Group中的所有虛擬機,受制於規則不會自動遷移到esxi02主機上。

 wKioL1e26xaAnSo-AAE9urfF9Uw502.png-wh_50

▲exsi01主機關機,VM1-VM3也跟著被關閉。VM7因不受規則限制,被自動遷移到esxi02。

本案中,由於資源有限,這樣的設定看不到太大的應用意義。但在實際應用的,當有多臺物理主機時,主機DRS組會包含多臺主機,形成一個相對寬松的活動範圍。這樣,關聯到該主機DRS組上的虛擬機DRS組內的虛擬機,便可以在此活動範圍內均衡運行。

本文出自 “一樹清勁” 博客,請務必保留此出處http://sunshyfangtian.blog.51cto.com/1405751/1840421


Tags: 解決方案 數據中心 網絡管理 配置文件 服務器

文章來源:


ads
ads

相關文章
ads

相關文章

ad