1. 程式人生 > >VMware Vsphere高可用性(HA群集)

VMware Vsphere高可用性(HA群集)

1 應用層高可用性:如實現mysql、oracle資料庫應用程式的儲群集,主要是判斷mysql、oracle應用程式是否停止執行。

2 作業系統高可用性:如windows的故障轉移群集(windows failover clustering WFC)。

3 虛擬化層的高可用性:如vsphere high availability(HA)和vsphere fault tolerance(FT)。

4 物理層的高可用性:如:多網路介面卡、SAN等。

vSphere HA 和 Fault Tolerance(FT)功能分別通過提供中斷快速恢復和連續可用性來最小化或消除非計劃停機時間。

使用 vSphere

,企業可以輕鬆提高為所有應用程式提供的基準級別,並且以更低成本和更簡單的操作來實現更高級別的可用性。使用vSphere,你可以:

a 獨立於硬體、作業系統和應用程式提供更高可用性。

b 減少常見維護操作的計劃停機時間。

c 在出現故障時提供自動恢復。

一、vSphere HA 提供快速中斷恢復

vSphere HA 利用配置為群集的多臺 ESXi 主機,為虛擬機器中執行的應用程式提供快速中斷恢復和具有成本效益的高可用性。

vSphere HA 通過以下方式保護應用程式可用性:

1 通過在群集內的其他主機上重新啟動虛擬機器,防止伺服器故障

2 通過持續監控虛擬機器(通過vmware tools實現主機向虛擬機發送檢測訊號)並在檢測到故障時對其進行重新設定, 

防止應用程式故障

與其他群集解決方案不同,vSphere HA 提供基礎架構並使用該基礎架構保護所有工作負載:

a 無需在應用程式或虛擬機器內安裝特殊軟體。所有工作負載均受 vSphere HA 保護。配置 vSphere HA 之後,不需要執行操作即可保護新虛擬機器。它們會自動受到保護。(需在開機狀態下才受保護)

b 可以將 vSphere HA 與 vSphere Distributed Resource Scheduler (DRS即負載均衡) 結合使用以防止出現故障,以及在群集內的主機之間提供負載平衡。

與傳統的故障切換解決方案相比,vSphere HA 具有多個優勢:

最小化設定

設定 vSphere HA 群集之後,群集內的所有虛擬機器無需額外配置即可獲得故障切換支援。

減少了硬體成本和設定

虛擬機器可充當應用程式的移動容器,可在主機之間移動。管理員會避免在多臺計算機上進行重複配置。使用 vSphere HA 時,必須擁有足夠的資源來對要通過 vSphere HA 保護的主機數進行故障切換。但是,vCenter Server 系統會自動管理資源並配置群集。

提高了應用程式的可用性

虛擬機器內執行的任何應用程式的可用性變得更高。虛擬機器可以從硬體故障中恢復,通過監控和響應 VMwareTools 檢測訊號並重新啟動未響應的虛擬機器,可防止客戶機作業系統崩潰。

DRS和vMotion 整合

如果主機發生了故障,並且在其他主機上重新啟動了虛擬機器,則 DRS 會提出遷移建議或遷移虛擬機器以平衡資源分配。

vSphere HA 群集允許 ESXi 主機集合作為一個組協同工作,這些主機為虛擬機器提供的可用性級別比 ESXi 主機單獨提供的級別要高。

群集中的主機均會受到監控,如果發生故障,故障主機上的虛擬機器將在備用主機上重新啟動。

建立 vSphere HA 群集時,你可以選擇使用單個主機作為首選主機(master)以與 vCenter Server 通訊並監控其他主機、從屬主機(slave)及其虛擬機器的狀況。

如果為群集啟用了 vSphere HA,則所有活動主機(未處於待機或維護模式的主機或未斷開連線的主機)都將參與選舉以選擇群集的首選主機。掛載最多數量的資料儲存的主機在選舉中具有優勢。每個群集只存在一臺首選主機,其他所有主機都是從屬主機。如果首選主機出現故障、關機或從群集中移除,則會進行新的選舉。

集中的首選主機具有很多職責:

