圖:UCloud塊存儲(chǔ)研發(fā)總監(jiān)彭晶鑫

想把容量做大并不是一件簡(jiǎn)單的事兒,UCloud塊存儲(chǔ)研發(fā)總監(jiān)彭晶鑫解釋說(shuō),單盤(pán)容量變大的技術(shù)挑戰(zhàn)主要在于元數(shù)據(jù)管理,元數(shù)據(jù)的存儲(chǔ)和讀取效率是主要問(wèn)題,2017年,UCloud塊存儲(chǔ)研發(fā)團(tuán)隊(duì)重新設(shè)計(jì)了元數(shù)據(jù)模型,大大減少了元數(shù)據(jù)的數(shù)據(jù)量,最終可以把單盤(pán)容量做到很大,于是才有了現(xiàn)在從32TB到100TB的單盤(pán)容量。

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

不過(guò),這樣的性能表現(xiàn)在一些場(chǎng)景下仍然是不夠用的,與物理機(jī)的NVMe固態(tài)盤(pán)所提供的動(dòng)輒百萬(wàn)IOPS的性能相比,仍有不少差距,如果云端性能僅限于此,那么,這樣的云顯然是不完整的,用戶需要性能更強(qiáng)的云盤(pán)。

百萬(wàn)IOPS的RSSD

在UCloud的存儲(chǔ)產(chǎn)品家族中,RSSD是一款增強(qiáng)版的SSD云盤(pán),IOPS能達(dá)到120萬(wàn),時(shí)延能降低到0.1ms,在128隊(duì)列壓測(cè)性能時(shí),時(shí)延低至400us, 它是UCloud云服務(wù)產(chǎn)品能力的重要支撐,也是市面上極具競(jìng)爭(zhēng)力的產(chǎn)品。

RSSD是一款塊存儲(chǔ),頭文字“R”一語(yǔ)雙關(guān),R既可以代表Rapid,強(qiáng)調(diào)快的特性,高IOPS低延遲,因?yàn)檫@是一款基于企業(yè)級(jí)NVMe SSD打造的性能型云盤(pán),“R”的另外一個(gè)含義是RDMA,因?yàn)樵趦?yōu)化過(guò)程中在RDMA層面做了很多創(chuàng)新。

本質(zhì)上,RSSD用的是企業(yè)級(jí)的NVMe SSD,所以,價(jià)格上相比原來(lái)基于SATA SSD的普通SSD云盤(pán)會(huì)貴出一截,NVMe SSD開(kāi)放出了很多能力,所以也留出了很多優(yōu)化空間,不過(guò),性能想進(jìn)一步提升其實(shí)面臨很多技術(shù)障礙。

在RSSD中,UCloud使用的并非標(biāo)準(zhǔn)的NVMe協(xié)議,但硬件本身并沒(méi)有太多定制化的成分,主要還是標(biāo)準(zhǔn)化的NVMe SSD。在一些實(shí)現(xiàn)上,為了優(yōu)化性能表現(xiàn)都采用了優(yōu)化過(guò)的私有協(xié)議,在發(fā)布會(huì)現(xiàn)場(chǎng),彭晶鑫總結(jié)了4個(gè)技術(shù)方面的要點(diǎn)。

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

RSSD的軟硬協(xié)同設(shè)計(jì)帶來(lái)結(jié)果非常顯著,最終在128隊(duì)列時(shí),4K IOPS達(dá)到了120萬(wàn)。UCloud提供的實(shí)測(cè)數(shù)據(jù)顯示,在與一些友商的同類產(chǎn)品相比時(shí),在IOPS和延遲方面,均有好幾倍的優(yōu)勢(shì)。

從技術(shù)實(shí)現(xiàn)的思路來(lái)看,每當(dāng)需要極致性能的時(shí)候,系統(tǒng)設(shè)計(jì)通常會(huì)選擇進(jìn)行offload,從系統(tǒng)層,到內(nèi)核層,到直接繞開(kāi)CPU,通過(guò)極致的專有設(shè)計(jì)提升性能,這一思路在如今的許多創(chuàng)新架構(gòu)中都非常常見(jiàn)。

當(dāng)前,云盤(pán)性能進(jìn)一步提升的瓶頸主要還受限硬盤(pán)本身,如今隨著基于閃存的技術(shù)和創(chuàng)新的閃存存儲(chǔ)方案越來(lái)越多,優(yōu)化的空間還有很多。彭晶鑫表示,下一階段,將考慮采用一些基于Open-Channel協(xié)議的SSD,以及一些持久內(nèi)存等創(chuàng)新性的存儲(chǔ)方案,也就是說(shuō),還會(huì)進(jìn)一步努力降低延遲,提升IO體驗(yàn)。

性能以外,數(shù)據(jù)安全至關(guān)重要

性能以外,RSSD對(duì)應(yīng)有數(shù)據(jù)方舟來(lái)提供數(shù)據(jù)安全服務(wù),彭晶鑫介紹說(shuō),數(shù)據(jù)方舟是為UCloud 云主機(jī)磁盤(pán)提供連續(xù)數(shù)據(jù)保護(hù)的服務(wù),采用異構(gòu)解耦的方式將數(shù)據(jù)復(fù)制到另外一個(gè)集群,當(dāng)原有的集群受到影響時(shí),備份集群沒(méi)有任何干擾,這是數(shù)據(jù)方舟方案的一大特點(diǎn)。

數(shù)據(jù)方舟可以記錄實(shí)時(shí)的IO流,可以恢復(fù)到一定時(shí)間段內(nèi)的任意一秒,比如當(dāng)用戶誤刪除操作之后,可以用數(shù)據(jù)方舟進(jìn)行恢復(fù)。彭晶鑫介紹說(shuō),數(shù)據(jù)方舟的應(yīng)用其實(shí)已經(jīng)非常普遍了,幾年前的勒索病毒橫行,數(shù)據(jù)被加密之后都不可用了,而UCloud的數(shù)據(jù)方舟能將數(shù)據(jù)恢復(fù)到中毒前的狀態(tài),還意外破解了勒索病毒。

從RSSD的優(yōu)化表現(xiàn)上,我們已經(jīng)看到UCloud在基礎(chǔ)設(shè)施層面的創(chuàng)新能力,相信未來(lái)還會(huì)看到UCloud團(tuán)隊(duì)在軟硬件協(xié)同領(lǐng)域有更多的探索,持續(xù)優(yōu)化產(chǎn)品性能。(文/朱朋博)

分享到

zhupb

相關(guān)推薦