本節提供 SD-WAN Edge 叢集化功能運作方式的深入概觀。

下列的重要概念說明 SD-WAN Edge 叢集化功能:

  • Edge 叢集化可用於中樞上,如下所述:
    • 可讓中樞的通道容量高於作為中樞之個別 Edge 所能提供的容量。
    • 將遠端支點 Edge 散佈於多個中樞間,並減少任何可能發生事件所產生的影響。
  • 叢集評分是系統整體使用量的數學計算,如下所示:
    三項使用量測量因素分別為 CPU 使用率、記憶體使用量和通道容量。
    • 每個使用量測量值都會以百分比表示,最大值為 100%。
    • 通道容量以指定硬體型號或虛擬 Edge 組態的額定容量為基礎。
    • 三個使用量百分比會在加總後平均計算,以得出整數的叢集評分 (1-100)。
    • 雖然未直接考量總流量,CPU 和記憶體使用量仍會間接反映指定中樞上的總流量和流量大小。
    • 例如,在 Edge 2000 上:
      • CPU 使用率 = 20%
      • 記憶體使用量 = 30%
      • 已連線的通道數 = 600 (容量為 6000) = 10%
      • 叢集評分:(20 + 30 + 10)/3 = 20
  • 大於 70 的叢集評分會被視為「超出容量」。
  • 「邏輯識別碼」是一種 128 位元的 UUID,可唯一識別 VMware 網路內的元素。
    • 例如,每個 Edge 以一個邏輯識別碼表示,而每個叢集則以另一個邏輯識別碼表示。
    • 當使用者提供 Edge 和叢集名稱時,邏輯識別碼必定是唯一的,並且用於元素的內部識別。
  • 依預設,負載會平均分配到中樞之間。因此,屬於叢集一部分的所有 Edge 都必須有著相同的型號和容量。
每個叢集成員將具有自己的 WAN 和 LAN 介面的 IP 定址。中樞叢集中的所有 VMware SD-WAN Edge 都需要在 LAN 端上對第 3 層裝置執行動態路由通訊協定 (例如 eBGP),以及為每個叢集成員提供唯一的自發系統編號 (Autonomous System Number, ASN)。在叢集 LAN 端上進行動態路由,可確保從 DC 到特定支點站台的流量會透過適當的 Edge 叢集成員進行路由。
重要: 叢集中的中樞 Edge 不會透過通道或路由通訊協定彼此連線或通訊。它們作為獨立 Edge 來執行資料平面功能。當分支 Edge 連線至叢集中的不同中樞 Edge 時,它們需要靠指向核心交換器的 LAN 端 BGP 對等來處理分支到分支的流量。

VMware SD-WAN 閘道如何追蹤 Edge 叢集

中樞新增至 VMware SD-WAN 叢集後,中樞會拆解其已指派之所有閘道的通道並加以重建,並且向每個閘道指出中樞已指派給叢集,同時提供叢集邏輯識別碼。

對於叢集,SD-WAN 閘道將追蹤:
  • 邏輯識別碼
  • 名稱
  • 是否已啟用自動重新平衡
  • 叢集成員的中樞物件清單

對於叢集中的每個中樞物件,閘道會追蹤:

  • 邏輯識別碼
  • 名稱
  • 一組統計資料 (透過從中樞傳送至每個已指派閘道的定期訊息每 30 秒更新一次),其中包括:
    • 中樞目前的 CPU 使用率
    • 中樞目前的記憶體使用量
    • 中樞目前的通道計數
    • 中樞的目前 BGP 路由計數
  • 根據上述公式計算的目前叢集評分。

當閘道未收到來自中樞 Edge 的任何封包達七秒以上,便會從中樞物件清單中移除中樞。

如何將 Edge 指派給叢集中的特定中樞?

在傳統的中樞和支點拓撲中,SD-WAN Orchestrator 會為 Edge 提供其必須連線之中樞的邏輯識別碼。Edge 會要求其已指派的閘道提供該中樞邏輯識別碼的連線資訊 (即 IP 位址和連接埠),以供 Edge 用來連線至該中樞。

