中國數字經濟資訊與服務平臺

UCloud彭晶鑫:如何打造120萬IOPS云盤

2019年5月下旬,UCloud在京舉辦用戶大會,此次大會上發布了許多新品,同時介紹了一些對原有產品的更新和強化。

UCloud技術副總裁楊鐳在大會現場談到云計算產品時,特別提到了云主機的市場地位,有數據顯示云主機產品貢獻了云計算市場65%的營收,確實,云主機通常是上云要接觸的第一個產品,云主機作為云計算基礎產品非常很重要,2019年的此次發布會上,圍繞云主機相關的有幾項更新,其中筆者最感興趣的還是RSSD的云盤產品,為此筆者現場采訪了UCloud塊存儲研發總監彭晶鑫,就這款120萬IOPS的云盤產品進行了深度交流。

云盤的優勢與局限

RSSD是一款云盤,云盤作為供云主機使用的隨機可讀寫的塊設備存儲,需要具備持久化、高可靠、低延遲的特性,分布式的系統設計可以避免單點故障,需要以多副本冗余保證數據的可靠性和可用性,用戶基本的使用方式跟硬盤一樣,但云環境下又有很多便利性。

通常在云環境下,云盤存儲與云主機相互獨立,這樣設計的好處是在線遷移和宕機恢復中體現的最為明顯,由于數據就在獨立的云盤塊存儲里,無需硬盤數據遷移,只需遷移內存和寄存器中的數據即可快速完成在線遷移;當宕機故障發生的時候,可以快速在另外一臺虛擬機上分配CPU和內存,整體的恢復速度會快很多。

另外,由于云盤通常采用的池化設計,用戶可以自己按照需求定義云盤的大小,可以輕易做到非常大的容量,比如UCloud能做到100TB,大容量的好處非常明顯,用戶在使用中就不需要在一個主機里同時掛載多塊云盤了,只用這一塊盤就可以了,降低了管理的復雜度,同時單盤容量越大對應性能也會有一定比例的提升。

圖:UCloud塊存儲研發總監彭晶鑫

想把容量做大并不是一件簡單的事兒,UCloud塊存儲研發總監彭晶鑫解釋說,單盤容量變大的技術挑戰主要在于元數據管理,元數據的存儲和讀取效率是主要問題,2017年,UCloud塊存儲研發團隊重新設計了元數據模型,大大減少了元數據的數據量,最終可以把單盤容量做到很大,于是才有了現在從32TB到100TB的單盤容量。

據悉,UCloud可提供兩種類型的云盤:一種是普通的云盤,用的是機械硬盤,另外一種是SSD云盤,普通云盤的IOPS大概是1000左右,時延大概是5-10ms之間,而SSD云盤的IOPS能輕松達到2.4萬,而且時延能降低到0.5-3ms左右。

不過,這樣的性能表現在一些場景下仍然是不夠用的,與物理機的NVMe固態盤所提供的動輒百萬IOPS的性能相比,仍有不少差距,如果云端性能僅限于此,那么,這樣的云顯然是不完整的,用戶需要性能更強的云盤。

百萬IOPS的RSSD

在UCloud的存儲產品家族中,RSSD是一款增強版的SSD云盤,IOPS能達到120萬,時延能降低到0.1ms,在128隊列壓測性能時,時延低至400us, 它是UCloud云服務產品能力的重要支撐,也是市面上極具競爭力的產品。

RSSD是一款塊存儲,頭文字“R”一語雙關,R既可以代表Rapid,強調快的特性,高IOPS低延遲,因為這是一款基于企業級NVMe SSD打造的性能型云盤,“R”的另外一個含義是RDMA,因為在優化過程中在RDMA層面做了很多創新。

本質上,RSSD用的是企業級的NVMe SSD,所以,價格上相比原來基于SATA SSD的普通SSD云盤會貴出一截,NVMe SSD開放出了很多能力,所以也留出了很多優化空間,不過,性能想進一步提升其實面臨很多技術障礙。

在RSSD中,UCloud使用的并非標準的NVMe協議,但硬件本身并沒有太多定制化的成分,主要還是標準化的NVMe SSD。在一些實現上,為了優化性能表現都采用了優化過的私有協議,在發布會現場,彭晶鑫總結了4個技術方面的要點。

  1. 在Client側利用了vhost user技術,通過vring共享內存,最終讓虛擬機與存儲客戶端之間實現了零拷貝;
  2. 網絡層,用RoCE(RDMA over Converged Ethernet)替代了原來的TCP協議,繞開了系統內核,提升了傳輸效率,使得4K網絡包收發延遲降低到了10微秒內的級別;
  3. 存儲方面,用SPDK替代了libaio完成存儲IO讀寫,可以以用戶態IO讀寫,即使是在高并發下,依然可以保持比較低的時延;
  4. 整體的IO路徑都工作在用戶態,RSSD還使用了線程輪詢的模式,減少用戶態內核態切換,也就減少中斷帶來的損耗。

RSSD的軟硬協同設計帶來結果非常顯著,最終在128隊列時,4K IOPS達到了120萬。UCloud提供的實測數據顯示,在與一些友商的同類產品相比時,在IOPS和延遲方面,均有好幾倍的優勢。

從技術實現的思路來看,每當需要極致性能的時候,系統設計通常會選擇進行offload,從系統層,到內核層,到直接繞開CPU,通過極致的專有設計提升性能,這一思路在如今的許多創新架構中都非常常見。

當前,云盤性能進一步提升的瓶頸主要還受限硬盤本身,如今隨著基于閃存的技術和創新的閃存存儲方案越來越多,優化的空間還有很多。彭晶鑫表示,下一階段,將考慮采用一些基于Open-Channel協議的SSD,以及一些持久內存等創新性的存儲方案,也就是說,還會進一步努力降低延遲,提升IO體驗。

性能以外,數據安全至關重要

性能以外,RSSD對應有數據方舟來提供數據安全服務,彭晶鑫介紹說,數據方舟是為UCloud 云主機磁盤提供連續數據保護的服務,采用異構解耦的方式將數據復制到另外一個集群,當原有的集群受到影響時,備份集群沒有任何干擾,這是數據方舟方案的一大特點。

數據方舟可以記錄實時的IO流,可以恢復到一定時間段內的任意一秒,比如當用戶誤刪除操作之后,可以用數據方舟進行恢復。彭晶鑫介紹說,數據方舟的應用其實已經非常普遍了,幾年前的勒索病毒橫行,數據被加密之后都不可用了,而UCloud的數據方舟能將數據恢復到中毒前的狀態,還意外破解了勒索病毒。

從RSSD的優化表現上,我們已經看到UCloud在基礎設施層面的創新能力,相信未來還會看到UCloud團隊在軟硬件協同領域有更多的探索,持續優化產品性能。(文/朱朋博)

未經允許不得轉載:DOIT » UCloud彭晶鑫:如何打造120萬IOPS云盤
分享到: 更多 (0)
河北快3推荐号码今天