1. 程式人生 > >UCloud可支撐單可用區320,000伺服器的資料中心網路系統設計

UCloud可支撐單可用區320,000伺服器的資料中心網路系統設計

開發十年,就只剩下這套架構體系了! >>>   

2018年10月份,UCloud資料中心基礎網路完成了V4新架構的落地,自此,新建的資料中心(下簡稱DC)全面升級到25G/100G網路,極大提升了DC容量和DC間互聯的效能。V4架構下的單可用區可提供320,000個伺服器接入埠,是此前V3架構的4倍。並且支援無損網路特性,提供可用區資源的水平擴充套件和滾動升級能力。上線以來,新架構有力保障了UCloud福建GPU可用區開放、北京二可用區B/C/D擴容等需求。

對比雲產品通過軟體的靈活性來創造豐富的使用者價值,公有云物理網路更注重規劃的前瞻性與設計的合理性。其目標是簡單、穩定、高效。通過對上層虛擬網路提供極度可靠的、一維定址的邏輯連通面,來幫助實現上層產品“軟體定義一切”的使命。下文就將詳述我們秉承這種理念設計DCN V4架構的細節。

UCloud DCN V3架構設計

UCloud公有云以可用區(下簡稱AZ)為最小資源池單位對外提供服務,一個可用區由一個或多個數據中心組成。UCloud資料中心基礎網路架構(下簡稱DCN)在2016年升級到V3架構,如下圖所示:

圖:UCloud DCN V3架構

V3架構的設計目的:

全面升級到10G接入、40G互連; 徹底拆掉了堆疊,避免了堆疊的種種弊端; 採用了兩級CLOS、Spine-Leaf架構,實現了一定的水平擴充套件能力; 資料中心核心交換機為Spine,提供標準的BGP路由接入,TOR/Border為Leaf;業務伺服器的閘道器落在TOR Leaf上;DC的 Border Leaf連線都會網路POP機房,實現DC到DC外的互通,一個DC即一個可用區。 V3解決了V2時代堆疊和MC-LAG的弊端,CLOS架構有水平擴充套件能力,全網統一接入方式提升了網路部署效率。

V3上線後,適逢UCloud發力建設海外節點,為首爾、東京、華盛頓、法蘭克福等節點在短時間內的快速落地,提供了有效支撐。

V3架構的新挑戰

近兩年,隨著UCloud業務高速發展,以及25G/100G網路裝置的成熟,業務對網路的效能提出了全新需求,V3架構逐漸顯示出一些不足之處,主要如下:

效能不足 分散式計算、實時大資料、NVMeoF等的發展,要求網路提供更大的頻寬和更低的時延,以及服務質量保證。

以NVMeoF為例,網路儲存比起傳統儲存,在網路裝置轉發、傳輸、TCP/IP協議棧上有額外開銷。近來RDMA技術的成熟,極大降低了TCP/IP協議棧開銷,提升了IO效能。但我們在實踐中發現,V3架構下的輕微擁塞,可能造成大量RMDA報文重傳,佔用相當頻寬並造成業務效能下降,這種網路效能上的瓶頸需要突破。

容量不足 使用者常希望在一個可用區有無限的資源可以擴容。V3的兩級CLOS架構水平擴容能力,最終受限於Spine裝置埠數,一個DC網路大概能容納的規模為一兩萬臺伺服器或一兩千個機架。而一座機房可以有上萬甚至上十萬的機架,在V3架構下,需要做多個DC網路,DCN之間通過POP互連互通,不但效能難以提升,而且成本巨大。

靈活性不足 全網統一接入方式,便於大規模上架佈線部署工作,確確實實提高了效率,但同時帶了靈活性下降。比如有的業務要求叢集伺服器二層可達,有的業務要求經典網路做Overlay……總之,整齊劃一的網路規劃不能滿足所有主流的業務需求。

DCN V4架構的設計與優化

為了解決上面的問題,2017年底開始,團隊對DCN架構進行重新設計、硬體選型和標準化,並於2018年10月份完成DCN V4整套方案並在新建資料中心落地,整體架構如下:

圖:UCloud DCN V4架構

新架構中,我們主要做了如下優化:

1. 硬體整體升級到25G/100G平臺 2017年底到2018年上半年,各商用交換機大廠的25G/100G網路裝置逐漸成熟,25G/100G光模組價格也趨於合理,同時GPU、實時大資料、NVMeoF等業務需求爆發,IO瓶頸從伺服器內部轉移到了網路上。因此,我們開始著手將硬體從10G升級到25G平臺。

我們從2017年底開始,對各主流交換機、光模組、光纖、伺服器網絡卡廠商的主流25G/100G產品進行了選型、交叉測試、線上小批量,投入了8個月的時間,累計交叉測試超過300個產品組合,最終確定整套25G/100G硬體產品。

本月已上線的福建GPU可用區,利用此架構,同時支援10G/25G物理網路。25G網路帶來更高的叢集運算效率,和普通可用區提供的GPU雲主機相比,整體效能翻倍,這對AI訓練這樣看重絕對效能的場景非常重要。

圖:GPU物理雲10G/25G閘道器叢集

2. 3級CLOS的設計

圖:2級CLOS

CLOS架構要求下一級裝置需要跟上一級裝置full-mesh,因此在V3的2級CLOS架構下,Leaf層的接入交換機(下簡稱AS)必須連線到所有Spine層的核心交換機(下簡稱DS),也就是2臺DS;如果設計為4臺DS,那麼AS就必須四上連到每一臺DS,複雜度直線上升。因此DCN整體容量取決於DS裝置的總埠數,DS裝置的槽位數越多、單槽位埠密度越大,那麼一個DCN可接入伺服器容量就越大。