1 )監控從屬主機的狀況。如果從屬主機發生故障或無法訪問,首選主機將確定需要重新啟動的虛擬機器。

(監視的ESXi從主機宕機後,首選主機將決定將其身上執行的虛擬己重新執行在其他從主機上)

2 )監控所有受保護虛擬機器的電源狀況。如果有一臺虛擬機器出現故障,首選主機可確保重新啟動該虛擬機器。使用本地放置引擎,首選主機還可確定執行重新啟動的位置。

3 )首選主機管理群集主機和受保護的虛擬機器列表並對新增或刪除cluster內部的主機進行管理即首選主機維護著群集內的清單。

4 )首選主機管理被保護的虛擬機器清單,在使用者每次發起開關機操作時,更新這個清單。vcenter server會要求保護或不保護某些虛擬機器。即當虛擬機器開啟電源,則該虛擬機器要受保護,一旦主機出現故障就會在其他主機上重新啟動虛擬機器。當虛擬機器關閉電源,就沒有必要再保護它了。

5 )首選主機快取cluster的配置,master主機通知和提醒slave主機,cluster配置的修改。

6 )master主機發送心跳資訊給slave主機,讓slave主機知道master的存在。如果slave主機接收不到心跳資訊,則重新選舉出新的首選主機。

7 )master報告狀態資訊給vcenter,vcenter正常情況只與master主機通訊。

首選主機執行的功能之一是虛擬機器保護。虛擬機器受保護時,vSphere HA 可保證在其出現故障後嘗試重新開啟電源。首選主機在觀察到虛擬機器的電源狀況由關閉電源變為開啟電源時,會致力於保護虛擬機。如果發生故障切換,首選主機必須重新啟動所負責的受保護的虛擬機器。該職責已分配給在包含虛擬機器配置檔案的資料儲存上以獨佔方式鎖定系統定義檔案的首選主機。

群集中從主機的職責:

1 )slave主機監視本地執行的虛擬機器的狀態,把這些虛擬機器執行狀態的顯著變化發給master主機。

2 )slave主機監視master主機的健康狀態,如果master主機出現故障,slave主機參與master的選舉。

3 )slave運用vSphere HA 接入控制vSphere HA特性,這些特性不需要master的協調。這些特性包括VM Health Monitoring。

檢視master和slave的狀態:

主機故障型別和檢測:

vSphere HA 群集的首選主機負責檢測從屬主機的故障。根據檢測到的故障型別,在主機上執行的虛擬機器可能需要進行故障切換。

在 vSphere HA 群集中,檢測三種類型的主機故障:

1 )主機停止執行(即發生故障)。

2 )主機與網路隔離。

3 )主機失去與首選主機的網路連線。

vSphere HA使用管理網路和儲存裝置來聯絡。當master通過管理網路聯絡不到slave時,master就會使用儲存網路(heartbeat datastores)來檢查slave是否存活。

首選主機監控群集中從屬主機是通過交換網路檢測訊號來完成,此通訊通過管理網路來完成。當首選主機不能通過管理網路(如首選主機或從屬主機的網路接口出故障)從從屬主機接收這些檢測訊號時,它會在宣告該主機出現故障之前檢查主機活躍度。首選主機執行的活躍度檢查是要確定從屬主機是否在與資料儲存(即儲存網路)交換檢測訊號。如果此從屬主機與資料存交換檢測訊號,則首選主機會假定它處於某個網路分割槽網路隔離中,因此會繼續監控該主機及其虛擬機器。

網路分割槽:一個或多個slave通過管理網路聯絡不到master,即使它們的網路連線沒有問題,這種情況下,vSphere HA能夠了使用儲存網路來檢測分離的主機(上面的slaves)是否存活以及否要保護它們裡面的虛擬機器。

網路隔離:一個或多個slave丟失了所有的管理網路連線,這樣的slave既不能聯絡到master也不能聯絡到其他ESXi hosts。這種情況下,slave主機通過儲存網路來通知master,它已經是隔離狀態。

注意:如果你確保網路基礎結構具有足夠的冗餘度且至少有一個網路路徑始終可用,則主機網路隔離應該在極少數情況下才出現。

