NSX-T 可以通過 K8s 的容器網(wǎng)絡(luò)接口 (Container Network Interface) 來向容器提供虛擬化的網(wǎng)絡(luò)服務(wù),PKS 的用戶可以方便地通過命令行來創(chuàng)建和管理由 NSX-T 提供的虛擬網(wǎng)絡(luò)服務(wù)對(duì)象,如:分布式防火墻、邏輯交換機(jī)、網(wǎng)絡(luò)安全策略等等,例如:
- 創(chuàng)建命名空間 :在創(chuàng)建容器 Namespace 的同時(shí),NSX-T 會(huì)自動(dòng)創(chuàng)建一個(gè)分布式路由器和邏輯交換機(jī),從網(wǎng)絡(luò)層面上把這個(gè) Namespace 隔離開來。
- 網(wǎng)絡(luò)策略:創(chuàng)建網(wǎng)絡(luò)策略命令會(huì)在分布式防火墻上創(chuàng)建一組對(duì)應(yīng)的安全策略,根據(jù)安全策略定義的規(guī)則來阻止指定的網(wǎng)絡(luò)流量。
- 應(yīng)用部署:具體的應(yīng)用部署之后,NSX-T 就會(huì)根據(jù)安全策略中的規(guī)則來控制對(duì)于應(yīng)用容器的流量訪問,PKS 自來的 traceflow 功能可以方便地查看兩個(gè)窗口或服務(wù)之間的流量關(guān)系。
- 網(wǎng)絡(luò)策略:刪除相關(guān)的網(wǎng)絡(luò)策略后,就會(huì)在相關(guān)的分布式防墻上刪除相應(yīng)的網(wǎng)絡(luò)策略。
- 負(fù)載均衡器 Ingress:NSX-T 也為容器應(yīng)用提供了負(fù)載均衡服務(wù) Ingress,Ingress 具有層7的網(wǎng)絡(luò)路由功能。
通過 NSX-T 和 Ingress 負(fù)載均衡器相配合,可以實(shí)現(xiàn)層 7 的路由功能,在演示中我們看到 Ingress 服務(wù)可以通過 URL 的后綴 coffee (10.40.14.35/coffee) 或 tea (10.40.14.35/tea)來把訪問請(qǐng)求導(dǎo)向具體的容器服務(wù),因?yàn)?Ingress 支持這種基于 HTTP 協(xié)議的負(fù)載均衡服務(wù)。
接下來請(qǐng)大家點(diǎn)擊閱讀原文看一段關(guān)于 PKS 中 NSX-T 虛擬化網(wǎng)絡(luò)功能的演示,主要包括了以下幾個(gè)場(chǎng)景:
- 創(chuàng)建命名空間:在 PKS 集群中創(chuàng)建 namespace bar,可以看到 NSX-T 在后臺(tái)自動(dòng)創(chuàng)建了一個(gè)邏輯路由器和交換機(jī)來為命名空間 bar 提供一個(gè)獨(dú)立的網(wǎng)段;
- 利用網(wǎng)絡(luò)策略來控制網(wǎng)絡(luò)通訊:創(chuàng)建網(wǎng)絡(luò)策略來阻止帶有 db 和 nginx 標(biāo)簽的 Pod 之間的通訊, NSX-T 提供的 Traceflow 工具可以讓管理員直觀地看到多個(gè) Pod 指定端口之間的通訊被阻止了;
- 通過 Ingress 控制器來均衡負(fù)載:部署一個(gè) Ingress 控制器來分配 coffee 和 tea 服務(wù)之間的工作負(fù)載,Ingress 具有層 7 的網(wǎng)綹路由能力,能夠通過 URL 上的服務(wù)名字 (coffee 或 tea) 來把網(wǎng)絡(luò)包專遞給相應(yīng)的服務(wù)。