使用插槽原則選項,vSphere HA 許可控制可確保指定數目的主機可以發生故障,同時可確保叢集內留有足夠的資源來對這些主機上的所有虛擬機器進行容錯移轉。

使用插槽原則,vSphere HA 透過下列方式執行許可控制:

  1. 計算插槽大小。

    插槽是記憶體和 CPU 資源的邏輯表示。依預設,會調整插槽的大小來滿足叢集中任何已開啟電源之虛擬機器的需求。

  2. 判定叢集內每台主機可以擁有的插槽數目。
  3. 判定叢集的目前容錯移轉容量。

    這是可以發生故障並仍然有足夠插槽可滿足所有已開啟電源之虛擬機器的主機數目。

  4. 判定 [目前的容錯移轉容量] 是否小於 [設定的容錯移轉容量] (由使用者提供)。

    如果是,則許可控制不允許執行此作業。

備註: 您可以從 vSphere Client 中 vSphere HA 設定的許可控制區段,設定 CPU 和記憶體的特定插槽大小。

插槽大小計算

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

  • vSphere HA 計算 CPU 元件的方法是,先取得每台已開啟電源之虛擬機器的 CPU 保留區,然後再選取最大值。如果沒有為虛擬機器指定 CPU 保留區,則系統會為其指派一個預設值 32 MHz。您可以使用 das.vmcpuminmhz 進階選項來變更該值。)
  • vSphere HA 計算記憶體元件的方法是先取得每台已開啟電源之虛擬機器的記憶體保留區和記憶體額外負荷,然後再選取最大值。記憶體保留區沒有預設值。

如果叢集內虛擬機器的保留區值大小不一致,則會影響插槽大小的計算。為避免此類情形發生,您可以分別使用 das.slotcpuinmhz das.slotmeminmb 來指定插槽大小的 CPU 或記憶體元件上限。請參閱vSphere HA 進階選項

您也可以透過檢視需要多個插槽的虛擬機器數,判定叢集中資源片段的風險。可以從 vSphere Client 中 vSphere HA 設定的許可控制區段對此進行計算。如果已使用進階選項指定固定插槽大小或插槽大小上限,則虛擬機器可能需要多個插槽。

使用插槽計算目前的容錯移轉容量

計算出插槽大小後,vSphere HA 會判定每台主機中可用於虛擬機器的 CPU 和記憶體資源。這些值包含在主機的根資源集區中,而不是主機的總實體資源中。可以在 vSphere Client 中主機的摘要索引標籤上尋找 vSphere HA 所用主機的資源資料。如果叢集中的所有主機均相同,則可以用叢集層級指數除以主機的數目來取得此資料。不包含用於虛擬化目的資源。只有處於連線狀態、未處於維護模式且沒有任何 vSphere HA 錯誤的主機才列入計算範疇。

然後,即可判定每台主機可以支援的插槽數目上限。為判定此數目,請用主機的 CPU 資源數除以插槽大小的 CPU 元件,然後將結果四捨五入。對主機的記憶體資源數進行同樣的計算。然後,比較這兩個數字,較小的那個數字即為主機可以支援的插槽數。

透過判定可以發生故障並仍然有足夠插槽滿足所有已開啟電源之虛擬機器需求的主機的數目 (從最大值開始) 來計算目前的容錯移轉容量。

使用插槽原則的許可控制

範例中顯示了使用此許可控制原則計算和使用插槽大小的方式。對叢集進行如下假設:

  • 叢集包括三台主機,每台主機上可用的 CPU 和記憶體資源數各不相同。第一台主機 (H1) 的可用 CPU 資源和可用記憶體分別為 9 GHz 和 9 GB,第二台主機 (H2) 為 9 GHz 和 6 GB,而第三台主機 (H3) 則為 6 GHz 和 6 GB。
  • 叢集中有五個已開啟電源的虛擬機器,其 CPU 和記憶體需求各不相同。虛擬機器 1 所需的 CPU 資源和記憶體分別為 2 GHz 和 1 GB,虛擬機器 2 為 2 GHz 和 1 GB,虛擬機器 3 為 1 GHz 和 2 GB,虛擬機器 4 為 1 GHz 和 1 GB,虛擬機器 5 則為 1 GHz 和 1 GB。
  • 將 [叢集容許的主機故障次數] 設定為 1。
圖 1. 使用 [叢集容許的主機故障次數] 原則的許可控制範例
此處是使用 [叢集容許的主機故障次數] 原則的許可控制範例。
  1. 比較虛擬機器的 CPU 和記憶體需求,然後選取最大值,從而計算出插槽大小。

    最大 CPU 需求 (由虛擬機器 1 和虛擬機器 2 共用) 為 2 GHz,而最大記憶體需求 (針對虛擬機器 3) 為 2 GB。根據上述情況,插槽大小為 2 GHz CPU 和 2 GB 記憶體。

  2. 由此可判定每台主機可以支援的插槽數目上限。

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

  3. 計算出目前的容錯移轉容量。

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

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