vSphere IaaS control plane 環境中,主管 可以使用 vSphere 網路堆疊或 NSX,以提供與 主管 控制平面虛擬機器、服務和工作負載的連線。

如果 主管 設定了 vSphere 網路堆疊,則 主管 中的所有主機都將連線到 vDS,以提供與工作負載和 主管 控制平面虛擬機器的連線。使用 vSphere 網路堆疊的 主管 需要 vCenter Server 管理網路上具有負載平衡器,以提供與 DevOps 使用者和外部服務的連線。

設定了 NSX主管 使用該解決方案的以軟體為基礎的網路以及 NSX Edge 負載平衡器或 NSX Advanced Load Balancer,以提供與外部服務和 DevOps 使用者的連線。如果您的環境滿足以下條件,則可以在 NSX 上設定 NSX Advanced Load Balancer
  • NSX 版本為 4.1.1 或更新版本。
  • NSX Advanced Load Balancer 版本為具有 Enterprise 授權的 22.1.4 或更新版本。
  • 您計劃設定的 NSX Advanced Load Balancer Controller 已在 NSX 上登錄。
  • 尚未在 主管 上設定 NSX 負載平衡器。

使用 VDS 的 主管 網路

在由作為網路堆疊的 VDS 支援的 主管 中,支援 主管 的 vSphere 叢集中的所有主機必須連線到相同的 VDS。主管 使用分散式連接埠群組作為 Kubernetes 工作負載和控制平面流量的工作負載網路。將工作負載網路指派給 主管 中的命名空間。

您可以使用一或多個分散式連接埠群組作為工作負載網路,具體取決於您為 主管 實作的拓撲。提供 主管 控制平面虛擬機器連線的網路稱為主要工作負載網路。您可以將此網路指派給 主管 上的所有命名空間,也可以對每個命名空間使用不同的網路。Tanzu Kubernetes Grid 叢集將連線至指派給叢集所在命名空間的工作負載網路。

VDS 支援的 主管 使用負載平衡器來提供與 DevOps 使用者和外部服務的連線。您可以使用 NSX Advanced Load Balancer 或 HAProxy 負載平衡器。

如需詳細資訊,請參閱安裝和設定 NSX Advanced Load Balancer安裝和設定 HAProxy 負載平衡器

在單一叢集 主管 設定中,只有一個 vSphere 叢集支援 主管。叢集中的所有主機都必須連線到 VDS。

圖 1. 使用 VDS 的單一叢集 主管 網路

設定了 VDS 網路堆疊的 主管 的網路架構。

在三區域 主管 中,在三個 vSphere 區域上部署 主管,每個區域都將對應至 vSphere 叢集。這些 vSphere 叢集中的所有主機都必須連線到相同的 VDS。所有實體伺服器都必須連線到 L2 裝置。為命名空間設定的工作負載網路跨越所有三個 vSphere 區域。

圖 2. 使用 VDS 的三區域 主管 網路

在三個 vSphere 區域上執行的 主管 的網路架構,其中每個工作負載網路均跨越所有三個區域。

使用 NSX 進行 主管 網路連線

NSX 提供 主管 內的物件和外部網路的網路連線。與構成叢集的 ESXi 主機的連線是由標準 vSphere 網路處理。

您也可以透過使用現有的 NSX 部署或部署 NSX 的新執行個體,來手動設定 主管 網路。

如需詳細資訊,請參閱〈安裝和設定 NSX for vSphere IaaS control plane

圖 3. 使用 NSX 進行 主管 網路連線
設定了 NSX 網路堆疊的 主管 的網路架構。
  • NSX Container Plugin (NCP) 提供 NSX 和 Kubernetes 之間的整合。NCP 的主要元件會在容器中執行,並與 NSX Manager 和 Kubernetes 控制平面進行通訊。NCP 會監控容器和其他資源的變更,並透過呼叫 NSX API 來管理容器的網路資源,例如邏輯連接埠、區段、路由器和安全群組。

    依預設,NCP 會為系統命名空間建立一個共用的第 1 層閘道,並為每個命名空間建立第 1 層閘道和負載平衡器。第 1 層閘道會連線至第 0 層閘道和預設區段。

    系統命名空間是指對 主管Tanzu Kubernetes Grid 叢集正常運作非常重要的核心元件所使用的命名空間。包括第 1 層閘道、負載平衡器和 SNAT IP 的共用網路資源會分組到系統命名空間中。

  • NSX Edge 提供從外部網路到 主管 物件的連線。NSX Edge 叢集具有負載平衡器,可為位於 主管 控制平面虛擬機器上的 Kubernetes API 伺服器以及必須發佈並可從 主管 外部存取的任何應用程式提供備援。
  • 第 0 層閘道會與 NSX Edge 叢集相關聯,以提供對外部網路的路由。上行介面使用動態路由通訊協定、BGP 或靜態路由。
  • 每個 vSphere 命名空間 各有不同的網路和一組由命名空間內的應用程式共用的網路資源,例如,第 1 層閘道、負載平衡器服務和 SNAT IP 位址。
  • 在相同命名空間中的 vSphere 網繭、一般虛擬機器或 Tanzu Kubernetes Grid 叢集中執行的工作負載,將共用同一個 SNAT IP 以進行南北向連線。
  • vSphere 網繭Tanzu Kubernetes Grid 叢集中執行的工作負載將具有預設防火牆實作的相同隔離規則。
  • 每個 Kubernetes 命名空間不需要單獨的 SNAT IP。命名空間之間的東西向連線不會是 SNAT。
  • 每個命名空間的區段位於在標準模式下運作且與 NSX Edge 叢集相關聯的 VDS 上。區段可提供 主管 的覆疊網路。
  • 主管 在共用的第 1 層閘道內具有單獨的區段。對於每個 Tanzu Kubernetes Grid 叢集,會在命名空間的第 1 層閘道內定義區段。
  • 每個 ESXi 主機上的 Spherelet 程序會透過管理網路上的介面與 vCenter Server 進行通訊。