在 vSphere HA 群集發生管理網路故障時,該群集中的部分主機可能無法通過管理網路與其他主機進行通訊。一個群集中可能會出現多個分割槽。

已分割槽的群集會導致虛擬機器保護和群集管理功能降級

1 )虛擬機器保護。vCenter Server 允許虛擬機器開啟電源,但僅當虛擬機器與負責它的首選主機在相同的分割槽中執行時,才會對其進行保護。

2 )群集管理。vCenter Server 只能與群集中的部分主機進行通訊,且只能連線到一臺首選主機。因此,只有在解決分割槽之後,配置中影響 vSphere HA 的更改才能生效。此故障可能會導致其中一個分割槽在舊配置下操作,而另一個分割槽使用新的設定

總結:當 vSphere HA 群集中的首選主機無法通過管理網路與從屬主機通訊時,首選主機將使用資料儲存檢測訊號來確定從屬主機是否出現故障,是否位於網路分割槽中,或者是否與網路隔離。如果從屬主機已停止資料儲存檢測訊號,則認為該從屬主機出現故障,並且其虛擬機器已在別處重新啟動。

  vCenter Server 使用 vSphere HA 主機狀況報告主機是首選主機還是從屬主機。如果已啟用"HA 狀況"列,則會在 vSphere Client 中主機的摘要選項卡上和群集或資料中心的"主機列表"檢視中報告此狀況。HA 狀況"正在執行 (master)"表示主機作為 vSphere HA 首選主機。"已連線 (slave)"狀況表示主機作為 vSphere HA從屬主機。

注意:如果斷開主機與群集之間的連線,則所有向該主機註冊的虛擬機器均不受 vSphere HA 保護。

  vCenter Server 使用接入控制來確保群集內具有足夠的資源,以便提供故障切換保護。

1、"群集允許的主機故障數目"接入控制策略:

使用"群集允許的主機故障數目"接入控制策略,vSphere HA 允許指定數目的主機出現故障,同時可以確保群集內留有足夠的資源來對這些主機上的虛擬機器進行故障切換。

使用"群集允許的主機故障數目"策略,vSphere HA 以下列方式執行接入控制:

1 、插槽大小計算:

插槽大小由兩個元件(CPU 和記憶體)組成。

a .vSphere HA 計算 CPU 元件的方法是先獲取每臺已開啟電源虛擬機器的 CPU 預留,然後再選擇最大值。如果沒有為虛擬機器指定 CPU 預留,則系統會為其分配一個預設值 32 MHz。

b .vSphere HA 計算記憶體元件的方法是先獲取每臺已開啟電源虛擬機器的記憶體預留和記憶體開銷,然後再選擇最大值。記憶體預留沒有預設值。

2、使用插槽數目計算當前故障切換容量:

計算出插槽大小後,vSphere HA 會確定每臺主機中可用於虛擬機器的 CPU 和記憶體資源。通過使用 vSphere Client 直接連線到主機,然後導航至主機的資源選項卡,可以找到由 vSphere HA 使用的主機資源資料。然後,即可確定每臺主機可以支援的最大插槽數目。為確定此數目,請用主機的 CPU 資源數除以插槽大小的CPU 元件,然後將結果化整。對主機的記憶體資源數進行同樣的計算。然後,比較這兩個數字,較小的那個數字即為主機可以支援的插槽數。

通過確定可以發生故障並仍然有足夠插槽滿足所有已開啟電源虛擬機器要求的主機的數目(從最大值開始)來計算當前故障切換容量。

附錄:高階執行時資訊

如果選擇"群集允許的主機故障數目"接入控制策略,高階執行時資訊連結則會在 vSphere Client 中群集摘要選項卡上的 vSphere HA 區域中顯示。單擊此連結以顯示有關群集的下列資訊:

a 插槽大小。

b 群集內的插槽總數。

c 已使用的插槽數。分配給已開啟電源的虛擬機器的插槽數目。如果已使用高階選項定義插槽大小的上限,則此數目可以大於已開啟電源的虛擬機器的數目。這是因為有些虛擬機器會佔用多個插槽。