從 Edge 的角度來看,此行為與連線至叢集時相同。Orchestrator 會通知 Edge 其應連線之中樞的邏輯識別碼為叢集邏輯識別碼,而非個別中樞邏輯識別碼。Edge 會遵循將中樞連線要求傳送至閘道的相同程序,並預期回應中的連線資訊。

此時,基本中樞行為有兩項分歧:

  • 分歧一:閘道必須選擇要指派的中樞。
  • 分歧二:基於分歧一,Edge 可能會從不同的閘道取得不同的指派。

分歧一最早的解決方式,是使用叢集評分將叢集中負載最輕的中樞指派給 Edge。這在理論上是可行的,但在實際環境中,這並非理想的解決方案,因為一般的重新指派事件可能涉及成千上百個 Edge,且叢集評分每 30 秒才會更新一次。換言之,如果中樞 1 的叢集評分為 20,中樞 2 的叢集評分為 21,則在 30 秒內,所有 Edge 都將選擇中樞 1,此時該中樞可能會超載,並觸發進一步的重新指派。

因此,閘道會先嘗試進行平均數學分配,而不考量叢集評分。Edge 邏輯識別碼 (由 Orchestrator 上的安全亂數產生器所產生) 將會有平均分配的值 (若提供足夠的 Edge)。這表示,使用邏輯識別碼可以計算平均分配。

  • Edge 邏輯識別碼模數叢集中的中樞數目 = 已指派的中樞指數
  • 例如:
    • 邏輯識別碼結尾分別為 1、2、3、4 的四個 Edge
    • 具有 2 個中樞的叢集
    • 1 % 2 = 1、2 % 2 = 0、3 % 2 = 1、4 % 2 = 0 (附註:「%」用來表示模數運算子)
    • 為 Edge 2 和 4 指派的中樞指數 0
    • 為 Edge 1 和 3 指派的中樞指數 1

    如此一致性優於循環配置資源類型指派,因為這表示 Edge 每次都會傾向於被指派相同的中樞,進而使指派和疑難排解更容易預測。

備註: 中樞重新啟動 (例如,因維護或失敗) 時,將會與閘道中斷連線並從叢集中移除。這表示 Edge 在所有 Edge 重新啟動後一律會平均分配 (基於前述的邏輯),但在任何導致其中斷連線的中樞事件發生後將不平均地分配。

當中樞超過其允許的通道容量上限時,會發生什麼情況?

Edge 指派邏輯會嘗試將 Edge 平均分配到所有可用的中樞之間。但在中樞上發生某事件 (例如重新啟動) 之後,Edge 分配將不再平均。

備註: 一般而言,閘道會在初始指派時嘗試將 Edge 平均分配到中樞之間,不均勻的分配並不會被視為無效狀態。如果指派不均勻,但沒有個別中樞超過 70% 的通道容量,則會將指派視為有效。

由於中樞上的此類事件 (或將其他 Edge 新增至網路),叢集可能會達到個別中樞已超過其允許通道容量的 70% 的臨界點。如果發生此情況,且至少另有一個中樞的通道容量低於 70%,則無論 Orchestrator 上是否啟用重新平衡,都會自動執行平均的重新分配。由於使用邏輯識別碼可預期數學指派,多數的 Edge 會保留其現有的指派,且由於容錯移轉或先前的使用量重新平衡而已指派給其他中樞的 Edge 將會重新平衡,以確保叢集會自動恢復為平均分配。

當中樞超過其允許的叢集評分上限時,會發生什麼情況?

不同於可直接對其操作的通道百分比 (容量的直接量值),叢集評分每 30 秒才會更新一次,且在進行 Edge 重新指派後,閘道無法自動計算調整的叢集評分。在叢集組態中會提供自動重新平衡參數,以指出閘道是否應視需要動態嘗試移轉每個中樞的 Edge 負載。

如果自動重新平衡已停用,而中樞的叢集評分超過 70 (但通道容量未超過 70%),則不會採取任何動作。

如果已啟用自動重新平衡,且有一或多個中樞的叢集評分超過 70,則閘道會每分鐘將一個 Edge 重新指派給目前叢集評分最低的中樞,直到所有中樞的評分皆低於 70 或不再可能有重新指派為止。

備註: 依預設,會停用自動重新平衡。

當兩個 VMware SD-WAN 閘道提供不同的中樞指派時,會發生什麼情況?

