1. 程式人生 > >VMware vSphere 5.5 高可用性

VMware vSphere 5.5 高可用性

張兆森

VMware vSphere 5.5 高可用性

主要講的是集群的一些功能和配置,相比5.0的設置,沒有太大的變化。VMware vSphere為虛擬機提供虛擬化的基礎架構,將現有的物理資源轉化成虛擬資源,將物理資源分成若幹資源,為每個虛擬機提供包括CPU、內存等虛擬資源。要想很好地分配這些資源,就必須要使用資源池。資源池是靈活管理資源的邏輯抽象。資源池可以分組為層次結構,用於對可用的 CPU 和內存資源按層次結構進行分區。群集中的資源池比單個ESXi主機上的還要重要,因為在群集中創建資源之後,整個資源池管理的就是所有的ESXi主機資源了。所管理的資源是所有ESXi主機上的CPU和內存的資源總和。

高可用性和雙機熱備是VMware vSphere 5.5最重要的一部分,高可用並不是vSphere獨有的,企業使用高可用就是為了服務的連續性和數據的安全性,HA是以一群ESXi服務器為主的群集功能,主要是目的是當虛擬機運行的主機發生故障時能及時轉移主機,避免長時間的停機。而FT雙機熱備則是保證虛擬機最長時間不停機,將虛擬機以雙機熱備的方式同時在兩臺主機運行,大大增強了業務的可連續性。

主要講的以下內容:

一、 建立群集

二、 設置HA高可用性

三、 測試HA高可用性

四、 設置DRS

五、 建立FT雙機熱備

無論是計劃停機時間還是非計劃停機時間,都會帶來相當大的成本。但是,用於確保更高級別可用性的傳統解決方案都需要較大開銷,並且難以實施和管理。
VMware 軟件可為重要應用程序提供更高級別的可用性,並且操作更簡單,成本更低。使用 vSphere,組織可以輕松提高為所有應用程序提供的基準級別,並且以更低成本和更簡單的操作來實現更高級別的可用性。使用vSphere,可以獨立於硬件、操作系統和應用程序提供更高可用性,減少常見維護操作的計劃停機時間,在出現故障時提供自動恢復。vSphere 可以減少計劃的停機時間,防止出現非計劃停機,並迅速從斷電中恢復。

建立群集

多臺電腦組成的集合就稱為集群,集群的目的就是將計算機的負擔分配到多臺主機上,或是當運行某一個服務的物理服務器彈出問題時,讓另一臺服務器接手這些服務。在VMware vSphere中,將多臺
ESX物理服務器組成一個集群,在這個集群中某臺服務器出現故障時,這臺服務器上運行的虛擬機可用自動遷移到其他可用的ESX服務器上,從而保障業務的不間斷運行。

集群就是把所有的ESX/ESXi組織起來,形成一個大的資源池,所有的虛擬機可在池中的任意主機上自由移動,並且Cluster可做到快速擴容和HA故障冗余;所以Cluster是服務器虛擬化通往數據中心的必備功能。

vSphere集群包括DRS集群、HA集群和DPM集群。

1DRS:分布式資源調度,用於動態調整ClusterESX主機負載,自動把負載較重的主機上的虛擬機通過VMotion遷移到負載較輕的主機上,最終達到整個Cluster中的主機資源消耗平衡。

2HA:高可用性,用於意外故障切換,當監控到Cluster中有主機意外故障時,會自動在其他主機上啟動故障主機上之前承載的虛擬機。

3DPM:分布式電源管理,用於在負載較輕時,把虛擬機動態“集中”到Cluster中的少部分主機上,然後把其他ESX/ESXi主機待機,以節省電力消耗,等負載較大時,再重新喚醒之前待機的主機。

當了解群集後,下面就來建立群集

1、在vSphere Client 中,右擊數據中心或文件夾,然後在彈出的快捷菜單中選擇“新建群集”

技術分享圖片

2、在名稱文本框中為群集命名。該名稱顯示在vSphere Client 清單面板中。

技術分享圖片

