青云Qingcloud作為國內(nèi)頗有技術(shù)范兒的云廠商,擁有專業(yè)的分布式存儲(chǔ)QingStor和容器平臺KubeSphere 。在2020中國數(shù)據(jù)與存儲(chǔ)峰會(huì)現(xiàn)場上,QingStor研發(fā)負(fù)責(zé)人王煜回顧了支撐云原生架構(gòu)的存儲(chǔ)所需要的諸多技術(shù)方案,也提出了對于云原生存儲(chǔ)的三點(diǎn)看法,分享了已經(jīng)落地的云原生分布式存儲(chǔ)案例。
云原生帶來的存儲(chǔ)挑戰(zhàn)
在許多人看來,云原生能改變企業(yè)內(nèi)部開發(fā)運(yùn)維的流程,甚至能改變了一些團(tuán)隊(duì)的組織方式,云原生有望讓IT進(jìn)入一個(gè)理想化的狀態(tài),所謂IT理想化狀態(tài)是指,開發(fā)團(tuán)隊(duì)只需關(guān)注業(yè)務(wù)邏輯本身,減少對于運(yùn)維相關(guān)工作的關(guān)注,提高開發(fā)效率,提高業(yè)務(wù)創(chuàng)新效率。
云計(jì)算的發(fā)展正是在一步一步的接近這一理想狀態(tài),IaaS虛擬化提升了運(yùn)維效率,PaaS讓開發(fā)人員不需要關(guān)注太多基礎(chǔ)架構(gòu)層面的內(nèi)容。而現(xiàn)在,關(guān)于應(yīng)用開發(fā)、架構(gòu)管理、運(yùn)維的種種問題都寄希望于云原生架構(gòu),有賴于容器平臺來解決。
2020年,K8s已經(jīng)成為容器編排領(lǐng)域的標(biāo)準(zhǔn),隨著企業(yè)期望將更多關(guān)鍵性的應(yīng)用遷移到K8s平臺上,K8s上有越來越多的有狀態(tài)應(yīng)用,如何部署有狀態(tài)應(yīng)用成為K8s的焦點(diǎn)。
有狀態(tài)應(yīng)用的部署涉及兩方面問題:首先是服務(wù)間的拓?fù)湟蕾囮P(guān)系問題,K8s通過推出有狀態(tài)類型的API對象來解決這個(gè)問題。其次,企業(yè)數(shù)據(jù)落地存儲(chǔ)的問題,遺憾的是,K8s平臺不包含存儲(chǔ)的服務(wù),一些替代性方案或是可靠性欠佳或是無法支持持久化存儲(chǔ)。
云原生架構(gòu)下的存儲(chǔ)進(jìn)化
為了提供能支撐云原生架構(gòu)的存儲(chǔ),業(yè)內(nèi)出現(xiàn)了多種方案,比如, K8s發(fā)展出了新的PVC和PV機(jī)制,讓開發(fā)人員僅要關(guān)注PVC,運(yùn)維人員負(fù)責(zé)創(chuàng)建PV的人,把開發(fā)和運(yùn)維解耦。
最近,在容器存儲(chǔ)領(lǐng)域出現(xiàn)了一個(gè)叫CAS的理念,它是一種指導(dǎo)如何實(shí)現(xiàn)好的存儲(chǔ)產(chǎn)品的理念,具體包含三點(diǎn):
第一點(diǎn),存儲(chǔ)組件本身是否可以進(jìn)行容器化部署,并利用K8s本身的特性來運(yùn)維管理存儲(chǔ)集群。
第二點(diǎn),能否夠給K8s內(nèi)部的不同容器提供不同的卷配置的能力,例如QoS、ACL、塊大小、副本數(shù)量等。
第三點(diǎn),架構(gòu)上能否解耦。
目前,市場上已經(jīng)有了遵循CAS理念的開源存儲(chǔ)產(chǎn)品了,但QingStor研發(fā)部在測試中發(fā)現(xiàn)了一些問題,比如有的方案從架構(gòu)層面上來看,這些存儲(chǔ)產(chǎn)品并不是一個(gè)典型的分布式存儲(chǔ)架構(gòu),不具備分布式存儲(chǔ)的特性,性能很難滿足核心應(yīng)用場景的需求。
QingStor對于云原生存儲(chǔ)的思考
QingStor也正在思考如何設(shè)計(jì)產(chǎn)品,云原生架構(gòu)到底需要什么樣的存儲(chǔ),如何實(shí)現(xiàn)一款好用的云原生架構(gòu)下的存儲(chǔ)呢?王煜總結(jié)了四點(diǎn):
第一點(diǎn),要使用聲明式來描述存儲(chǔ)資源需求,這是K8s也提倡的操作。
第二點(diǎn),存儲(chǔ)的卷是否可以在短時(shí)間大量的創(chuàng)建和銷毀,這是全新的挑戰(zhàn)。由于容器數(shù)量比虛擬化平臺的虛擬機(jī)數(shù)量大得多,短時(shí)間內(nèi)快速的啟動(dòng)大量的容器對于存儲(chǔ)的壓力很大。
第三點(diǎn),是否能夠進(jìn)行容器粒度的卷管理。
第四點(diǎn),存儲(chǔ)的組件要能容器化部署,從而實(shí)現(xiàn)自動(dòng)化運(yùn)維。
云計(jì)算對分布式存儲(chǔ)本身提出的要求,在云原生的場景下會(huì)更加凸顯,比如,數(shù)據(jù)跟隨的能力,數(shù)據(jù)保護(hù)機(jī)制、彈性擴(kuò)容的能力,以及海量并行下的性能問題,這都是云原生架構(gòu)下對分布式存儲(chǔ)能力提出的挑戰(zhàn)。
王煜表示,企業(yè)在選擇云原生存儲(chǔ)架構(gòu)時(shí)候應(yīng)該注意以下三點(diǎn):
第一點(diǎn),要用分布式存儲(chǔ)。幾乎所有的專業(yè)存儲(chǔ)廠商都可以提供對接容器平臺的能力,但是只有分布式存儲(chǔ)才能非常完美匹配云原生應(yīng)用場景。
第二點(diǎn),云原生存儲(chǔ)應(yīng)該具備足夠的穩(wěn)定性以及擴(kuò)展能力。
第三點(diǎn),存儲(chǔ)組件要能容器化部署,要能利用容器平臺本身的集成管理和調(diào)度能力。
QingStor的云原生存儲(chǔ)實(shí)踐
作為可以在企業(yè)私有云環(huán)境下進(jìn)行獨(dú)立交付的分布式存儲(chǔ)產(chǎn)品線,QingStor 旗下有四款產(chǎn)品,分別是為極致性能而設(shè)計(jì)的NeonSAN,為海量非結(jié)構(gòu)化數(shù)據(jù)而設(shè)計(jì)的對象存儲(chǔ),為通用場景而設(shè)計(jì)的文件存儲(chǔ),以及一個(gè)提供多種接口的融合存儲(chǔ)。
QingStor NeonSAN是一款為核心業(yè)務(wù)設(shè)計(jì)的分布式存儲(chǔ),采用了比較多新的技術(shù),比如在軟件架構(gòu)層面針對SSD和NVMe進(jìn)行設(shè)計(jì),通過RDMA網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)副本間的復(fù)制,并且支持NVMe-oF的存儲(chǔ)訪問協(xié)議。同時(shí),QingStor NeonSAN虛擬卷和物理硬盤采用了直接映射的架構(gòu), IO路徑棧極短,充分釋放了底層物理硬盤的性能。
在性能測試中,QingStor NeonSAN的IOPS大幅領(lǐng)先 OpenEBS, Longhorn,Ceph-rook。在方案成熟度上,QingStor NeonSAN目前已有大量生產(chǎn)落地的案例。

