雲上戰“疫”背後:快傑雲主機的技術擔當

新冠肺炎催生了辦公、醫療、教育等行業的“線上解決”,加速了各行業與“雲”的結合,也對不少服務企業提出了新的考驗:持續攀登的高併發、多連接,需要更加高性能穩定的雲平臺支撐,確保不宕機、不卡斷以及流暢穩定的雲上體驗。

在這場戰“疫”中,UCloud快傑雲主機歷經了多項考驗,在計算、網絡、存儲各方面均具備優異性能。其中,爲了響應“停課不停學”的號召,快傑雲主機爲小禾科技線上教育直播平臺提供了高性能穩定的雲資源支持,同時UCloud還免費提供直播帶寬和流量等資源,保障高併發場景下直播平臺及課程的順利進行。

 

快傑雲主機的優異表現依託於產品的技術優化,來看一組快傑雲主機的配置參數:搭載Intel最新Cascade Lake CPU、NVMe SSD硬盤、25G RDMA網絡,並通過最新的智能網卡提供硬件卸載。在這其中,每一項參數優化均經歷了諸多思路重建、革舊換新的技術更迭。

下面我們就來聊聊快傑雲主機的“破局”之路。

一、存儲“破局”

快傑雲主機搭載的NVMe SSD硬盤,採用64層3DNAND,支持8TB/s高速TRIM。支持性能出色的同時,NVMe SSD硬盤通過動態精確能耗控制,能源效率也比前代提升38%。

國內專業雲資源選型服務平臺 CloudBest 實驗室的報告中(阿里雲、騰訊雲、UCloud 、華爲云云主機對比測試報告),關於“磁盤性能”的測試結果如下:

圖:隊列深度7*16的【隨機讀寫】&【平均時延】

可以看到,快傑雲主機的I/O讀寫能力對比其他雲廠商最高可達到10倍的差距,平均時延可降低近6倍,磁盤性能的優勢非常出衆。

磁盤性能對於雲主機來講是非常重要的一個參數,快傑雲主機在雲盤優化方面做了很多工作,我們將這些工作用六個字來總結:要致富、先修路。

1、更高效的存儲架構:NVMe築基

要修路,先築基。從泥濘路徑到柏油馬路,決定的是道路的基礎質量保障,並且基礎架構設施的質量提升足以促進產品性能產生大幅度的飛躍。

同理,在快傑雲主機雲硬盤的基礎架構上,採用的便是行業內最優的NVMe存儲架構

與傳統的SATA架構不同的是,NVMe傳輸協議在誕生之初就充分利用了PCIe SSD的低延時以及並行性優勢,成爲計算存儲行業的大熱趨勢。

NVMe SSD比SATA快在哪裏呢?舉個例子,市面上性能不錯的SATA SSD,在隊列深度上可以達到32,然而這也是AHCI所能做到的極限罷了。而PCIe SSD下的隊列深度則需達到128,甚至是256才能夠發揮出最高的IOPS性能,NVMe解決了這個問題——在NVMe下,最大的隊列深度可達64K,此外,NVMe的隊列數量也從AHCI的1提高到了64K。

圖:NVME&AHCI隊列深度對比

同時,PCIe主控與CPU直接相連,對比SATA主控通過控制器中轉再連接CPU的方式, PCIe SSD因此具備更低的時延。可以看到,對比SATA,PCIe接口本身在性能上具備更高的優勢,再加上NVMe具有比AHCI更深、更寬的命令隊列,NVMe SSD成爲行業技術大勢也就不足爲奇了。

這便是快傑雲主機雲盤優化工作的第一步,NVME築基。

2、 更寬闊的通信道路:25G以太網加速

道路基礎修建好後,還有一個問題:如何最大化地提升道路通行速率呢?從單行道變爲八車道絕對是捷徑之一。

同樣,在快傑雲主機雲盤優化的工作中,我們採用了25G以太網絡替代傳統10G以太網,大大提升了存儲數據傳輸的速率。

目前大部分數據中心主要是基於10G以太網架構,隨着互聯網下數據的爆發式增長,數據中心必須通過增加與現有基礎設施並行的帶寬能力實現擴展,從而有能力處理不斷增大的數據負載。而25G便是下一代數據中心網絡帶寬和信道容量擴展的新方向。

