測試 VMWare vShpere 5 Part III – 測試 SDRS 及 HA

VMWare 5 新增了一個叫 Storage DRS 的功能,目的是把不同主機的 DataStore 用一個虛擬的 SDRS 包起來一起運用,好處是系統會自動幫你計算IO 平衡,依照所收集來的資料幫忙你判斷如何移動擬的 VM 讓系統最佳化。

同樣的花了幾十分鐘設定兩台 ESX 5 主機,因我要跟現有的環境切開,所以我另外建立了一個 DataCetner,本來還想測試 VSA (vSphere Storage Appliance)  可惜因為每台主機最少需要有 4 張網卡而作罷;但是 DataCenter 已經命名成 VSA 就不去變動她。

Storage DRS 設定其實還蠻容易的,進入到 Home > Inventory > Datastores and Datastore Clusters 在 VSA DataCenter 下建立一個 SDRS 的群組,把新增加兩台 ESX 的 DataStore 遷移到 SDRS 群組內去,就完成新增。

Turn On SDRS in VMWare ESX 5
Turn On SDRS in VMWare ESX 5

設 定時選擇 SDRS 群組按右鍵選擇 Edit Settings,打開 SDRS, 在 SDRS Runtime Rules 內有監控的參數,一旦硬碟使用量超過 80% 或等待回應時間超過 15ms 時就會展開記錄,之後可在系統上看到變更建議,找時間自己按下 Apply 由系統來調整,不過建議在下班時間才能做這件事喔。

Default Settings of SDRS
Default Settings of SDRS

先前我還沒有測試過 HA (High Availability) 的功能,趁這次機會一起試一下其功能看看;首先必須要先建立兩個ESX Server 出來,本來想在 ESX 4 裝兩台 ESX 5 來做測試,可是很殘念的虛擬出來的 CPU 不能做 EVC (Enhanced vMotion Compatibility) ,最後只好抓了兩台 PC 各多加一片網卡來測試。

下 一步建立一個新的 Cluster,這個 Cluster 裡面就可以設定 HA 及 Storage DRS 兩個選項,不過做任何設定前先把新裝的這兩台 ESX 拉到 Cluster 下面管理,建議先把 EVC 做起來,以防止 VM 在切換時會遇到的CPU不同的相容性問題,最好同一個 Cluster 用同一種廠牌的 CPU,年代也不要差太多。

HA Settings
HA Settings

完 成後我們先來測試 HA,該原理跟 vMotion 很類似,必須要把 VM 主機放置在兩者都能讀取得到的 DataStore,而且還要求成雙成對,所以我利用 NetApp 及 FreeNas 的 NFS 分享來符合這個需求,同時網卡也必須要作 NIC Team,降低網卡故障造成的停機。

我的環境是有兩台 ESX 5主機,分別是 Host140, 及 Host150, 其中 T1 VM 在 150 上面執行,而 T2 VM 在 Host140 執行,另有一台 T3 主機是放在 Host150 作為對照使用;現在要來模擬 Host 150 當機,很乾脆的把網路線拔開,系統在幾秒後會偵測Host150 掛了,之後再過約 1-2 分鐘後就利用 Host140 來啟動 T1 VM,完成 HA 的機制;這當然會造成短時間的斷線與少量的資料流失,真正 Mission Critical 的主機可不能這樣子處理,但是二線的服務卻可以利用這個機制來達成自動復原。

測試時還有對照組 T3 VM 並沒有放置在 Share Storage 而是放在肚子內,實際發生 Host150 故障時,T3 VM 可不會自動的移動到另一台主機去執行,Cluster 可沒有機會把主機整個移到 Host140執行,該主機就很悲劇的必須等到 Host150回覆再重新開起來。

正常運作的 HA 機制.

HA Normal Status
HA Normal Status

Host150網路斷線

One of the host has lost connection
One of the host has lost connection

偵測到 VM 開始斷線

Lost VMs
Lost VMs

T1 VM 變成 PowerOff

T1 VM Become poweroff status
T1 VM Become poweroff status

T1 主機自動啟動, 整個過程沒有人為介入

T1 VM Auto Start
T1 VM Auto Start

後記: 因為我是把 Host150 的網路線拔掉,原來 T1 VM 及 T3 VM 都還在執行的情況下, T3 VM 會自動回復,但是 T1 VM 感覺好像是停機後重新再 Host150 上面再度執行,原來 Host140 上面的就會自動停止。

 < –  上一頁 Part II

下一頁 Part IV

發表迴響