QingStor NeonSAN目前已經(jīng)在企業(yè)客戶中有大規(guī)模生產(chǎn)環(huán)境的部署,最典型的使用場景就是公有云平臺上的云硬盤。私有云也有很多落地案例,覆蓋了包括金融、制造、能源、醫(yī)療、政府等行業(yè)。
QingStor NeonSAN在云原生架構(gòu)體系下做了很多針對性的優(yōu)化。
首先,QingStor NeonSAN可以完整支持 Kubernetes CSI存儲(chǔ)插件,平臺可以針對存儲(chǔ)做許多操作,比如創(chuàng)建、銷毀、克隆、備份卷等,不需要運(yùn)維人員提前創(chuàng)建容器所需的存儲(chǔ),開發(fā)人員通過聲明式描述存儲(chǔ)需求即可,存儲(chǔ)空間的創(chuàng)建和綁定過程是和應(yīng)用的創(chuàng)建過程同步完成的。
其次,QingStor NeonSAN實(shí)現(xiàn)了存儲(chǔ)組件自身的容器化部署,充分的利用K8s本身能力,比如,當(dāng)K8s 監(jiān)測到集群狀態(tài)發(fā)生變化時(shí),會(huì)觸發(fā) Operator來自動(dòng)化完成運(yùn)維管理的操作。把存儲(chǔ)運(yùn)維的操作變成了代碼并集成到了K8s平臺上。
這一能力使得存儲(chǔ)擴(kuò)容時(shí)間大大縮短,過去需要運(yùn)維人員手動(dòng)參與擴(kuò)容,過程通常是以小時(shí)計(jì),但是通過采用云原生架構(gòu)的方式進(jìn)行自動(dòng)化運(yùn)維后,整個(gè)擴(kuò)容時(shí)間降低到了分鐘級。