3、如果適用,啟用增強型vMotion兼容性 (EVC),並選擇它應以何種模式運行。在這裏可以看到EVC所支持的AMDInterCPU類型。不過要註意的是,即便使用EVC,也不能將Intel服務器上的虛機遷移到AMD主機上。所以EVC只有三個選項:禁用、Intel或者AMD

技術分享圖片

4、選擇虛擬機的交換文件位置。可以將交換文件與虛擬機本身存儲在同一目錄中,或者將交換文件存儲在主機指定的數據存儲中(主機-本地交換)。單擊“下一步”

技術分享圖片

5、單擊“完成”按鈕以完成群集的創建,新群集不包括任何主機或虛擬機。

技術分享圖片

6、完成建立群集後,該名稱顯示在vSphere Client 清單面板中。

技術分享圖片

7、添加ESXi主機,可以從清單或列表視圖中選擇主機或者將主機拖至目標群集對象。

技術分享圖片

8、將所有的主機都拖至目標群集對象。

技術分享圖片

二、 設置HA高可用性

vSphere HA 利用配置為群集的多臺 ESXi 主機,為虛擬機中運行的應用程序提供快速中斷恢復和具有成本效益的高可用性。vSphere HA通過在群集內的其他主機上重新啟動虛擬機,防止服務器故障。持續監控虛擬機並在檢測到故障時對其進行重新設置,防止應用程序故障。與其他群集解決方案不同,vSphere HA 提供基礎架構並使用該基礎架構保護所有工作負載。無需在應用程序或虛擬機內安裝特殊軟件。所有工作負載均受 vSphere HA 保護。配置 vSphere HA 之後,不需要執行操作即可保護新虛擬機。它們會自動受到保護。

vSphere HA 可以將虛擬機及其所駐留的主機集中在群集內,從而為虛擬機提供高可用性。群集中的主機均會受到監控,如果發生故障,故障主機上的虛擬機將在備用主機上重新啟動。創建 vSphere HA 群集時,會自動選擇一臺主機作為首選主機。首選主機可與 vCenter Server 進行通信,並監控所有受保護的虛擬機以及從屬主機的狀態。可能會發生不同類型的主機故障,首選主機必須檢測並相應地處理故障。首選主機必須可以區分故障主機與處於網絡分區中或已與網絡隔離的主機。首選主機使用網絡和數據存儲檢測信號來確定故障的類型。

在設置HA之前,要確保每臺ESXi主機都有管理網絡冗余,並且vSphere HA檢測信號數據存儲數目為1,少數要求數目為2。如果不滿足其要求,則會在配置HA的過程中提示配置問題,如下圖:

技術分享圖片

要確保管理網絡冗余,也可以使用多個管理網絡,管理網絡冗余如下圖:

技術分享圖片

確認所有虛擬機及其配置文件都駐留在共享存儲器上。確認主機配置為具有該共享存儲器的訪問權限,以便可以使用群集中的不同主機打開虛擬機電源。當設置好管理網絡和存儲後,下面我們就開建立HA群集配置。

1、右鍵單擊群集,然後單擊編輯設置。

技術分享圖片

2、在群集的“設置”對話框中,您可以修改群集的 vSphere HA(和其他)設置。在“群集功能”頁上,選擇打開 vSphere HA

技術分享圖片

3、根據需要為群集配置 vSphere HA 設置主機監控狀態、接入控制、虛擬機選項、虛擬機監控和數據存儲檢測信號等功能。

技術分享圖片

4、默認虛擬機設置控制虛擬機的重新啟動順序(虛擬機重新啟動優先級)以及在主機之間失去網絡連接時 vSphere HA 的響應方式(主機隔離響應)。這些設置適用於主機發生故障或主機隔離時群集內的所有虛擬機。此外,也可以為特定虛擬機配置異常。

技術分享圖片

5、如果在設置的時間內沒有收到單個虛擬機的 VMware Tools 檢測信號,虛擬機監控將重新啟動該虛擬機。同樣,如果沒有收到虛擬機正在運行的應用程序的檢測信號,應用程序監控也可以重新啟動該虛擬機。可以啟用虛擬機監控功能,並配置 vSphere HA 監控無響應時的敏感度。

