安裝和設定 NSX Advanced Load Balancer

NSX Advanced Load Balancer 部署拓撲

在 Tanzu Kubernetes Grid 中,NSX Advanced Load Balancer 包括以下元件:

  • Avi Kubernetes Operator (AKO):可為部署在 Kubernetes 叢集中的應用程式,提供南北向流量的 L4-L7 負載平衡。它會接聽 Kubernetes 輸入和服務類型 LoadBalancer 物件,並與 Avi 控制器 API 互動,以建立 VirtualService 物件。
  • AKO Operator 是一個應用程式,可讓 AKO 與叢集 API 彼此通訊。它管理 AKO 的生命週期,並為叢集控制平面節點的負載平衡器提供通用介面。AKO Operator 僅在管理叢集上部署。
  • 服務引擎 (SE) 會以虛擬機器的機器尺寸來實作數據平面。
  • 服務引擎群組會以一組服務引擎形式提供隔離單元,例如,用於特定重要命名空間的專用 SE 群組。這是以需要建立的 SE (CPU、記憶體等) 類型模板形式來提供控制,同時可限制允許的 SE 數目上限。
  • Avi 控制器會管理 VirtualService 物件,並與 vCenter Server 基礎結構互動,以管理服務引擎 (SE) 的生命週期。它是入口網站,會檢視 VirtualServices 和 SE 的健全狀況以及 NSX Advanced Load Balancer 所提供的相關聯分析。它也是一個控制點,會監控及維護備份和還原等作業。

Tanzu Kubernetes Grid 支援部署在單肩和多肩網路拓撲中的 NSX Advanced Load Balancer。

附註

若您要在多肩網路拓撲中部署 NSX ALB Essentials Edition,請確保您未在為 Avi SE 和 Kubernetes 叢集節點之間的通訊設定的網路中設定任何防火牆或網路原則。如要在部署了 NSX ALB 的多肩網路拓撲中設定任何防火牆或網路策略,需要啟用自動閘道功能的 NSX Advanced Load Balancer 企業版。

下圖所示為單肩 NSX ALB 部署:

VMware NSX Advanced Load Balancer 部署拓撲 - 單肩

下圖所示為多肩 NSX ALB 部署:

VMware NSX Advanced Load Balancer 部署拓撲 - 多肩

網路

  • 相對於資料路徑,SE 可在單肩或雙肩模式下部署,且同時連線到 VIP 網路和工作負載叢集節點網路。如果要使用 NSX ALB Essentials Edition,將 SE 部署在雙肩網路拓撲中,請確定您未在要使用的網路中設定任何防火牆或網路原則。
  • VIP 網路和工作負載網路必須可在同一個 vCenter Cloud 中探索到,這樣 Avi 控制器才能建立連結到這兩個網路的 SE。
  • VIP 和 SE 資料介面 IP 位址是從 VIP 網路來配置。

IPAM

  • 如果 DHCP 無法使用,則 VIP 的 IPAM 以及 SE 介面 IP 位址會交由 Avi 控制器管理。
  • Avi 控制器中的 IPAM 設定檔中設有一個雲端和一組可用網路。
  • 如果沒有為 VIP 網路設定 DHCP,則必須為目標網路建立至少一個靜態集區。

資源隔離

  • 藉由使用 SE 群組,可提供跨工作負載叢集的數據平面隔離。vSphere 管理員可以設定專用 SE 群組,並設定給需要隔離的一組工作負載叢集。
  • 藉由 SE 群組,可控制 Avi 控制器所建立的 SE 的資源特性,例如 CPU、記憶體等。

承租人

透過 NSX Advanced Load Balancer Essentials,所有工作負載叢集使用者都與單一管理員承租人相關聯。

Avi Kubernetes Operator

Avi Kubernetes Operator 安裝在工作負載叢集上。它設有 Avi 控制器 IP 位址使用者認證,以供 Avi Kubernetes Operator 用來與 Avi 控制器通訊。會為每個工作負載各建立一個專用使用者,且其具有管理員承租人和自訂角色。如 https://github.com/avinetworks/avi-helm-charts/blob/master/docs/AKO/roles/ako-essential.json 中所定義,此角色的存取權有限。

在 vCenter Server 上安裝 Avi 控制器

若要在 vCenter Server 上安裝 Avi,請參閱 Avi 說明文件中的安裝 Avi Vantage for VMware vCenter

若要在具有 VMware NSX 的 vCenter 上安裝 Avi,請參閱 Avi 說明文件中的安裝 Avi Vantage for VMware vCenter with NSX

附註

