溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

為啥Underlay才是容器網絡的最佳落地選擇

發布時間:2020-08-11 13:00:35 來源:ITPUB博客 閱讀:170 作者:博云技術社區 欄目:服務器

導語:

幾年前,當博云啟動自研容器網絡研發的時候,除了技術選型的考慮,我們對于先做 Underlay 還是 Overlay 網絡也有過深度的 討論 。當時的開源社區以及主流容器廠商,多數還是以 Overlay 網絡方案為主,但在我們對眾多客戶真正需求的深入了解之后,發現部分客戶對容器內外網絡直通有著非常強烈的需求。思慮再三,我們決定還是先做 Underlay 網絡(后來又做了Overlay)。隨著行業與公司自身的發展,我們建設實施的項目越來越多,這讓我們對容器網絡的思考也越來越深入,從而觀點也越來越清晰:

內外直通的Underlay網絡才是容器網絡的正確打開方式。

01

從需求出發,考慮容器網絡方案

為啥Underlay才是容器網絡的最佳落地選擇

如上圖所示,這是目前企業微服務容器化部署的典型場景,也是驅動我們做 Underlay網絡的直接原因:

  1. 服務部署在Kubernetes集群內部(如圖:服務1、服務2);

  2. 數據庫、注冊中心、Redis、MQ等組件部署在集群之外;

  3. 部分服務也可能部署在集群之外, 比如容器平臺試用階段(如圖:服務3)

這些服務和組件,需要能直接互聯互通。

如若需要滿足以上需求,最簡單有效的方案就是直接把 Kubernetes 內外網絡打通,也就是采用 Underlay 網絡模式。

當然,如上需求也有別的辦法可以解決。比如,細化分析服務和組件間的流量,采用ingress、egress,包括改寫應用代碼等方式,在特定情況下,這也是可以用的。然而,一方面,這些都是特定場景下的特定解決方案,缺乏一定的通用性;另一方面,容易出現配置復雜、引入額外風險、出錯難以定位等問題。遠遠沒有通過Underlay網絡直接將內外網打通這么簡單有效。

還有另外的辦法就是將所有服務和組件都放入Kubernetes集群內部,但是這種方案仍是針對特定場景的非通用方案,很難保證企業所有的應用都在一個Kubernetes集群里。

同樣,對于容器內外網絡直接互聯互通的需求場景還有:

  • 特定用途的Kubernetes集群對外提供服務。比如專門用作提供PaaS中間件服務的Kubernetes集群、專門用作CI/CD服務的Kubernetes集群、專門用作提供大數據服務的Kubernetes集群等;

  • 跨多集群的服務/組件互聯互通;

  • 為了在試點階段降低風險,部分服務跑在集群內、部分服務跑在集群外 等場景。

02

與虛擬機對比,從容器本質考慮容器網絡方案

在容器的應用實踐過程中,除了應用場景,我們也從底層基礎設施的角度對容器進行了持續的思考。

從基礎設施的角度看容器: 容器和虛擬機的本質都是一樣的,是上層應用的承載基礎設施。

因此,從底層角度看,對容器網絡的需求跟虛擬機是一致的。那么,虛擬機網絡的落地模式是怎樣的呢?

為啥Underlay才是容器網絡的最佳落地選擇

如上圖右側部分所示,IaaS層的落地網絡方案可以認為是有行業標準的,不管是基于VMware 還是 OpenStack,基本都是采用OVS(或類似OVS)的二層 Underlay 網絡方案。

因此,從基礎設施的角度往上看,容器網絡采用跟 IaaS 類似的方案,即將虛擬機和容器放到同一個網絡層面上,是最合理的選擇。

PS:在公有云上,虛擬機都在VPC里,因此目前公有云的容器網絡方案,也是主要采用將容器和虛擬機放到同一個VPC中,可以直接互聯互通的方案。這也是對上述判斷的典型證明。

同時,對于部分客戶反饋的 Unberlay 網絡占用 IP 地址過多的問題,從虛擬機和容器的對比角度,也可以獲得合理的解釋:如果使用虛擬機部署,占用 IP 地址數量與容器 Underlay 網絡是一樣的。IP 地址的數量是由應用數量決定的,使用容器并沒有引入多余 IP 地址占用。另外,Ipv6已經開始規模落地,在Ipv6時代,IP 地址數量將不會是問題。

03

技術方案選型

容器典型的開源  Unberlay 網絡選型方案有 Calico 和 MACVLAN,這兩個方案的問題也比較明顯:

Calico :需要在數據中心路由器(或三層交換機)打開 BGP 路由協議,而 BGP 是廣域網的路由協議,一般在數據中心內部不會啟動,低端三層交換機/路由器對齊的支持情況也有風險。

MACVLAN: 幾年前有部分客戶采用此容器網絡方案,MACVLAN最大的問題就是社區活躍度已經很低,一些問題長期沒有在社區中解決。同時,面向未來的擴展性也比較差。

以上也是博云基于 OVS 自研 Underlay(也支持Overlay)網絡的原因。

04

總結

在容器網絡方案中,Overlay網絡方案有著對底層網絡要求低(落地過程不需要跟網絡部門打交道)、落地容易、IP地址占用少等特點,也有自己適用的特性需求場景。但是隨著越來越多的客戶將 Kubernetes 和容器大規模應用到生產環境中,博云客戶中選擇使用 Underlay 網絡模式的比例也越來越高。這讓我們更加明確認識到:

內外直通的Underlay網絡才是容器網絡的正確打開方式。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女