在混合多云的世界里,Kubernetes是如此流行,已經成為應用統(tǒng)一部署和管理的事實標準,而Tungsten Fabric與Kubernetes的集成,更增強了后者的網絡性能和安全性,幫助實現業(yè)務落地。
4月28日,在TF中文社區(qū)線上直播活動【
TF Live
】中,社區(qū)技術代表楊雨與大家進行了在線交流,看看TF與K8s能碰撞出怎樣的火花。
直播活動由
TF中文社區(qū)
和SDNLAB聯(lián)合舉辦。
創(chuàng)新互聯(lián)建站-專業(yè)網站定制、快速模板網站建設、高性價比莒南網站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式莒南網站制作公司更省心,省錢,快速模板網站建設找我們,業(yè)務覆蓋莒南地區(qū)。費用合理售后完善,10多年實體公司更值得信賴。
【pdf文檔下載】
https://tungstenfabric.org.cn/assets/uploads/files/kubernetes-sdn-tungsten-fabric.pdf
【高清視頻下載鏈接】
https://pan.baidu.com/s/1cnwFJ3pmoY7HPnLCH37hbw
提取碼:guxu
楊雨曾負責多個大型金融云平臺、企業(yè)云平臺的建設,專注于運維自動化、SDN和分布式存儲。作為2016年就接觸Tungsten Fabric的老兵,他在4月28日的直播與互動中輸出了很多硬核干貨,和大家分享了多年的技術積累和實踐。
Tungsten Fabric曾用名OpenContrail,2018年3月遷移到Linux基金會。一句話概括TF的核心技術,就是基于BGP MPLS VPN技術。
BGP MPLS VPN技術在運營商的廣域網絡有了20多年的應用歷史,是一個比較成熟的技術。運營商基于BGP MPLS VPN技術,基于同一套網絡基礎架構和線路的基礎上,為不同的網絡租戶提供了跨廣域網的虛擬專線服務。
BGP MPLS VPN技術的核心就是通過BGP協(xié)議作為控制平面,實現不同站點之間的路由和VPN信息的交互,BGP協(xié)議就是一個分布式的控制器。數據平面就是有MPLS標簽的隧道實現傳輸,做到流量的隔離,同時也可以借助ECMP等技術來做鏈路的負載均衡。
Tungsten Fabric將廣域網中的BGP MPLS VPN技術運用到了數據中心。在虛擬化的環(huán)境中,原來部署在運營商端點的PE,現在變成了部署在每個計算節(jié)點上的vRouter。換句話說,vRouter承擔了PE的角色。不同虛擬網絡的虛擬機,接入不同VRF后實現了隔離,通過隧道協(xié)議實現數據傳輸。在控制平面上,MAC地址A和B的通信,都是通過BGP協(xié)議實現信息的下發(fā)和交互。
在多云互聯(lián)、性能和擴展性方面,Tungsten Fabric都將SDN提升到了一個新的水平,在不同的數據中心(包括公有云和私有云)的部署中,輕松實現了虛擬機、容器、物理機的統(tǒng)一SDN環(huán)境。
在性能上,Tungsten Fabric支持原生Kernel轉發(fā),可以限速跑滿一個萬兆的網卡。通過控制器形成集群和分布式數據庫的采用,Tungsten Fabric具有非常好的規(guī)模擴展性。在目前的實際部署中,基本都大于200個計算節(jié)點,到上千個計算節(jié)點。通過不同控制器,還可以建立EBGP鄰居,實現跨多個集群的虛擬網絡的互聯(lián)。
Tungsten Fabric對接的負載類型,包含虛擬機、Linux虛擬機、容器、裸機等,這些工作負載都通過TF統(tǒng)一的SDN控制器實現互聯(lián)。而上層的云管平臺,包括OpenStack、K8s、VMware,以及一些公有云平臺,也都可以實現多云的統(tǒng)一SDN管理。
更重要的是,Tungsten Fabric可以提供豐富的網絡功能。在不同的虛擬網絡(如VS棧的虛擬網絡或GRE的虛擬網絡)上,基于不同的三層列表、二層路由表來實現隔離,同時也提供DHCP、DNS、以及IP地址管理等功能,以及防火墻、安全策略、負載均衡、服務鏈、監(jiān)控、分析等功能。
這么多功能怎么實現的?就是通過Tungsten Fabric的控制器。
控制器基于BGP作為SDN的控制平面,實現相應的路由條目、二層轉發(fā)表的管理,同時支持OVSDB實現對物理設備的配置。物理機可以通過VLAN接入TOR交換機,再轉成VXLAN,和相應的容器或虛擬機、虛擬網絡互通,這些都是通過BGP和OVSDB實現的。
實際上,Tungsten Fabric一開始主要支持Openstack這樣的虛擬化的集群,而對于Kubernetes的對接,有些概念還需要進行對應關系的映射。比如Pod的擴展,相當于TF里面的一個虛擬機,一個Interface,五個Instance-IP。
再比如K8s里面有很多Service類型,在TF這邊相應地對應于ECMP的負載均衡。怎么理解?傳統(tǒng)的負載均衡方案,比如F5設備等,是在四層包括七層實現負載均衡,而TF使用BGP路由技術,虛擬IP的下一個,可能就是一個真實物理服務器的IP,可以使用路由里多個下一跳的條目,來做等價路徑的轉發(fā),在路由層面實現比較高效的負載均衡。
另外,K8s的Ingress,相當于7層的一個負載均衡,使用內置的HAproxy來實現。
|
|
|
|
|
Virtual-machine, Interface, Instance-ip |
|
|
|
|
|
|
|
|
(對此,網友也提出很多Tungsten Fabric與K8s的技術問題)
Q:
TF是用來替代K8s使用的Calico這種網絡的嗎?
首先,兩者定位是一樣的,Calico核心原理也是基于BGP的。但在功能實現程度上,Calico是基于IP TABLE的,不帶VPN功能,只相當于TF的一個子集。在多云互聯(lián)的場景,包括一些隔離的場景,和TF是有很大差距的。Calico的好處是比較簡單,這種應用IPinIP的模式沒有overlay的開銷,比較適合在云上部署,因為云的網絡已經是overlay網絡了。簡單的總結:Calico是一個簡單可依賴的網絡方案,適合小規(guī)模的集群或部署在云上的K8S集群。TF在可擴展性、多云互聯(lián)和網絡隔離能力上會更強。
Q:
TF是否是取代K8s內的kube-proxy?
Kube-proxy在TF中只會應用在NodePort的場景。Kube-Proxy會在用戶態(tài)監(jiān)聽相應的端口,轉發(fā)給vRouter,由vRouter來實現相關的DNAT功能。
Q:
TF使用了BGP,需要讓企業(yè)內部的接入交換機、核心交換機都開啟BGP嗎?
出口網關Cloud Gateway,這個是TF Overlay虛擬網絡和物理網絡的主要連接點,需要支持MP-BGP和GRE隧道或者UDP隧道;如果需要TF管理配置下發(fā),也需要支持NetConf;
BMS TOR交換機,用來實現物理機VLAN網絡和TF的虛擬網絡實現二層橋接的設備,需要支持EVPN-VXLAN協(xié)議;
Underlay網絡交換機,就是用于連接各個計算節(jié)點,控制節(jié)點和BMS TOR以及Cloud Gateway的底層網絡。由于TF是在vRouter, BMS TOR, Cloud Gateway實現了隧道的解封包,所以對于Underlay的網絡交換機特性沒有特殊的要求,只要各節(jié)點之間三層可達即可。小規(guī)??梢杂渺o態(tài)路由,大規(guī)模可以用OSPF或者BGP;
TF對于設備是沒有鎖定的,只要支持相應的協(xié)議,都可以使用。但是不同廠商的協(xié)議的支持程度會有差異。如果不想做大量的測試和適配工作,Juniper的產品是優(yōu)先選擇,其它品牌的產品就需要在投入生產前做一些測試驗證。
Q:
K8s Service天然就有LB功能,這個和您講的ECMP提供的負載均衡有什么關聯(lián)呢?
K8s的LB功能也是由TF來實現了,只不過還是基于路由層面的ECMP來實現均衡,當要控制URL映射的時候,路由層面就做不了了。TF會使用Harpoxy來實現。
(關于TF與K8s的對接,楊雨在直播中進行了Demo演示,展示了Tungsten Fabric基本功能,與Kubernetes的集成對接,以及Service與External IP演示等,感興趣的朋友,點擊下方鏈接觀看)
https://pan.baidu.com/s/1cnwFJ3pmoY7HPnLCH37hbw
提取碼:guxu
在兩者的對接方面,Tungsten Fabric提供了標準接口,與K8s的集成還是基于CNI對接的,需要幾個組件之間進行配合。
包括Kube-manager對于K8s Pod相關變動的監(jiān)聽,并將相應事件轉成動作,調用TF API完成網絡、接口創(chuàng)建等。
擴展起來后,TF的CNI組件負責查詢Pod接口信息,把Pod的veth插入到vRouter里面去,完成網絡的對接。
是的,TF資源映射的關系是雙向同步的,以K8s為準,K8s這邊刪除就刪除,K8s創(chuàng)建就做相應的創(chuàng)建。
Q:
namespace的隔離是邏輯隔離、底層網絡還是互通的,VRF是基于網絡的還是什么?
默認情況下,不做任何指定的話,namespace是沒有隔離的??梢蚤_啟隔離功能,或者指定就要隔離,在安全策略里,就不允許訪問新創(chuàng)建的namespace,namespace之間就不會通。Tungsten Fabric對于不同網絡接口之間的訪問策略,都是比較靈活的。
Q:
TF可以生成環(huán)境中的流量展示信息么?可以看到服務之間的訪問關系,支持root cause分析么?便于管理員在故障期間分析是哪里出的問題。
流量分析是支持的,可以抓包,也可以通過service chain做鏡像分析,安全策略等訪問的展示,可視化可以基于Tungsten Fabric的界面去做,也可以接口做二次開發(fā)。
以上就是本次TF Live直播的精彩內容,這里有一些TF+K8s的指導文章,可以作為參考資料。
TF Live丨KK/建勛:多云、SDN,還有網工進化論
Tungsten Fabric +K8s集成指南系列
Tungsten Fabric +K8s輕松上手系列
-
-
通過Kubernetes的服務進行基本應用程序連接
-
通過Kubernetes Ingress進行高級外部應用程序連接
-
通過Kubernetes命名空間實現初步的應用程序隔離
-
通過Kubernetes網絡策略進行應用程序微分段
文章題目:TFLive直播回放丨楊雨:TungstenFabric如何增強Kubernetes的網絡性能
網頁地址:http://m.rwnh.cn/article14/iggige.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供網站導航、服務器托管、網站設計、網站排名、手機網站建設、網站維護
廣告
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源:
創(chuàng)新互聯(lián)