在設定了 主管 作為網路堆疊的三區域 NSX 中,對應至區域的所有三個 vSphere 叢集中的所有主機都必須連線到相同的 VDS 並參與同一個 NSX 覆疊傳輸區域。所有主機都必須連線到同一個 L2 實體裝置。

圖 4. 使用 NSX 的三區域 主管 網路

在三個區域上執行的具有 NSX 網路的 主管 的網路架構。工作負載網路的區段跨所有三個區域。

使用 NSXNSX Advanced Load Balancer主管 網路

NSX 提供 主管 內的物件和外部網路的網路連線。設定了 NSX主管 可以使用 NSX EdgeNSX Advanced Load Balancer

NSX Advanced Load Balancer 的元件包括 NSX Advanced Load Balancer Controller 叢集、服務引擎 (數據平面) 虛擬機器和 Avi Kubernetes Operator (AKO)。

NSX Advanced Load Balancer ControllervCenter Server 互動,以對 Tanzu Kubernetes Grid 叢集自動執行負載平衡。它負責佈建服務引擎、在服務引擎之間協調資源,以及彙總服務引擎度量和記錄。控制器為使用者作業和程式設計整合提供了 Web 介面、命令列介面和 API。部署並設定控制器虛擬機器後,可以部署控制器叢集來為控制平面叢集設定 HA。

服務引擎是數據平面虛擬機器。服務引擎執行一或多個虛擬服務。服務引擎由 NSX Advanced Load Balancer Controller 管理。控制器會佈建服務引擎以主控虛擬服務。

服務引擎具有兩種類型的網路介面:
  • 第一種網路介面是虛擬機器的 vnic0,會連線至管理網路,它可在其中連線至 NSX Advanced Load Balancer Controller
  • 剩餘介面 vnic1 - 8 會連線至虛擬服務執行所在的資料網路。

服務引擎介面會自動連線至正確的 vDS 連接埠群組。每個服務引擎最多可支援 1000 個虛擬服務。

虛擬服務可為 Tanzu Kubernetes Grid 叢集工作負載提供第 4 層和第 7 層負載平衡服務。為虛擬服務設定了一個虛擬 IP 和多個連接埠。部署虛擬服務時,控制器會自動選取 ESX 伺服器、啟動服務引擎,以及將其連線至正確的網路 (連接埠群組)。

第一個服務引擎僅在第一個虛擬服務設定完成之後建立。任何後續已設定的虛擬服務均會使用現有的服務引擎。

每個虛擬伺服器都會為 Tanzu Kubernetes Grid 叢集公開具有類型為負載平衡器之不同 IP 位址的第 4 層負載平衡器。設定時,會從為控制器指定的 IP 位址區塊中,選取指派給每個虛擬伺服器的 IP 位址。

Avi Kubernetes Operator (AKO) 會監視 Kubernetes 資源,並與 NSX Advanced Load Balancer Controller 通訊以要求對應的負載平衡資源。Avi Kubernetes Operator 將在啟用過程中安裝到 主管 上。

如需詳細資訊,請參閱〈安裝及設定 NSX 和 NSX Advanced Load Balancer〉

圖 5. 使用 NSXNSX Advanced Load Balancer Controller主管 網路
設定了 NSX 網路堆疊和 NSX Advanced Load Balancer 的 主管 的網路架構。
圖 6. 使用 NSXNSX Advanced Load Balancer Controller 的三區域 主管 網路
在三個區域上執行的具有 NSX 網路和 NSX Advanced Load Balancer Controller 的 主管 的網路架構。工作負載網路的區段跨所有三個區域。
重要:NSX 部署中設定 NSX Advanced Load Balancer Controller 時,請記住以下注意事項:
  • 無法在 vCenter Server 增強型連結模式部署中部署 NSX Advanced Load Balancer Controller。只能在單個 vCenter Server 部署中部署 NSX Advanced Load Balancer Controller。如果連結了多個 vCenter Server,則在設定 NSX Advanced Load Balancer Controller 時只能使用其中一個。
  • 無法在多層第 0 層拓撲中設定 NSX Advanced Load Balancer Controller。如果為 NSX 環境設定了多層第 0 層拓撲,則在設定 NSX Advanced Load Balancer Controller 時只能使用一個第 0 層閘道。

NSX 的網路連線設定方法

主管 使用固有網路組態。有兩種方法可設定使用 NSX主管 網路,從而導致為一次區域 主管 部署相同的網路模式: