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

前面我們討論完在Kubernetes Cluster內採用Antrea作為Container Network Interface,並整合NSX Manager作為安全管理介面的使用範例與方案架構。接下來的數篇網誌我想要更仔細地與大家介紹將Antrea與NSX Manager整合的手動安裝流程。大致上,整個流程可以用下面這張圖來表示:

接下來我會一個一個流程細部逐步與大家進行討論,希望在這邊的介紹完成後,大家也能在自己的Lab裡面按圖施工,完成需要進行的作業。這幾篇網誌談到的安裝方式主要基於官方文件 https://docs.vmware.com/en/VMware-NSX-T-Data-Center/3.2/administration/GUID-DFD8033B-22E2-4D7A-BD58-F68814ECDEB1.html , ” Registering an Antrea Container Cluster to NSX-T Data Center” 進行說明,大家有興趣也歡迎參考。

流程一:先將NSX / Kubernetes with Antrea安裝完成

基本上無論是採用原生 Kubernetes / Tanzu Kubernetes Grid / vSphere with Tanzu,整合 NSX Manager的手動安裝方式都一模一樣。在進行相關的註冊作業前,我們應該需要

  1. 完成 NSX Manager安裝,並輸入需求的授權碼。此方案內NSX構件只需要Manager就好,我們不需要去連接vCenter,不需要在vSphere上面做 Transport Node Preparation,建立Overlay這些事情。只需要將Manager本體安裝完成即可。
  2. 完成 Kubernetes Cluster安裝,採用Antrea作為底層的Container Network Interface。
  3. 下載正確版本的NSX與Antrea整合配置檔。

第 1 個步驟相信本文讀者都應該非常熟悉,細節就不多談。唯一多說一句就是記得要用3.2之後的最新版本。本文寫作時NSX Manager的最新版本是 3.2.1.1,3.1以前的NSX是沒有支持Antrea整合功能的。

第2個步驟的重點在採用哪種Kubernetes方案架構,各自有部署新的Kubernetes Cluster的方法。比如說當我們採用vSphere with Tanzu時,在Supervisor Cluster都安裝完成後,就可以手動撰寫一個TanzuKubernetesCluster的YAML檔案,並配置需求的master node / worker node數量、Storage Class、選擇CNI要採用antrea,配置pod CIDR等等,細節請大家參考相關的產品文件,或與VMware技術人員詢問。

但這邊有一個重點:Antrea在社群版本應該是1.2.2之後才有支援NSX整合的功能。如果大家裝的Kubernetes Cluster是原生方案,那Antrea當然是使用社群或是VMware企業支持的最新版本。但在使用無論Tanzu Kubernetes Grid或是vSphere with Tanzu時,Antrea不用手動安裝,是在Tanzu Kubernetes Cluster建立時就已經配置在內了。此時,『務必確認TKC使用的Antrea版本是有支持NSX整合的版本』。

這邊先直接講結論:

  • 在使用Tanzu Kubernetes Grid時,需要採用1.5以上的版本。建立的TKC必須是1.22之後,才會配置支持NSX整合的Antrea版本
  • 在使用vSphere with Tanzu時,需要採用最新的vCenter(本文寫作時是7.0U3e)。建立的TKC必須是1.22之後,才會配置支持NSX整合的Antrea版本

這裡很重要。通常整合失敗接不起來,這裡就是第一個犯錯的地方。要確認Tanzu內Antrea的版本,一個最直接的方式就是去看Antrea Controller的描述檔 (用kubectl describe指令去看antrea controller的pod)。下圖的描述檔是使用vSphere with Tanzu,TKC採用1.21.6的Kubernetes,此時可以看到安裝的Antrea版本,社群號是0.13.5,這對應到的是VMware Container Networking with Antrea的1.2.0-0.13.1企業版本,還沒有支持 NSX 整合:

下面這張圖是另外一個1.22.9版的TKC,安裝的Antrea版本顯示為社群1.2.3,對應企業版本為1.3.1-1.2.3,這就是有NSX支持的版本了。

上面這邊關於社群版本 / 企業版本相關的討論,大家請參考同系列網誌內第四篇與第八篇的相關說明,這裡就不重複。重點再度強調:Tanzu方案內,要1.22之後的TKC內使用的Antrea構件,才有支持NSX整合功能,1.21版以前的沒有。

本流程內的最後一個步驟是要去下載對應的NSX Agent配置檔。這裡的配置檔請務必要抓與TKC內安裝Antrea同個商業版本的配置檔。以上面的TKC 1.22.9,Antrea商業版本是v1.3.1-1.2.3為例,下載的流程首先是到VMware All Download內找VMware Antrea,然後找對應的版本,如下圖:

然後在VMware Container Networking with Antrea 1.3.1-1.2.3內,找NSX Interworking connector and deployment manifests這個檔案,如下圖。

上面的檔案下載後解壓縮,裡面的interworking.yaml, bootstrap-config.yaml, deregisterjob.yaml就是後續在流程四與五內要修改與部署的配置檔案了。

先到這邊。本篇內詳細說明了在流程一內,包含預先安裝NSX / Kubernetes Cluster / 下載對應NSX Agent配置檔的相關事項,在真正進行Antrea-NSX註冊作業前需要預先準備好。下篇內,我會繼續與大家進行後續流程的討論。