如需瞭解此版本支援的 Avi 控制器版本,請參閱 Tanzu Kubernetes Grid v2.3 版本說明。若要升級 Avi 控制器,請參閱 Avi Vantage 彈性升級

安裝和設定 NSX ALB 時的必要條件

若要啟用 Tanzu Kubernetes Grid NSX - Advanced Load Balancer 整合解決方案,您必須部署並設定 Avi 控制器。目前,Tanzu Kubernetes Grid 支援將 Avi 控制器部署在 vCenter 雲端和 NSX-T 雲端中。

為了確保 Tanzu Kubernetes Grid - NSX Advanced Load Balancer 整合解決方案能夠運作,您的環境網路拓撲必須滿足以下需求:

  • 應可從 vCenter、管理叢集和工作負載叢集連線到 Avi 控制器。
  • 管理叢集和工作負載叢集中的 AKO 必須能夠連線到 Avi 控制器,以便要求 Avi 控制器針對負載平衡器類型的服務和輸入,實作數據平面。
  • 必須可以從獲得 SE 所提供的負載平衡數據平面的 Kubernetes 叢集,連線到 Avi 服務引擎 (SE)。
  • Avi 服務引擎需要將流量路由到獲得負載平衡功能的叢集。

NSX Cloud

以下版本支援將 Tanzu Kubernetes Grid 與 NSX 和 NSX Advanced Load Balancer (Avi) 整合:

NSX Avi 控制器 Tanzu Kubernetes Grid
3.0+ 20.1.1+ 1.5.2+

Avi 控制器設定:IPAM 和 DNS

在使用 NSX Advanced Load Balancer 之前,請先在控制器 UI 中進行其他設定。

  1. 在控制器 UI 中,移至範本 (Templates) > 設定檔 (Profiles) > IPAM/DNS 設定檔 (IPAM/DNS Profiles) ,按一下建立 (Create) ,並選取 IPAM 設定檔 (IPAM Profile)

    • 輸入設定檔的名稱,例如 tkg-ipam-profile
    • 維持將類型 (Type) 設定為 Avi Vantage IPAM
    • 保留取消勾選在 VRF 中配置 IP (Allocate IP in VRF)
    • 按一下新增可使用網路 (Add Usable Network)
    • 選取預設雲端 (Default-Cloud)
    • 對於可使用網路 (Usable Network),請選取您要在其中配置虛擬 IP 的網路。如果您使用平面網路拓撲,則它可以是您在上述程序中選取的相同網路 (管理網路)。若為不同的網路拓撲,請為虛擬 IP 選取個別的連接埠群組網路。
    • (選用) 按一下新增可使用網路 (Add Usable Network),以設定其他 VIP 網路。
    • 按一下儲存 (Save)

    設定 IPAM 和 DNS 設定檔

  2. IPAM/DNS 設定檔 (IPAM/DNS Profiles) 視圖中,再次按一下建立 (Create),然後選取 DNS 設定檔 (DNS Profile)

    附註

    對於使用服務類型 LoadBalancer,DNS 設定檔是選用的。

    • 輸入設定檔的名稱,例如 tkg-dns-profile
    • 對於類型 (Type),請選取 AVI Vantage DNS
    • 按一下新增 DNS 服務網域 (Add DNS Service Domain) ,並輸入至少一個網域名稱 (Domain Name) 項目,例如 tkg.nsxlb.vmware.com
      • 這應該來自您可以管理的 DNS 網域。
      • 對於工作負載叢集的 L7 輸入組態,這一點更為重要,在此組態中,控制器會以主機名稱為基礎,來作為路由流量的邏輯。
      • 控制器所管理的輸入資源所使用的主機名稱,應隸屬於您在此處選取的網域名稱。
      • 此網域名稱還會用於 LoadBalancer 類型的服務,但如果您使用 AVI DNS VS 作為名稱伺服器,該網域名稱更為重要。
      • 每個虛擬服務將在 AVI DNS 組態中各建立一筆項目。例如,service.namespace.tkg-lab.vmware.com
    • 按一下儲存 (Save)

    建立 DNS 設定檔

  3. 按一下左上角的功能表,然後選取基礎結構 (Infrastructure) > 雲端 (Clouds)

  4. 對於預設雲端 (Default-Cloud),按一下編輯圖示,然後在 IPAM 設定檔 (IPAM Profile)DNS 設定檔 (DNS Profile) 下,選取您在上面所建立的 IPAM 和 DNS 設定檔。

    將 IPAM 和 DNS 設定檔新增到雲端

  5. 選取資料中心 (DataCenter) 索引標籤。

    • 保留 DHCP 的啟用狀態。這是依各個網路來設定的。
    • 保留取消勾選 IPv6…靜態路由 (Static Routes)… 核取方塊。
  6. 尚未更新網路 (Network) 區段。

  7. 儲存雲端組態。
  8. 開啟基礎架構 (Infrastructure) > 雲端資源 (Cloud Resources) > 網路 (Networks),然後按兩下要用作 VIP 網路的網路編輯圖示。

    編輯 VIP 網路的網路

  9. 此時將顯示 IP 位址集區中的可編輯 IP 範圍清單。按一下新增靜態 IP 位址集區

    編輯 VIP 網路位址集區

  10. 輸入要用作 VIP 網路的靜態 IP 位址集區的子網邊界內的 IP 位址範圍,例如,192.168.14.210-192.168.14.219。按一下儲存 (Save)

    輸入 VIP 網路的 IP 集區