d 可用插槽數。可用於開啟群集內其他虛擬機器的電源的插槽數量。vSphere HA 保留故障切換所需的插槽數量。剩餘的插槽可用於開啟新虛擬機器電源。

e 故障切換插槽數。除已使用的插槽和可用插槽之外的插槽總數。

f 群集中已開啟電源虛擬機器的總數。

g 群集中的主機總數。

h 群集中的正常主機總數。處於連線狀態、未進入維護模式而且沒有 vSphere HA 錯誤的主機數目。

示例:使用"群集允許的主機故障數目"策略的接入控制

示例中展示了使用此接入控制策略計算和使用插槽大小的方式。對群集進行如下假設:

1 )群集包括三臺主機,每臺主機上可用的 CPU 和記憶體資源數各不相同。第一臺主機 (H1) 的可用 CPU 資源和可用記憶體分別為 9 GHz 和 9 GB,第二臺主機 (H2) 為 9 GHz 和 6 GB,而第三臺主機 (H3) 則為 6 GHz和 6 GB。

2 )群集記憶體在五個已開啟電源的虛擬機器,其 CPU 和記憶體要求各不相同。VM1 所需的 CPU 資源和記憶體分別為 2 GHz 和 1 GB,VM2 為 2 GHz 和 1 GB,VM3 為 1 GHz 和 2 GB,VM4 為 1 GHz 和 1 GB,VM5 則為 1 GHz 和 1 GB。

3 )"群集允許的主機故障數目"設定為 1。

1 )比較虛擬機器的 CPU 和記憶體要求,然後選擇最大值,從而計算出插槽大小。

最大 CPU 要求(由 VM1 和 VM2 共享)為 2 GHz,而最大記憶體要求(針對 VM3)為 2 GB。根據上述情況,插槽大小為 2 GHz CPU 和 2 GB 記憶體。

2 )由此可確定每臺主機可以支援的最大插槽數目。

H1 可以支援四個插槽。H2 可以支援三個插槽(取 9GHz/2GHz 和 6GB/2GB 中較小的一個),H3 也可以支援三個插槽。

3 )計算出當前故障切換容量。

最大的主機是 H1,如果它發生故障,群集內還有六個插槽,足夠供所有五個已開啟電源的虛擬機器使用。如果 H1 和 H2 都發生故障,群集內將僅剩下三個插槽,這是不夠用的。因此,當前故障切換容量為 1。

群集內可用插槽的數目為 1(H2 和 H3 上的六個插槽減去五個已使用的插槽)。

建議最好不使用"群集允許的主機故障數目"策略的接入控制,因為如果群集內部的主機硬體效能不一時,就不好確定故障數目了。除非群集內部的主機硬體效能一致時可以使用此策略。

2、"預留的群集資源的百分比"接入控制策略

可以將 vSphere HA 配置為通過預留特定百分比的群集 CPU 和記憶體資源來執行接入控制,用於從主機故障中進行恢復。使用"預留的群集資源的百分比"接入控制策略,vSphere HA 可確保預留 CPU 和記憶體資源總量的指定百分比以用於故障切換。

使用"預留的群集資源"策略,vSphere HA 可強制執行下列接入控制:

1 )計算群集內所有已開啟電源虛擬機器的總資源要求。

2 )計算可用於虛擬機器的主機資源總數。

3 )計算群集的"當前的 CPU 故障切換容量"和"當前的記憶體故障切換容量"。

4 )確定"當前的 CPU 故障切換容量"或"當前的記憶體故障切換容量"是否小於對應的"配置的故障切換容量"(由使用者提供)。如果是,則接入控制不允許執行此操作。

注意 "預留的群集資源的百分比"接入控制策略還會檢查群集中是否至少有兩個已啟用 vSphere HA 的主機(不包括正在進入維護模式的主機)。如果只有一個已啟用 vSphere HA 的主機,即使可以使用足夠的資源百分比,也不允許執行此操作。進行此次額外檢查的原因在於如果群集中只有一個主機,則 vSphere HA 無法進行故障切換。

  計算當前故障切換容量

  已開啟電源的虛擬機器的總資源要求由兩個元件組成,即 CPU 和記憶體。vSphere HA 將計算這些值。