今年 9 月份,青云QingCloud 發(fā)布了容器存儲(chǔ)一體機(jī),軟件架構(gòu)是QingStor NeonSAN 與KubeSphere 容器平臺共同組成的,KubeSphere是青云QingCloud基于K8s 開發(fā)的開源容器平臺,目前在云原生社區(qū)收獲了廣泛的關(guān)注和好評。
QingStor希望通過一體機(jī)的方式,幫助企業(yè)快速擁抱云原生架構(gòu),落地云原生應(yīng)用。

容器一體機(jī)極易上手,能做到開箱即用,性能優(yōu)異,而且能穩(wěn)定運(yùn)行,容器一體機(jī)在云原生場景中進(jìn)行了測試。
第一個(gè)測試是批量創(chuàng)建100個(gè)pod和 pv卷,總耗時(shí)是 70秒,耗時(shí)遠(yuǎn)低于同類的容器存儲(chǔ)解決方案。第二個(gè)測試是使用FIO對單個(gè)pod進(jìn)行壓力測試,結(jié)果顯示可以達(dá)到10萬以上IOPS,以及亞毫秒的訪問時(shí)延。
QingStor NeonSAN基于第二代英特爾至強(qiáng)可擴(kuò)展平臺打造的,可確保在計(jì)算、存儲(chǔ)、網(wǎng)絡(luò)、軟件等多層面為企業(yè)客戶帶來性能強(qiáng)勁、安全可靠、簡單易用的軟件定義存儲(chǔ)解決方案,顯著降低系統(tǒng)部署的復(fù)雜度和TCO,與企業(yè)現(xiàn)有重要業(yè)務(wù)快速無縫銜接。
除此之外, QingStor NeonSAN適配英特爾® 傲騰(Optane™) 固態(tài)盤和英特爾®高速緩存加速軟件(Intel Cache Acceleration Sotware)等多項(xiàng)新技術(shù),實(shí)現(xiàn)超高吞吐與極低延時(shí),并且和英特爾共同對整體方案進(jìn)行了性能優(yōu)化,能夠充分應(yīng)對企業(yè)應(yīng)用的嚴(yán)苛挑戰(zhàn)。