(建議) Avi 控制器設定:虛擬服務

如果要與管理叢集搭配使用的 SE 群組沒有虛擬服務,可能會提醒您對於該 SE 群組,並沒有任何服務引擎正在執行。因此,管理叢集部署程序必須等待服務引擎的建立。建立服務引擎非常耗時,因為它需要部署新的虛擬機器。在網路功能不良的情況下,這可能會導致內部逾時,從而妨礙管理叢集部署程序成功完成。

為阻止出現此問題,建議在部署管理叢集之前,先透過 Avi 控制器 UI 建立虛設的虛擬服務,以觸發服務引擎的建立。

若要確認已指派虛擬服務給 SE 群組,請在控制器 UI 中移至基礎結構 (Infrastructure) > 服務引擎群組 (Service Engine Group),然後檢視 SE 群組的詳細資料。如果沒有指派虛擬服務給 SE 群組,請建立一個虛設的虛擬服務:

  1. 在控制器 UI 中,移至應用程式 (Applications) > 虛擬服務 (Virtual Service)

  2. 按一下建立虛擬服務 (Create Virtual Service),然後選取基本設定 (Basic Setup)

  3. 設定 VIP:

    1. 選取自動配置 (Auto-Allocate)
    2. 選取您針對 IPAM 設定檔所設定的 VIP 網路 (VIP Network)VIP 子網路 (VIP Subnet),這是您在 Avi 控制器設定:IPAM 和 DNS 中所設定的。
    3. 按一下儲存 (Save)
附註

成功部署管理叢集後,就可以刪除虛設的虛擬服務。

除了建立虛設服務所需的相關資訊外,如需有關建立虛擬服務的完整資訊,請參閱 Avi Networks 說明文件中的建立虛擬服務

Avi 控制器設定:自訂憑證

預設 NSX Advanced Load Balancer 憑證並未將控制器的 IP 或 FQDN 包含在主體替代名稱 (SAN) 中,但是必須將有效的 SAN 定義在 Avi 控制器的憑證中。因此,您必須建立一個自訂憑證,以在部署管理叢集時提供。

  1. 在控制器 UI 中,按一下左上角的功能表,選取範本 (Templates) > 安全性 (Security) > SSL/TLS 憑證 (SSL/TLS Certificates),按一下建立 (Create),然後選取控制器憑證 (Controller Certificate)
  2. 名稱 (Name)一般名稱 (Common Name) 文字方塊中,輸入相同的名稱。
  3. 選取自我簽署 (Self-Signed)
  4. 對於主體替代名稱 (SAN),請輸入控制器虛擬機器的 IP 位址和/或 FQDN。

    如果您只使用 IP 位址或 FQDN,它必須與您在設定 VMware NSX Advanced Load Balancer 時用於控制器主機的值相符,或是在管理叢集組態檔案中的 AVI_CONTROLLER 變數中指定的值相符。

  5. 將其他欄位保留空白,然後按一下儲存 (Save)
  6. 在左上角的功能表中,選取管理 (Administration) > 設定 (Settings) > 存取設定 (Access Settings),然後按一下系統存取設定 (System Access Settings) 中的編輯圖示。
  7. 刪除 SSL/TLS 憑證 (SSL/TLS Certificate) 中的所有憑證。
  8. 使用 SSL/TLS 憑證 (SSL/TLS Certificate) 下拉式功能表,新增您在上面建立的自訂憑證。
  9. 在左上角的功能表中,選取範本 (Templates) > 安全性 (Security) > SSL/TLS 憑證 (SSL/TLS Certificate),並選取您建立的憑證,然後按一下匯出圖示。
  10. 複製憑證內容。

    在您部署管理叢集時,將需要憑證內容。

check-circle-line exclamation-circle-line close-line
Scroll to top icon