很多使用者很關心在vCD裡,是如何將租戶的內部組織網路和服務供應商所提供的對外網路連接起來的。還有這個連接實際上是以什麼形式來完成的?

先大致說一下vCD裡有所謂的Provider VDC,大家把它想像成一個大的資源池,所有租戶的虛擬機都可以跑在這裡面,vCD本身有很強大的控制機制可以讓不同租戶的虛擬機同時一起運行在這個資源池裡(Compute Cluster),但虛擬機器總是有需要訪問(或被訪問)到Internet或任何SP所提供的外部網路(MPLS/VLAN/etc)的機會,所以我們會設計一個機櫃,這個機櫃提供了這些對外網路的實體連結,這些機櫃的組合我們稱為Edge Cluster,所有南北向的流量必須通過這裡出去.

由於vCD已經完全整合了NSX網路虛擬化的功能,所以在這個大的資源池裡vCD是藉由NSX去提供租戶的網路連接,當然這個是通過虛擬網路來達成 ,底層是以VXLAN的形式提供出來,虛擬機之間東西向可作動的範圍我們稱為Provider VDC Transport Zone。

SP搭建租戶的對外網路連接大致可分成兩類:(這裡說明的都是以Leaf-Spine的設計為主,比較不清楚Spine-Leaf網路架構優點的同學請自行參閱這裡)

1. 用vCD內建的Edge Service Gateway

這個方法是較簡單的實現方式 (原圖摘錄自這裡),設計上SP採取了將Edge Cluster納進到Provider VDC裡的做法,所有租戶的對外網路連接都是通過這個Edge/Compute Cluster來達成,所有租戶組織對外網路連接的Edge Gateway(圖中圈起來的)是vCD自動產生的,雖然背後是靠NSX去生成一個ESG的虛擬機,但對SP而言不需要去關心NSX層級的操作,只要配置好哪個租戶要與哪個VLAN做連結就好了,相對來說在配置上較簡單,但因為這種設計是把租戶的Compute和Edge Cluster做在一起,所以該Cluster同時有可能會跑所有租戶的Edge Gateway和某些租戶的虛擬機,這樣對資源有限的Edge/Compute Cluster可能會造成限制,所以只適合小型運營商來考慮.但好處是可以方便的橫向擴充Compute Cluster而不需考慮要再額外配置NSX Transit Network.

Screen Shot 2017-08-25 at 9.23.35 AM

2. 搭配NSX,部署Provider ESG

第二種方式就是延續第一種的概念,但是把Edge Cluster單獨切出來.

當我們把Edge Cluster切出來後,這個Cluster就不被vCD所管理了,SP為了提供租戶對外的網路連結,可透過NSX建置一台Provider Edge Service Gateway (下圖紅色圈圈那台),這台Edge提供類似第一種架構中SP VLAN與租戶VXLAN的連接,只是在這裡,原本租戶的VXLAN變成了SP的vCD External Network. 因為這台Provider Edge提供完整的NSX功能,所以在其對外的網路連接支援動態路由、二層橋接、Layer 2 VPN等設定.

這種設計在SP內部網路和租戶網路之間提供額外一層的網路隔離,進一步滿足SP對安全的要求.

Screen Shot 2017-08-25 at 8.10.38 AM

這種Leaf-Spine設計,裡面包含了Compute和Edge叢集,所有租戶的workload都跑在Compute Cluster裡面,vCD會根據Provider VDC的範圍,自動建立Provider VCD Transport Zone提供租戶組織網路的連結,但運營商需要額外建置一個Edge Cluster,在所有Cluster手動配置NSX Transit Transport Zone,如此NSX可以在底層生成VXLAN Logical Switch,以便讓租戶的ESG可以和Provider Edge互連.

 

這種設計方式的好處是實體分開租戶虛擬機的工作負載與SP端實現網路南北向路由的工作負載,租戶的workload只會存在於Compute Cluster中 (Provider VDC),而不會與Edge混用競爭資源,而且Provider Edge亦可根據使用狀況橫向擴展.為了讓租戶可以連到外部網路而被vCD所建立的Edge Gateway只能在Compute Cluster中運行,因為其網路介面必須連接到Provider VDC Transport Zone裡NSX所生成的VXLAN 的logical switch上.

小結

以上兩種不同設計均有優缺點,第一種實施方便及拓展迅速,但SP需要做好Edge/Compute Cluster的容量管理,第二種SP可結合NSX的特色,並且可滿足對安全更高的要求,但需要做好對Provider Edges的效能和頻寬管理.