作者: Colin Jao 饒康立 – VMware資深技術顧問,主要負責VMware NSX產品線,目前致力於網路虛擬化、分散式安全防護技術與新應用遞送方案的介紹與推廣。

與傳統硬體應用遞送交換器,或被稱為”Application Switch”這些的友商方案不同,在絕大部分的狀況下,NSX Advanced Load Balancer (Avi Networks) 並不會被當成一台Switch或是Router。Avi通常建議是利用Reverse-Proxy的機制:當外部用戶往應用的連線要求送到Avi的服務引擎上,服務引擎會改用自己的IP地址往後端的Backend Server連線並取得回應。如果業務管理者需要看到用戶的來源地址連線,可以選擇採用X-Forwarded-For或是Proxy Protocol的方式來發送用戶IP資訊給後端伺服器。

 

這代表的是Avi在大多數環境內,不需要如同傳統硬體應用遞送交換器,從底層的vlan、IP網段與Gateway、路由等等開始配置。Avi的服務引擎大部分環境是虛機,建立在現有的虛擬化環境 / 公有雲上。因此,網路的配置上我們關注的是

 

  • Avi服務引擎虛機要如何接取到底層的虛擬網路

 

  • Avi服務引擎虛機本身以及上層業務採用的虛擬IP (Virtual IP) 要如何配置,對應的Gateway要如何設定

 

講起來很簡單,但要考慮的沒有那麼單純。如前兩篇討論,Avi的服務引擎是可以『動態』部署的,這代表我們不會一台台服務引擎手動去配置IP與Gateway。其次,Avi不僅可以連動底層的虛擬化平台,同時還可以連動SDN方案,或不同的公有雲。這代表其實在不同的”Cloud”裡,Avi的網路配置方式會有不同。

 

我沒有打算窮盡所有不同環境進行討論。但在接下來,我想要與大家就幾個代表性環境內的網路配置方式進行說明,分別是純vCenter / vSphere Cloud,NSX-T Cloud,AWS Cloud這三種。

 

vCenter/vSphere Cloud

 

在vCenter/vSphere Cloud內,配置的過程中Avi會詢問三個類型不同的網路:

 

  • 管理網路:這是服務引擎與Avi Controller連接的介面,純為Out-of-Band作為控制使用。

 

  • VIP網路:配置上層Virtual Service VIP的網路,提供Virtual Service服務的Avi Service Engine會動態將一個網卡放置到這個PG內(並配置IP),Virtual Service的VIP也會建立在此網段內

 

  • Backend Pool網路:配置往後端Backend Server接取的網路,提供Virtual Service服務的Avi Service Engine會依據Pool內的定義,動態將一個網卡放置到這個PG內(並配置IP),由此網段往後端Backend Server連接

 

用一張關係圖來進行說明:下圖的vCenter / vSphere環境內,管理者預先建立好了三個Port Group(用vSS / vDS建立均可):PG-Mgmt (vlan 10)、PG-VIP (vlan 101)、PG-Backend (vlan 102)。同時,透過採用DHCP,或是在Avi的配置內設定IP Pool,各網段內劃定一段IP範圍可提供服務引擎接取。

此時,

 

  • 當每一台Avi服務引擎動態建立時,這個服務引擎虛機的第一張網卡會接到PG-Mgmt內(於Avi vCenter / vSphere Cloud內指定)。服務引擎透過這個介面與Avi Controller進行溝通

 

而當一個Virtual Service被指定要放置到這台服務引擎 (透過Service Engine Group)時,

 

  • 在Virtual Service的配置內,透過VIP所在的網段,或是管理者手動指定要接到哪個網路,服務引擎虛機用一張網卡接到對應的Port Group (上圖的PG_VIP),並取得服務引擎在此網段上的介面IP,並且配置管理者指定的VIP

 

  • 在Pool配置內,透過Backend Server所在的網段,或是管理者手動指定要接到哪個網路,服務引擎虛機用一張網卡接到對應的Port Group (上圖的PG_Backend),並取得服務引擎在此網段的介面IP

 

下圖內是配置完的示意圖,服務引擎虛機左邊的Network 1介面單純進行管理用途,一張網卡接往前端的PG_VIP,一張網卡接往後端的PG_Backend。用戶連線由前端網路連到服務引擎上的Virtual IP,服務引擎改用後端自己本身的IP往Backend Server連接。

下圖內是一個實際環境動態部署出的服務引擎Avi-se-jedrl虛機的配置。大家可以看到,第一張網卡是接往管理網路。而Network 10是在Virtual Service設定後,由Controller動態指定連接到Avi-Tenant-01-VIP這個Port Group,Network 5則是連往後端的Avi-Tenant-01-Load Port Group。

Avi方案在vCenter/vSphere Cloud內的網路架構大致說明至此。我們的重點不在實務上的安裝流程,因此文內就沒有太多UI配置畫面,但希望各位可以理解後續若需安裝,架構上的網路設計概念為何。另外,常被客戶問的一個問題是,上面談到的三個網路一定要分開嗎?我們可不可以把VIP/Backend網路放在一起,或甚至單一網路把Mgmt/VIP/Backend都通吃呢?

 

答案是當然可以,但這樣做好不好,就是各位在架構上的取捨了。我的建議是如果能分開,分開當然是比較好,可以把不同性質的管理/業務分流,也較容易做到硬體上完整的頻寬使用(不同的Port Group在vSphere上可以選擇用不同的獨立網卡)。

 

下一篇我們和大家討論NSX-T Cloud內的網路配置。