1 CPU 元件值的計算方法是:加總已開啟電源虛擬機器的 CPU 預留。如果沒有為虛擬機器指定 CPU 預留,則系統會為其分配一個預設值 256 MHz。

2 記憶體元件值的計算方法是:加總每臺已開啟電源虛擬機器的記憶體預留(以及記憶體開銷)。

  計算出主機的 CPU 和記憶體資源總和,從而得出虛擬機器可使用的主機資源總數。

  先用主機 CPU 資源總數減去總 CPU 資源要求,然後再用這個結果除以主機 CPU 資源總數,從而計算出"當前的 CPU 故障切換容量"。"當前的記憶體故障切換容量"的計算方式與之相似。

示例:使用"預留的群集資源的百分比"策略的接入控制

示例中展示了使用此接入控制策略計算和使用"當前故障切換容量"的方式。對群集進行如下假設:

1 )群集包括三臺主機,每臺主機上可用的 CPU 和記憶體資源數各不相同。第一臺主機 (H1) 的可用 CPU 資源和可用記憶體分別為 9 GHz 和 9 GB,第二臺主機 (H2) 為 9 GHz 和 6 GB,而第三臺主機 (H3) 則為 6 GHz和 6 GB。

2 )群集記憶體在五個已開啟電源的虛擬機器,其 CPU 和記憶體要求各不相同。VM1 所需的 CPU 資源和記憶體分別為 2 GHz 和 1 GB,VM2 為 2 GHz 和 1 GB,VM3 為 1 GHz 和 2 GB,VM4 為 1 GHz 和 1 GB,VM5 則為 1 GHz 和 1 GB。

3 )"配置的故障切換容量"設定為 25%。

已開啟電源的虛擬機器的總資源要求為 7 GHz CPU 和 6 GB 記憶體。可用於虛擬機器的主機資源總數為 24 GHz CPU和 21 GB 記憶體。

根據上述情況,"當前的 CPU 故障切換容量"為 70% ((24GHz - 7GHz)/24GHz)。同樣,"當前的記憶體故障切換容量"為 71% ((21GB-6GB)/21GB)。

由於群集的"配置的故障切換容量"設定為 25%,因此仍然可使用 45% 的群集 CPU 資源總數和 46% 的群集記憶體資源開啟其他虛擬機器電源。

3、"指定故障切換主機"接入控制策略

在配置 vSphere HA 時可以將特定主機指定為故障切換主機。

如果使用"指定故障切換主機"接入控制策略,則在主機發生故障時,vSphere HA 將嘗試在指定的故障切換主機之一上重新啟動其虛擬機器

注意 如果使用"指定故障切換主機"接入控制策略,並指定多個故障切換主機,則 DRS 不會對故障切換主機進行負載平衡

vSphere Client 中群集的摘要選項卡的 vSphere HA 區域內顯示了"當前故障切換主機"。每個主機旁邊的狀態圖示可以是綠色、黃色或紅色。

1 )綠色。主機處於連線狀態、未進入維護模式且沒有 vSphere HA 錯誤。主機上沒有任何已開啟電源的虛擬機器。

2 )黃色。主機處於連線狀態、未進入維護模式且沒有 vSphere HA 錯誤。但是,主機上駐留了已開啟電源的虛擬機器。

3 )紅色。主機已斷開連線、處於維護模式或存在 vSphere HA 錯誤。

vSphere HA 群集的要求:

在設定 vSphere HA 群集之前,應滿足以下要求:

1 )所有主機必須獲得 vSphere HA 許可。

2 )群集中至少需要有兩臺主機。

3 )需要為所有主機配置靜態 IP 地址。

4 )所有主機應該至少有一個公共的管理網路,最佳做法則至少需要有兩個。

5 )版本 4.0 及更高版本的 ESXi 主機 - 已選中了複選框的 VMkernel 網路。

6 )為了確保任何虛擬機器都可以在群集內的任何主機上執行,所有主機都應該可以訪問相同的虛擬機器網路和資料儲存(至少兩個)。同樣,虛擬機器必須位於共享而非本地儲存器上,否則在主機出現故障時它們將無法進行故障切換。