技術分享圖片

在默認群集設置裏可以配置監控敏感度的級別。高敏感度監控可以更快得出已發生故障的結論。然而,如果受監控的虛擬機或應用程序實際上仍在運行,但由於資源限制等因素導致未收到檢測信號,高敏感度監控可能會錯誤地認為此虛擬機發生了故障。低敏感度監控會延長實際故障和虛擬機重置之間服務中斷的時間。檢測到故障後,vSphere HA 會重置虛擬機。重置可確保這些服務仍然可用。為了避免因非瞬態錯誤而反復重置虛擬機,默認情況下,在某個可配置的時間間隔內將對虛擬機僅重置三次。在對虛擬機執行過三次重置後,指定的時間結束之前,vSphere HA 不會在後續故障出現後進一步嘗試重置虛擬機。可以使用每個虛擬機的最大重置次數自定義設置來配置重置次數。

監控靈敏度高時,故障時間間隔30(秒),重置期為1 小時。監控靈敏度中時,故障時間間隔60(秒),重置期為24小時。監控靈敏度低時,故障時間間隔120(秒),重置期為7天,在默認群集設置中,左右調整按鈕來控制監控靈敏度

6、當 vSphere HA 群集中的首選主機無法通過管理網絡與從屬主機通信時,首選主機將使用數據存儲檢測信號來確定從屬主機是否出現故障,是否位於網絡分區中,或者是否與網絡隔離。vCenter Server 為每個主機選擇的檢測信號數據存儲的數量。

技術分享圖片

7、正在配置每臺ESXiHA功能。

技術分享圖片

8 配置完成後,ESXi主機會在群集中。

技術分享圖片

三、測試HA高可用性

當設置 vSphere HA 群集之後,群集內的所有虛擬機無需額外配置即可獲得故障切換支持。減少了硬件成本和設置虛擬機可充當應用程序的移動容器,可在主機之間移動。管理員會避免在多臺計算機上進行重復配置。使用 vSphere HA 時,必須擁有足夠的資源來對要通過 vSphere HA 保護的主機數進行故障切換。但是,vCenter Server 系統會自動管理資源並配置群集。提高了應用程序的可用性虛擬機內運行的任何應用程序的可用性變得更高。虛擬機可以從硬件故障中恢復,提高了在引導周期內啟動的所有應用程序的可用性,而且沒有額外的計算需求,即使該應用程序本身不是群集應用程序也一樣。通過監控和響應 VMware

Tools 檢測信號並重新啟動未響應的虛擬機,可防止客戶機操作系統崩潰。

1、首先我們看到,新建虛擬機1和新建虛擬機2都運行在ESXi02上,現在我們就模仿事故的發生,將ESXI02進行強行關閉。

技術分享圖片

2、當我們的vSphere HA 檢測到esxi02出現故障時候,HA功能自動激活,所有在esxi02上的虛擬機會在esxi01上啟動。

技術分享圖片

3、當虛擬機成功切換到esxi上時,此時候,HA失效,因為群集中只有1ESXi主機是正常運行的,所以在今後的正式環境中,要配置HA功能,群集中的主機不得少於3臺。這樣能確保虛擬機的安全運行。

技術分享圖片

四、 設置DRS

DRS 群集是一組具有共享資源和共享管理接口的ESXi主機及關聯虛擬機。必須創建 DRS 群集,才能從群集級別資源管理中獲益。DRS是跨聚合到邏輯資源池中的硬件資源集合來動態地分配和平衡計算容量的。VMware DRS 是跨資源池不間斷地監控利用率,並根據反映業務需要和不斷變化的優先級的預定義規則,在多臺虛擬機之間智能地分配可用資源的。當虛擬機負載增大時,VMWare DRS 會通過在資源池中的物理服務器之間重新分發虛擬機來自動分配額外的資源。