相比10G,25G以太網具有增強計算和存儲效率的優點,能夠提供帶寬更高、速度更快的連接,我們可以把它看做加速2.5倍的10G以太網。此外,可以運行兩個25G通道實現50G,或運行四個通道實現100G,並且25G完全兼容10G以太網的相關物理標準,可以實現新舊應用的平滑遷移。

圖:25G以太網&10G以太網對比

25G以太網之於10G以太網便是單行道到八車道的飛躍,網絡帶寬能力的大幅提升幫助快傑雲主機實現數據傳輸的加速,從而助力磁盤性能提升。

3、更輕量級的傳輸路徑:RDMA降低延遲

近兩年國家大力普及高速公路ETC取代傳統的人工收費站模式,司機無需停車便可實現快速感應過車。與傳統收費模式相比,ETC耗時不到兩秒,通行能力是人工收費通道的5至10倍。可以預見到,一輛車可提高5-10倍的效率,那麼對整條高速路而言,就會是極大的通行速率提升。

我們這裏說到的RDMA便具備類似的功能。RDMA是一類通信協議,也是近幾年在雲計算/大數據領域非常火的一項新技術,它的全稱爲遠程直接數據存取,就是爲了解決網絡傳輸中服務器端數據處理的延遲而產生的。

在詳細介紹RDMA功能之前,先來了解下傳統TCP/IP通信模式的瓶頸。

傳統的TCP/IP網絡通信通過內核發送/接收消息,數據發送方需要將數據從用戶應用空間Buffer拷貝到內核空間的Socket Buffer中,並在內核空間中進行添加數據包頭、數據封裝等一系列操作。同樣,數據接收方也需要在內核進行大量數據包解析工作,並第二次拷貝到相應位置的用戶空間Buffer。

圖:TCP/IP&RDMA傳輸原理對比示意

在這樣複雜的傳輸過程中,內核承擔了極大的壓力,一旦遇到大量數據傳輸的情況,勢必會造成硬盤I/O讀寫能力的延遲。

RDMA則通過網絡把資料直接傳入計算機的存儲區,將數據從一個系統快速移動到遠程系統存儲器中,不會對內核造成太大影響。RDMA消除了外部存儲器複製和上下文切換的開銷,因而能解放內存帶寬和CPU週期用於改進應用系統性能。RDMA作爲快傑雲主機後端存儲的通信協議,實現收發包卸載到硬件,使得RSSD雲盤的延遲降低到0.1毫秒,從而大幅度降低數據處理的延時。

簡單來講,RDMA好比是ETC,省去了停車、溝通、繳費等複雜的步驟,避免成爲數據傳輸中的瓶頸,形成一個更輕量級的傳輸路徑。

除此之外,針對虛擬化IO路徑的性能瓶頸問題,我們使用SPDK VHost代替QEMU,實現虛機到存儲客戶端的數據零拷貝;在存儲引擎方面由SPDK代替libaio,高併發場景下依然可以保持較低的時延。

總的來說,通過一系列技術革新手段,使得快傑雲主機NVMe-SSD雲盤的磁盤性能達到最佳狀態。

二、網絡增強2.0的“破局”

當我們搭建好一個超高性能的雲硬盤,雲主機的優化工作就結束了嗎?

答案是,遠遠不夠。事實上,此時還會出現一個問題,那就是雲主機日益增長的高性能需求與落後的核心配置之間的矛盾。

而這個矛盾就是由傳統的內核CPU處理模式所帶來的。

1、CPU的侷限性

早期,服務器的功能較爲簡單,需要處理的數據運算量也不大,因而所有的應用處理均是由CPU內核完成的,此時的CPU作爲核心大腦是綽綽有餘的。

但是,隨着雲計算和大數據時代的來臨,雲主機的計算需求越來越高。舉個例子,雲主機會附加VNF的安全功能,而此類安全應用的處理與網絡傳輸不同的是,往往需要將數據包一一拆開做解析,對CPU的處理能力帶來極大的負擔。這時的CPU可以看作是拆東牆、補西牆的狀態,計算能力的大幅度消耗,勢必會帶來對其他應用的效率影響,從而造成雲主機整體性能的下降。

在這樣的背景下,網絡與計算的高效融合勢在必行。