如同分散式控制平面的本質,每個閘道對於叢集指派會進行個別判斷。在多數情況下,閘道會使用相同的數學公式,因而達成所有 Edge 的相同指派。不過,在依據叢集評分進行重新平衡的類似情況下,即無法保證達成。

如果 Edge 目前未連線至叢集中的中樞,則它將接受任何回應閘道所提供的指派。這可確保在有些閘道關閉、有些閘道啟動的情況下,Edge 絕不會未獲指派。

如果 Edge 連線至叢集中的中樞,並且收到一則訊息指出應選擇替代中樞,此訊息將會以「閘道喜好設定」的順序進行處理。例如,如果超級閘道已連線,則 Edge 將只會接受來自超級閘道的重新指派。系統將會忽略其他閘道要求的衝突指派。同樣地,如果超級閘道未連線,則 Edge 將只會接受來自替代超級閘道的重新指派。對於合作夥伴閘道 (其中不存在超級閘道),閘道喜好設定會取決於針對該特定 Edge 所設定的合作夥伴閘道順序。
備註: 當使用合作夥伴閘道時,必須將相同的閘道指派給叢集中的中樞以及支點 Edge,否則,可能會出現支點 Edge 無法收到中樞指派的情況,因為支點 Edge 所連線的閘道也未連線至叢集中的中樞。

當 VMware SD-WAN 閘道關閉時會發生什麼情況?

當 SD-WAN 閘道關閉時,如果最慣用的閘道就是已關閉的閘道,而第二慣用的閘道提供了不同的指派,則可以重新指派 Edge。例如,超級閘道將中樞 A 指派給此 Edge,而替代超級閘道將中樞 B 指派給相同的 Edge。

超級閘道的關閉將會導致 Edge 容錯移轉至中樞 B,因為替代超級閘道現在用於連線資訊最為慣用的閘道。

當超級閘道復原時,Edge 會再次從此閘道要求中樞指派。為了避免 Edge 在上述案例中再次切換回中樞 A,中樞指派要求會包含目前已指派的中樞 (如果有的話)。當閘道處理指派要求時,如果 Edge 目前被指派了叢集中的中樞,而該中樞的叢集評分低於 70,則該閘道會更新其本機指派以符合現有的指派,而不使用其指派邏輯。這可確保超級閘道在復原後將會指派目前已連線的中樞,並防止其已指派的 Edge 進行不必要的容錯移轉。

如果叢集中的中樞失去其動態路由,會發生什麼情況?

如前所述,中樞每 30 秒會向 SD-WAN 閘道報告它們透過 BGP 學習的動態路由數。如果叢集中僅有一個中樞的路由遺失,則可能是因為這些路由錯誤撤回或 BGP 芳鄰關係失敗,因此 SD WAN 閘道會將支點 Edge 容錯移轉至叢集中具有完整路由表的另一個中樞。

由於更新每 30 秒傳送一次,因此路由計數會以更新傳送至 SD-WAN 閘道的時間點為基礎。SD-WAN 閘道每 60 秒會執行一次重新平衡邏輯,這表示萬一完全失去某個 LAN 端 BGP 芳鄰時,使用者可預期容錯移轉會花費 30-60 秒。為了確保所有中樞在此情況下都有機會再次更新閘道,我們將重新平衡限制為最快每 120 秒執行一次。這表示在連續失敗第二次後,使用者可預期容錯移轉會花費 120 秒。

如何在叢集中樞上設定路由?

由於閘道可以指示支點連線至叢集中的任何成員中樞,因此,應將路由組態鏡像到所有中樞上。例如,如果支點必須連線至中樞後面的 BGP 首碼 192.168.2.1,則叢集中的所有中樞都應通告 192.168.2.1 以及完全相同的路由屬性。

叢集部署中應使用 BGP 上行社群標籤。設定叢集節點,以便將路由重新分配至 BGP 對等時,設定上行社群標籤。

如果叢集中的中樞失敗,會發生什麼情況?

SD-WAN 閘道會先等待通道被宣告為無作用 (7 秒),之後再容錯移轉支點 Edge。這表示當 SD-WAN 中樞或及其相關聯的所有 WAN 連結失敗時,使用者可預期容錯移轉將會花費 7-10 秒 (取決於 RTT)。