注意 :vSphere HA 使用資料儲存訊號檢測來區分已分割槽的主機、已隔離的主機和出現故障的主機。相應地,必須確保為 vSphere HA 預留的資料儲存始終立即可用。

7 )為了使虛擬機器監控工作,必須安裝 VMware Tools。

總結:vSphere HA 群集的要求和Vmotion的要要求類似。

建立 vSphere HA 群集:

可以為群集啟用 vSphere HA。啟用了 vSphere HA 的群集是 Fault Tolerance 的必備條件。VMware 建議你首先建立空群集。在規劃好群集的資源和網路架構之後,可以使用 vSphere Client 將主機新增到群集,並指定群集的 vSphere HA 設定。

步驟

1 )選擇"主機和群集"檢視。

2 )右鍵單擊清單樹中的資料中心,然後單擊新建群集。

3 )完成新建群集嚮導。

此時不要啟用 vSphere HA(或 DRS)。

4 )單擊完成,關閉嚮導並建立群集。

此時建立了一個空群集。

5 )根據你的群集資源和網路架構計劃,使用 vSphere Client 將主機新增到群集。

6 )右鍵單擊群集,然後單擊編輯設定。

在群集的"設定"對話方塊中,你可以修改群集的 vSphere HA(和其他)設定。

7 )在"群集功能"頁上,選擇開啟 vSphere HA。

8 )根據需要為群集配置 vSphere HA 設定。

a 主機監控狀態

b 接入控制

c 虛擬機器選項

d 虛擬機器監控

e 資料儲存檢測訊號

9 )單擊確定關閉群集的"設定"對話方塊。

1、群集功能

新建群集嚮導中的第一個面板可用於為群集指定基本選項。

在該面板中,可以指定群集名稱並選擇一個或兩個群集功能(都選)

名稱指定群集的名稱。該名稱顯示在 vSphere Client 清單面板中。必須指定一個名稱,才能繼續建立群集。

開啟 vSphere HA 如果選中此複選框,則在主機出現故障時,虛擬機器將在群集內的其他主機上重新啟動。要在群集內的任何虛擬機器上啟用 vSphere Fault Tolerance,必須開啟vSphere HA。

開啟 vSphere DRS 如果選中此複選框,則 DRS 將平衡整個群集的虛擬機器負載。即使虛擬機器受 HA保護,DRS 也會放置並遷移虛擬機器。

2、主機監控狀態

建立群集後,請啟用主機監控以便 vSphere HA 可以監控由群集內每個主機上的 vSphere HA 代理髮送的檢測訊號。

如果選擇啟用主機監控,則會檢查群集內的每臺主機以確保其正在執行。如果某臺主機出現故障,則會在另一臺主機上重新啟動虛擬機器。主機監控還是 vSphere Fault Tolerance 恢復程序正常執行所必需的。

注意:如果需要執行可能會觸發主機隔離響應的網路維護,VMware 建議首先禁用主機監控以掛起 vSphereHA。完成維護後,請重新啟用"主機監控"。

3、啟用或禁用接入控制

通過新建群集嚮導,可以為 vSphere HA 群集啟用或禁用接入控制,並選擇有關其執行方式的策略。可以為 vSphere HA 群集啟用或禁用接入控制。

啟用:禁止違反可用性限制的開啟虛擬機器電源操作啟用接入控制並執行可用性限制,同時保留故障切換容量。不允許在虛擬機器上執行違反可用性限制的任何操作。

禁用:允許違反可用性限制的開啟虛擬機器電源操作

禁用接入控制。例如,即使開啟虛擬機器電源會造成故障切換容量不足,仍然可執行該操作。執行該操作時,不會顯示任何警告,而且群集不會變為紅色。如果群集的故障切換容量不足,vSphere HA 仍可以執行故障切換,並使用"虛擬機器重新啟動優先順序"設定來確定要先開啟電源的虛擬機器。

如果啟用了接入控制,vSphere HA 會提供三個強制接入控制的策略。

1 )群集允許的主機故障數量