2、網絡增強2.0:基於OpenvSwitch卸載的智能網卡方案

一開始,爲了解決雲主機的計算性能問題,產生了TOE技術(TCP offload engine),即將TCP連接過程中的相關計算工作轉移到專用硬件上,從而釋放CPU資源,而這個專用硬件就是早先的普通網卡。

不過,隨着Iaas的雲計算服務模式出現,雲主機需要承擔更豐富的網絡功能來滿足雲租戶的需求,例如任意配置IP的虛擬私有網絡、可擴展的4層負載均衡器、訪問控制列表等等。這便意味着網卡需要具備更高性能以備網絡性能的增強。

此時,智能網卡(Smart NIC)技術開始步入人們的視野。不同於傳統網卡,智能網卡同時具備高性能及可編程的能力,既能處理高速的網絡數據流,又能對網卡進行編程,實現定製化的處理邏輯。通過25G 智能網卡對網絡流量進行卸載也已經成爲業界的主流研究方向。

現階段,智能網卡的實現百花齊放,例如:AWS採用基於通用ARM的衆核方案、Azure採用基於FPGA的方案、華爲雲採用基於專用網絡處理器(NP)的方案、阿里雲採用基於可編程ASIC芯片的方案。就目前來看各個方案各有優劣,並沒有特別突出一統天下的方案。

在業界沒有非常完美的實現方案下,UCloud開始將目光轉向開源技術,由於OpenvSwitch本身支持基於Linux Tc Flower Offload卸載接口,並且能夠快速應用落地使用。最後,我們選擇了基於OpenvSwitch卸載的智能網卡方案。

圖:基於 Tc Flower Offload 的 OpenvSwitch 開源方案

Openvswitch是一個優秀的開源軟件交換機,支持主流的交換機功能,比如二層交換、網絡隔離、QoS、流量監控等,同時支持openflow,而openflow則定義了靈活的數據包處理規範,能夠提供L1-L4包處理能力。

我們在Openvswitch開源技術的基礎上解決了虛機遷移、VXLAN encap/decap 卸載、Ethernet over gre tunnel卸載等技術難點,在完善快傑雲主機智能網卡方案的基礎上,也與開源社區共享瞭解決手段。

目前,快傑雲主機的智能網卡硬件基於ConnectX-5搭建,支持PCIe4.0/3.0規範和25Gb/s網絡,適用於VM(包括SRIOV)、裸機(Bare Metal)和容器(Container)等多種場景。在上文提到的測評報告中,也對“內網質量”進行了測試,測試結果如下:

圖:內網平均每秒收包數(由多到少排列)

同等情況下,統計測試機每秒收到包的數量,接收小包的數量越多,內網質量越好。可以看到,UCloud快傑雲主機對比其他雲廠商有着近5倍的優勢,這也正是快傑雲主機智能網卡方案“網絡增強2.0”的定位所在。

三、典型應用場景

“紙上得來終覺淺,絕知此事要躬行”。說了這麼多,最後我們來看一個快傑雲主機的典型應用場景:Nginx是一個高性能的HTTP和反向代理web服務器,是網站門戶用戶的首選。Nginx具有併發能力非常強的特點,因此對運營主機的網絡能力要求非常高。

“CloudBest”也對該項指標進行了測評對比,如下圖,可以看到,UCloud快傑雲主機在Nginx每秒處理請求數上對比其他雲廠商高出一倍多。

圖:Nginx測試每秒處理請求數(由多到少排列)

基於此,愛普新媒選擇使用“快傑”搭建Nginx集羣,作爲API網關對其終端客戶提供服務,使其原有集羣內主機大幅度減少,並且在相同服務能力下成本減半。

除此之外,快傑雲主機在數據庫和Clickhouse場景下也具有明顯性能優勢,並已在PingCAP和TT語音的實際業務場景中實踐應用。

寫在最後

本文雖然講述的是快傑雲主機的技術建設歷程,但仍可窺見物轉星移下,雲計算技術革新的滾滾巨輪。隨着在大數據、人工智能、物聯網等領域的持續創新技術投入,UCloud將持續爲用戶提供“性能極致、使用便捷”的雲計算產品,帶來更好的雲上體驗。

發佈了65 篇原創文章 · 獲贊 4 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章