圖:3級CLOS

V4改用新的3級CLOS設計。Leaf層的每一臺匯聚交換機(下簡稱CS)需要上連到所有Spine層的DS。比如一臺典型的CS是32埠100G裝置,16口上連DS,16口下聯AS:

設計的2臺DS,1臺CS出8個口連到DS1、8個口連到DS2,總共16個上連,每臺DS消耗8個埠; 如果設計的是4臺DS,1臺CS的16個上連口分成4組,每組4個口分別上連到DS1/2/3/4,每臺DS消耗4個埠; 如果是8臺DS,那麼1臺CS只需要消耗DS的2個埠…… 可以看到,設計的Spine層的裝置越多,每臺CS需要DS的埠數越少,可以接入的CS數量就越多,在其他條件不變的情況下,整個DCN接入容量就越大。

我們通過2級CLOS→3級CLOS的架構變化,使得整個DCN的接入容量得以提升,理論上,隨著硬體技術的發展,設計容量可以提升到無窮大。這就解決了DCN容量上的問題。按我們目前的設計,單DC容量最大可以提供80,000個伺服器接入埠,單可用區可達到320,000個,是DCN V3時代的4倍,能滿足UCloud所有地域未來幾年平滑擴容的需要。

3. POD的引入 2級CLOS變為3級CLOS之後,多出了一個匯聚層,我們把一組匯聚交換機及其下連的接入交換機、以及接入交換機帶的機架,總體稱為一個POD。單個POD提供一致的網路能力,包括:

一致的連線方式。一個POD裡,所有AS到CS的連線方式是一樣的,比如都是1100G單線互連或者都是2100G;所有伺服器到AS的連線也是一致的,比如每臺伺服器125G連到AS或者225G連到AS。 一致的網路特性。一個POD支援的網路特性是一樣的,比如支援ECMP、支援開啟QoS、支援直接接入到公網等。 這讓我們可以根據業務對網路效能和特性的要求,針對性的開設POD。

例如,當前的業務分割槽有公有云區、物理雲區、託管雲區、閘道器區、管理區、IPv6區等,其中公有云區、閘道器區、管理區、IPv6區對基礎網路的要求基本一致,在新的POD設計思路下,均合併為“內網POD”。而大資料區、雲端儲存區等網路IO極高的業務,則設定了“高效能內網POD”,具有每臺伺服器2*25G全線速接入的網路能力, 提供QoS和無損網路特性。此外,還有“綜合POD”應對要求公網/其他特殊網路需求的伺服器接入,“混合雲POD”提供裸金屬或使用者私有云接入等,滿足不同的業務需求,來解決靈活性問題。

總的來說,POD是按照網路能力設計的,滿足不同業務的需求,且能避免成本浪費,控制CAPEX,並避免按業務分割槽導致過多的網路分割槽,控制維護的複雜度。

4. DC Group UCloud公有云資源池分為“地域”(一般是一個地理上的城市)和“可用區”(簡稱AZ,兩個可用區一般距離10km以上,基礎設施隔離)兩級。

一個AZ可以包含多個DC,但實際上,由於V3架構下DC都是連線到POP、與其他DC互通,這就需要拉光纜、架設波分,帶來頻寬瓶頸和時延上升。所以即使兩個DC距離非常近,作為一個AZ資源池也不合適,作為兩個AZ則與AZ的距離要求相悖、也不合適。

圖:DC Group產生前後對比

V4架構提出了「DC Group」概念,將地理位置相近的DC間full-mesh連線起來,作為同一個AZ對外提供服務。帶來的好處有:

網路時延低。DC Group內的DC之間距離非常近,通常不超過10km,由此帶來的時延在0.1ms以內; 增加冗餘度和頻寬。由於DC之間距離近,光纜成本也低,我們可以增加更多的光纜連線,一方面保證足夠的冗餘度,另一方面增加足夠的頻寬; 可滾動升級。可以通過新建新一代DC的方式,滿足新業務在原AZ裡上線的要求,且對執行中的DC基本無影響。 例如,前段時間我們釋出了高效能SSD雲盤產品。在業務部署階段,恰逢北京二可用區D的空閒機櫃不多,如果等申請到新機櫃再部署,就浪費了寶貴的時間。而如果只把產品部署在新開的可用區,就無法照顧原可用區使用者的需要。

這個矛盾在DC Group架構下,就可以通過新增新DC得到良好解決。

總結

UCloud總體網路設計中,基礎網路的目標是「穩定」和「高效」。基礎網路通過組織物理線路、經典網路裝置和網路技術,形成了一張穩定而且高效能的網路底層,為上層業務提供IP連通性。基礎網路下承機房基礎設施、上接業務,需要解決「業務需求變化快」和「基礎網路升級難」這一對永恆的矛盾。DCN資料中心網路是基礎網路最重要的一個組成部分。

圖:UCloud總體網路設計

我們過去一年所重新設計的DCN V4架構,令新建的DC全面升級到25G/100G、支援無損網路特性、提升了DC容量和DC間的效能、提供了AZ資源的水平擴充套件和滾動升級能力。總而言之,平衡了「新需求」和「老架構」之間的矛盾,可以滿足數年的發展需求。未來,基礎網路會繼續緊跟技術發展潮流,為各公有云產品提供更穩定、更高