2023年3月2日 星期四

NSX Advanced Load Balancer 部署及設定

VMware NSX Advanced Load Balancer (簡稱 NSX ALB,之前的名稱為 AVI Networks) 是100%軟體定義、集中控管、可自動化部署的負載平衡解決方案。NSX ALB 的特點除了能提供企業負載平衡服務、網頁應用防火牆(WAF)與分析等服務外,也能夠支援虛擬/容器環境及多雲架構的部署。本文主要是說明如何部署 NSX ALB 以及基本的設定和配置。

NSX ALB 架構及組成元件

VMware NSX ALB 採用分散式架構,分成控制器(Controllers)與服務引擎(Service Engine,SE)兩大部份。

NSX Advanced LB Architecture & Components

控制器(Controller)是整個系統的大腦,可以單台運作或是三台組成 HA 叢集架構,負責環境的統一管理與配置,並提供 API 接取等作業。

服務引擎(SE)則是接收控制器的指令,負責處理網路流量轉送,提供負載平衡、網頁應用防火牆(WAF)與分析、容器應用程式網路服務等功能。

LAB 網路架構


LAB 環境架構如上圖所示,網段規劃如下: 
  • Controller 和 SE 管理網段放在 MGMT PG (172.26.93.0/17) 
  • SE 的 DATA 網段和 VIP 網段放在 Frontend-PG (10.10.150.0/24) 
  • Workload-PG (10.10.151.0/24) 會放兩台安裝了 IIS 的虛擬機 
  • 建立一台 Windows server 起 Router 和 NAT 功能,配置三張網卡分別接到 MGMT、Frontend-PG、Workload-PG

NSX ALB Controller 部署

NSX ALB 可以單台運作或是部署三台組成 HA 叢集架構,在本例,只會部署單台 Controller。

部署方式很簡單,就是是 OVA 部署。部署的流程會依序設定 ALB Controller VM 名稱、網路、存放的 Datastore等設定。網路設定的地方,只需要設定管理IP、Subnet Mask 和 Gateway,與NSX-T 的部份留空

NSX ALB Controller 初始化設定

首次使用瀏覽器開啟 Controller URL,需要建立並設定 admin 管理者密碼
接著在歡迎畫面,設定系統基本設定、Email/SMTP、Multi-Tenant

設定連接 vCenter

點擊 Infrastructure→Clouds→編輯 Default-Cloud
轉換類型為 VMware vCenter/vSphere ESX
設定 vCenter 帳號密碼,本例取消勾選 "Use Content Library"
選擇管理網段的 Port Group,並設定 SE 管理網段要用的 IP Pool
設定 IPAM/DNS 的部份,先設定 DNS,待會再回來配置 IPAM Profile

配置 IPAM Profile

在 Templates→IPAM/DNS Profiles 設定頁面,點選建立新的 IPAM Profile
設定 IPAM Profile 名稱、選擇 Default-Cloud 以及要 VIP 要使用的 Port Group
接著回去編輯 Default-Cloud,選擇剛剛建立的 IPAM Profile

設定 VIP 網路

vCenter 連接成功後,在Infrastructure→Clouds Resources→Networks 設定頁面,可以看到 vCenter 上所有的 Port Group。展開 MGMT 可以看到配置給 SE 使用的管理網段 IP
在本例,Frontend-PG 是規劃要給 SE Data 和 VIP 使用,點選編輯 Frontend-PG,配置一段 IP Pool

調整 SE 高可用模式 & 設定配置

在Infrastructure→Clouds Resources→Service Engine Group 頁面,點擊編輯 Default-Group
依照需求調整設定配置。本例調整高可用模式為 Active/Standby,修改每個服務引擎的服務數量為 100,接著到進階設定的地方調整 SE 部署的命名、放置的資料夾以及要放在哪一個叢集或 ESXi 主機


建立 Virtual Service

在 Application→Dashboard 頁面,新增 Virtual Service
設定 Virtaul Service 名稱,然後新增 VS VIP
點選新增 VIP
因為有設定了 IPAM Profile,下拉選單就可以快速點選 VIP Network Profile 的設定,並選擇要放置的網路
接著,設定後端連接的 Server IP (可以直接輸入 IP 或是用 Port Group 去找 VM)
本例在這邊有遇到一個網路不通的錯誤訊息,可能是因為 LAB 的架構沒辦法路由造成的。解決方式是再次點進去編輯 Virtual Server,勾選「忽略網路檢查」選項,然後 Virtual Server 的狀態就變為 Creating,SE 也成功的部署出來

【2023.3.6 更新】在 Workload-PG 配置一段 IP Pool 後,重新在建立一次 Virtual Server 就沒有跳出錯誤了

 

驗證 Web Service

現在我們已經完成了 Virtual Server 設定,也成功的自動產生出兩台 SE,並且關聯到後端的兩台 Demo Web VM。接著,我們就可以簡單的用 Web Service 來測試 load balance 是否可以正常運作。首先,在 Application→Dashboard 頁面,可以取得 Virtual Server VIP
接著,在 Application→Pools 頁面,點選進 demo-pool,可以看到目前後端的 Server 有幾台。將滑鼠移到 Pool:demo-pool 上,則可以看到目前套用的演算法是 Round Robin
最後,從 Router VM 用瀏覽器連 VIP (http://10.10.150.1) 並重新整理幾次,可以觀察顯示的網頁內容會是兩台 Demo web 輪流切換

參考連結

沒有留言:

張貼留言