DRS可以使資源優先用於最重要的應用程序,以便讓資源與業務目標協調,自動、不間斷地優化硬件利用率,以響應不斷變化的情況,並且為業務部門提供專用的(虛擬)基礎結構,同時讓IT 部門能夠集中。全面地控制硬件,能執行零停機服務器維護等。在自動模式下,DRS 將確定在不同的物理服務器之間分發虛擬機的最佳方式,並自動將虛擬機遷移到最合適的物理服務器上。在手動模式下,Vmware DRS 將提供一個把虛擬機放到最佳位置的建議,並將該建議提供給系統管理員,由其決定是否進行更改。

VMware DRS允許用戶自已定義規則和方案來決定虛擬機共享資源的方式以及它們之間優先權的判斷根據。當一臺虛擬機的工作負載增加時,VMware DRS會根據先前定義好的分配規則對虛擬機的優先權進行評估。如果該虛擬機通過了評估,那麽DRS就為它分配額外的資源,當主機資源不足的時候,DRS就會尋找集群中有多余可用資源的主機,並將這個虛機vMotion到上面,以調用更多的資源進行其重負載業務。

DRS分配資源的方式有兩種:將虛擬機遷移到另外一臺具有更多合適資源的服務器上,或者將該服務器上其他的虛擬機遷移出去,從而為該虛擬機騰出更多的“空間”。

其實VMware DRS主要是負載平衡群集中的ESXi服務器。VMware DRS將持續監控群集內所有主機,監控虛擬機的 CPU、內存資源的分布情況和使用情況。在給出群集內資源池和虛擬機的屬性、當前需求以及不平衡目標的情況下,DRS 會將這些衡量指標與理想狀態下的資源利用率進行比較。然後,它會相應地執行虛擬機遷移。

其次是電源管理vSphere Distributed Power Management (DPM) 功能啟用後,DRS 會將群集級別和主機級別容量與群集的虛擬機需求(包括近期歷史需求)進行比較。如果找到足夠的額外容量,DPM會將主機置於(或建議置於)待機電源模式;或者如果需要容量,則建議打開主機電源,根據提出的主機電源狀況建議,可能需要將虛擬機遷移到另外一臺具有更多合適資源的服務器上,或者將該服務器上其他的虛擬機遷移出去。

1、在VMware Client中選擇群集,右鍵選擇編輯設置,打開cluster設置窗口,單擊打開vSphere DRS 框來啟用 DRS 功能。這樣,DRS就打開了,之後我們要使用DRS來管理群集資源。

技術分享圖片

2、擇 DRS 的默認的自動化級別,當這個群集的DRS自動化參數配置成手動,且每一次群集中的ESXi主機上的虛擬機激活時,系統就會提示你要在哪一臺可用的ESXi上激活這臺虛擬機,在激活時,系統會給出可用的主機,並且以優先順序推薦的等級來排序。最適合的ESXi主機會在最前面。選擇半自動DRS時,系統會自動選擇虛擬機最佳時機,不會讓用戶來選擇主機,但是在真正進行轉移動作之前,還是會要求用戶鍵入回車。選擇全自動的DRS時,會在虛擬機激活時自身找到最佳的ESXi主機並且根據配置值激活vMotion來轉移主機。全自動的DRS配置有5個:保守、相對保守、中等、相對激進、激進。

技術分享圖片

3、通過使用此主機 DRS 組,可以創建虛擬機與主機間的關聯性規則,從而與適當的虛擬機 DRS 組建立關聯性(或反關聯性)關系。在“主機 DRS 組”部分中,單擊添加。

技術分享圖片

4、以使用規則。控制群集內主機上的虛擬機的放置位置。可以創建兩種類型的規則。一種是用於指定虛擬機組和主機組之間的關聯性或反關聯性。關聯性規則規定,所選虛擬機 DRS 組的成員可以或必須在特定的主機 DRS 組成員上運行。反關聯性規則規定,所選虛擬機 DRS 組的成員不能在特定的主機DRS 組成員上運行。另一種是用於指定各個虛擬機之間的關聯性或反關聯性。指定關聯性的規則會使 DRS 嘗試將指定的虛擬機一起保留在同一臺主機上(例如,出於性能考慮)。