2 )作為故障切換空間容量保留的群集資源的百分比

3 )指定故障切換主機

4 )虛擬機器選項

預設虛擬機器設定控制虛擬機器的重新啟動順序(虛擬機器重新啟動優先順序)以及在主機之間失去網路連線時 vSphereHA 的響應方式(主機隔離響應)。

這些設定適用於主機發生故障或主機隔離時群集內的所有虛擬機器。此外,也可以為特定虛擬機器配置異常。

擬機重新啟動優先順序設定:

虛擬機器重新啟動優先順序確定主機發生故障後虛擬機器的重新啟動相對順序。這些虛擬機器在新主機上按順序重新啟動,首先啟動優先順序最高的虛擬機器,然後是那些低優先順序的虛擬機器,直到重新啟動所有虛擬機器或者沒有更多的可用群集資源為止。如果主機故障數目超過了接入控制所允許的數目,則系統可能會等到有更多資源可用時再重新啟動優先順序較低的虛擬機器。如果指定了一個故障切換主機,則虛擬機器將在該故障切換主機上重新啟動。

此設定的值為:已禁用、低、中等(預設)和高。如果選擇"已禁用",則會為虛擬機器禁用 vSphere HA,這意味著當其主機出現故障時不會在其他 ESXi 主機上重新啟動虛擬機器。"已禁用"設定不會對虛擬機器監控造成影響,這意味著當正常執行的主機上的某個虛擬機器出現故障時,會在同一主機上重置該虛擬機器。你可更改各個虛擬機器的這種設定。

虛擬機器的重新啟動優先順序設定因使用者需求而有所不同。VMware 建議為提供最重要服務的虛擬機器分配較高的重新啟動優先順序。

主機隔離響應設定:

主機隔離響應確定當 vSphere HA 群集內的某個主機失去其管理網路連線但仍繼續執行時出現的情況。

主機會執行其隔離響應。響應包括:保持開啟電源(預設值)、關閉電源和關機。還可以為各個虛擬機器自定義此屬性。

要使用"關機"設定,必須在虛擬機器的客戶機作業系統中安裝 VMware Tools。將虛擬機器關機的優點在於可以保留其狀況。關機操作優於關閉虛擬機器電源操作,關閉虛擬機器電源不會將最近的更改重新整理到磁碟中,也不會提交事務。

5、虛擬機器和應用程式監控

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

(選擇主機和程式監測)

啟用虛擬機器監控後,虛擬機器監控服務(使用 VMware Tools)將通過檢查正在客戶機內執行的 VMware Tools程序的常規檢測訊號和 I/O 活動來評估群集內的每個虛擬機器是否正在執行。如果沒有收到檢測訊號或 I/O 活動,則很有可能是客戶機作業系統出現故障,或未分配給 VMware Tools 用來完成任務的時間。在這種情況下,虛擬機器監控服務會先確定虛擬機器已發生故障,然後決定重新引導虛擬機器以還原服務。

你可以配置監控敏感度的級別。高敏感度監控可以更快得出已發生故障的結論。然而,如果受監控的虛擬機器或應用程式實際上仍在執行,但由於資源限制等因素導致未收到檢測訊號,高敏感度監控可能會錯誤地認為此虛擬機發生了故障。低敏感度監控會延長實際故障和虛擬機器重置之間服務中斷的時間。請選擇一個有效折衷滿足需求的選項。

二、vSphere Fault Tolerance 提供連續可用性

vSphere HA 通過在主機出現故障時重新啟動虛擬機器來為虛擬機器提供基本級別的保護。因此它的缺點就是存在宕機時間,可能是幾分鐘也可能是十幾分鍾。

可以為虛擬機器啟用 vSphere Fault Tolerance,以獲得比 vSphere HA 所提供的級別更高的可用性和資料保護,從而確保業務連續性。

vSphere Fault Tolerance 通過建立和維護與主虛擬機器相同,且可在發生故障切換時隨時替換主虛擬機器的輔助虛擬機器,來確保虛擬機器的連續可用性。(系統會為啟用FT功能的虛擬機器建立輔助虛擬機器。注:ESXi主機資源要充足)

