數據中心如何實現傳統網絡與容器網絡的架構共存

1、概述
隨着數據中心網絡技術的革新,並伴隨容器的落地,如何在數據中心內部構建一個合理可用的網絡架構,以知足不一樣形態的業務部署模式,成爲網絡從業人員愈來愈須要注重和考慮的方向。node

2、業務背景
針對互聯網數據中心,一般會愈來愈多的看到容器(k8s)做爲業務/服務的載體,各業務/服務間(pod間)彼此調用,造成容器集羣內的微觀網絡以及容器網絡與外部網絡的交互網絡。
如下從pod間調用、容器網絡選型、容器網絡架構、網絡隔離幾個方面進行闡述。網絡

3、pod間調用架構

  1. 同一node內pod間調用
    數據中心如何實現傳統網絡與容器網絡的架構共存
    ①pod(可理解爲終端)間經過容器網絡純內部交互,交互行爲發生在微觀的容器網絡內部,此時外部網絡無感知。
    ②pod間經過容器網絡組件編織的容器網絡彼此進行網絡傳遞行爲。
    ③在容器網絡內部,所有pod默認互通,且知曉真實的pod ip。負載均衡

  2. 不一樣node的pod間調用
    數據中心如何實現傳統網絡與容器網絡的架構共存
    ①pod間須要通過容器網絡→外部網絡進行交互,交互過程需提早將pod ip或cluster ip暴露至外部網絡,具體依據業務需求和網絡模型而定。
    ②node間經過底層網絡已實現網絡互通,本地node知曉自身的所有pod,或者說了解自己的容器網絡結構。
    ③node間須要將本地pod「宣告」至外部網絡,以實現pod「可見性」。
    ④在向外暴露pod以何種方式時,與選取的容器網絡組件有關。

4、容器網絡選型
容器網絡選型一般參照如下幾點:分佈式

  1. 業務實現方式;
  2. 網絡資源調配;
  3. 網絡擴展及靈活性;
  4. 對底層物理網絡的依賴度;
  5. 網絡資源的收放要求;

開源容器網絡組件按照網絡覆蓋類型大體可分爲:overlay和underlay,underlay相比overlay在傳輸效率、部署實現及維護等方面更有優點(詳細的各類容器網絡組件橫向比較,可自行查詢學習,此處不詳細展開)。
以calico爲例,做爲underlay的容器網絡解決方案,依靠動態路由協議bgp實現網絡互通,並經過原生的network policy解決容器間網絡隔離。
calico介紹:ide

  1. felix: calico agent,運行在每一個node節點上,負責配置各節點路由及 ACL信息來確保每一個pod的連通狀態;
  2. etcd: 分佈式鍵值存儲,負責保存全部node節點的網絡狀態信息,如:路有前綴信息、分發node節點信息、路徑屬性信息等;
  3. bird: 負責把路由信息分發到當前calico網絡,確保node間通訊的有效性;
  4. 簡單理解,calico可視做運行在node節點上的一個只有bgp功能的路由器(詳細的calico介紹,可參見calico官網:https://www.projectcalico.org
  5. calico支持e/ibgp鄰接關係,支持next-hop-self/next-hop-unchanged,建議優化bgp timer,開啓graceful restart功能;
    注:在外部網絡的架構上,咱們以當前數據中心流行的clos架構爲討論前提,筆者所在的數據中心底層網絡爲「3-stage」clos架構,且tor-leaf-spine之間爲ebgp關係,並多鏈路負載均衡。

5、容器網絡架構
calico建議組網架構以下圖:學習

  • BGP-RR落在master節點,集羣內的其餘node與RR創建iBGP,考慮到容器網絡穩定性,建議RR數量≥2:
    數據中心如何實現傳統網絡與容器網絡的架構共存測試

  • 集羣所有節點與外部網絡創建iBGP/eBGP:
    數據中心如何實現傳統網絡與容器網絡的架構共存

上述兩種組網架構,結合實際業務場景進行選擇,但不管哪一種結構,均須要作好網絡資源的科學合理規劃,包括但不限於:優化

  1. IP地址
  2. BGP鄰接關係選擇
  3. ASN規劃
  4. 路由收放策略
  5. 容器網絡與底層網絡的隔離需求
  6. 橫向擴展

備註:BGP在數據中心的設計與規劃,有別於運營商,重在經過好的設計縮短網絡故障時的「爆炸半徑」,筆者這裏推薦CUMULUS首席技術專家的一本COOKBOOK-「BGP in the Data Center設計

6、網絡隔離
環境隔離,例如:生產環境和測試環境隔離,這裏須要考慮:

  1. 以node爲環境最小粒度——隔離策略部署在外部網絡,可經過ACLs、VRF、Vxlan等;
  2. 以pod爲環境最小粒度——經過calico原生的network policy進行隔離;

7、總結當前數據中心隨着虛擬化/容器等技術的引進,對網絡結構提出更高、更精細的規劃需求,底層網絡的技術選取、架構模型將更多的影響虛擬/容器網絡的落地成本、實施難易度,所以須要網絡規劃者要在前期介入時,瞭解業務發展方向、技術發展方向及成本、靈活性等因素。

相關文章
相關標籤/搜索