技術分享圖片

5、在虛擬機選項裏,可以正對某些虛擬機做自動化級別的個性設置。

技術分享圖片

6、通過vSphere Distributed Power Management (DPM) 功能,DRS 群集可以根據群集資源利用率來打開和關閉主機電源,從而減少其功耗。vSphere DPM 監控內存和 CPU 資源的群集中所有虛擬機的累積需求,並將其與群集中所有主機的總可用資源量進行比較。如果找到足夠的額外容量,則vSphere DPM 會將一臺或多臺主機置於待機模式,並將其虛擬機遷移到其他主機,然後關閉其電源。相反,當認為容量不夠時,DRS 會使這些主機退出待機模式(將它們打開電源),並使用vMotion將虛擬機遷移到這些主機上。當進行這些計算時,vSphere DPM 不僅考慮當前需求,而且還會考慮用戶指定的所有虛擬機資源預留。

技術分享圖片

7、也可以單獨為群集中的單個主機設置電源管理選項

技術分享圖片


8、此時可以再群集的摘要中可以看到vSphere DRS的詳細情況。

技術分享圖片

五、 建立FT雙機熱備

vSphere HA 通過在主機出現故障時重新啟動虛擬機來為虛擬機提供基本級別的保護。vSphere Fault Tolerance可提供更高級別的可用性,允許用戶對任何虛擬機進行保護以防止主機發生故障時丟失數據、事務或連接。Fault Tolerance 通過確保主虛擬機和輔助虛擬機的狀態在虛擬機的指令執行的任何時間點均相同來提供連續可用性。使用 ESXi 主機平臺上的 VMware vLockstep 技術來完成此過程。vLockstep 通過使主虛擬機和輔助虛擬機執行相同順序的 x86 指令來完成此過程。主虛擬機捕獲所有輸入和事件(從處理器到虛擬 I/O 設備),並在輔助虛擬機上進行重放。輔助虛擬機執行與主虛擬機相同的指令序列,而僅單個虛擬機映像(主虛擬機)執行工作負載。如果運行主虛擬機的主機或運行輔助虛擬機的主機發生故障,則會發生即時且透明的故障切換。正常運行的ESXi 主機將無縫變成主虛擬機的主機,而不會斷開網絡連接或中斷正在處理的事務。使用透明故障切換,不會有數據損失,並且可以維護網絡連接。 在進行透明故障切換之後,將重新生成新的輔助虛擬機,並將重新建立冗余。整個過程是透明且全自動的,並且即使 vCenter Server 不可用,也會發生。

其實在日常的虛擬化使用中,很少用到FT功能,一是對資源浪費比較嚴重,二是單個虛擬CPU無法滿足業務的需求,三是只有很少有一些應用要求低配置,卻要求高可用的要求。

1、在建立FT雙機熱備之前,要確保虛擬機的虛擬CPU11核心。

技術分享圖片

2、其次是要建立FT功能的主機必須有VMlernel網絡用於FT

技術分享圖片

3、在群集設置中,滿足FT的群集要求,創建並啟用vSphere HA 群集,在群集設置中勾選“打開vSphere HA

技術分享圖片

4、檢查ESXi主機的CPU是否支持FT指令,如果不支持,會在打開FT時報錯,如圖8-17所示。

技術分享圖片

5、右擊一個虛擬機並在彈出的快捷菜單中選擇 Fault Tolerance > 打開 Fault Tolerance

技術分享圖片

6、開啟FT需要使用精簡置備的磁盤,所以在開啟FT前,vCenter會自動轉換虛擬機磁盤。

技術分享圖片

7、轉換之後,特定的虛擬機將指定為主虛擬機,並在另一臺主機上次要輔助虛擬機。現在,主虛擬機已啟用了容錯功能。虛擬機運行在esxi01上,FT保護副本運行在esxi02

技術分享圖片

VMware vSphere 5.5 高可用性