要獲取 Fault Tolerance 的最佳結果,應先熟悉其工作原理、如何為群集和虛擬機器啟用它及其最佳使用方法。

可以為大多數任務關鍵虛擬機器啟用 Fault Tolerance。並會建立一個重複虛擬機器(稱為輔助虛擬機器),該虛擬機器會以虛擬鎖步(vLockstep)方式隨主虛擬機器一起執行。VMware vLockstep 可捕獲主虛擬機器上發生的輸入和事件,並將這些輸入和事件傳送到正在另一主機上執行的輔助虛擬機器。使用此資訊,輔助虛擬機器的執行將等同於主虛擬機器的執行。因為輔助虛擬機器與主虛擬機器一起以虛擬鎖步方式執行,所以它可以無中斷地接管任何點處的執行,從而提供容錯保護。

如下圖所示:Fault Tolerance 對中的主虛擬機器和輔助虛擬機器

主虛擬機器和輔助虛擬機器可持續交換檢測訊號。此交換使得虛擬機器對中的虛擬機器能夠監控彼此的狀態,以確保持續提供 Fault Tolerance 保護。如果執行主虛擬機器的主機發生故障,系統將會執行透明故障切換,此時會立即啟用輔助虛擬機器以替換主虛擬機器,並將啟動新的輔助虛擬機器,同時在幾秒鐘內重新建立 Fault Tolerance 冗餘。如果執行輔助虛擬機器的主機發生故障,則該主機也會立即被替換。在任一情況下,使用者都不會遭遇服務中斷和資料丟失的情況。

主虛擬機器及其輔助副本不允許在相同主機上執行。此限制可確保主機故障而導致兩個虛擬機器都丟失。

Fault Tolerance不支援的 vSphere 功能

容錯虛擬機器不支援以下 vSphere 功能。

1 )快照。在虛擬機器上啟用 Fault Tolerance 前,必須移除快照。此外,不可能對已啟用 Fault Tolerance的虛擬機器執行快照。

2 )Storage vMotion不能為已啟用 Fault Tolerance 的虛擬機器呼叫 Storage vMotion。要遷移儲存器,應當先暫時關閉 Fault Tolerance,然後再執行 Storage vMotion 操作。在完成遷移之後,可以重新開啟 Fault Tolerance。

3 )連結克隆。不能在為連結克隆的虛擬機器上啟用 Fault Tolerance,也不能從啟用了 Fault Tolerance 的虛擬機器建立連結克隆。

4 )虛擬機器備份。不能使用 Storage API for Data Protection、VMware Data Recovery 或需要使用虛擬機器快照(如 ESXi 所執行的那樣)的類似備份產品來備份啟用了 FT 的虛擬機器。要以這種方式備份容錯虛擬機器,首先必須禁用 FT,然後在執行備份後重新啟用 FT。基於儲存陣列的快照不影響 FT。

將 Fault Tolerance 功能與 DRS 配合使用:

啟用 Enhanced vMotion Compatibility (EVC) 功能時,可以將 vSphere Fault Tolerance 與 vSphere Distributed Resource Scheduler (DRS) 配合使用。此過程不但可使容錯虛擬機器受益於更好的初始放置位置,還可以將其納入群集的負載平衡計算中。

當群集啟用了 EVC 時,DRS 將為容錯虛擬機器提出初始放置位置建議、在重新平衡群集負載期間移動這些虛擬機器,並允許你為主虛擬機器分配 DRS 自動化級別(輔助虛擬機器總是採用與其關聯的主虛擬機器相同的設定。)

在初始放置或負載平衡期間,DRS 放置在主機上的主虛擬機器或輔助虛擬機器的數目不會超過一個固定的數目。此限制由高階選項 das.maxftvmsperhost 控制。此選項的預設值為 4。但是,如果將此選項設定為 0,DRS 將忽略此限制。

Fault Tolerance要求:

以下是使用 vSphere Fault Tolerance 之前需要了解的群集、主機和虛擬機器要求。

Fault Tolerance 的群集要求:

在使用 Fault Tolerance 之前,必須滿足以下群集要求。

1)