2020年,基礎架構領域什麼最火?熟悉IT架構的人一定會說:雲原生最火!為什麼越來越多的企業在努力擁抱雲原生呢?雲原生作為新的儲存架構對儲存帶來了什麼挑戰?要如何應對這一挑戰呢?
青雲Qingcloud作為國內頗有技術範兒的雲廠商,擁有專業的分散式儲存QingStor和容器平臺KubeSphere 。在2020中國資料與儲存峰會現場上,QingStor研發負責人王煜回顧了支撐雲原生架構的儲存所需要的諸多技術方案,也提出了對於雲原生儲存的三點看法,分享了已經落地的雲原生分散式儲存案例。
雲原生帶來的儲存挑戰
在許多人看來,雲原生能改變企業內部開發運維的流程,甚至能改變了一些團隊的組織方式,雲原生有望讓IT進入一個理想化的狀態,所謂IT理想化狀態是指,開發團隊只需關注業務邏輯本身,減少對於運維相關工作的關注,提高開發效率,提高業務創新效率。
雲計算的發展正是在一步一步的接近這一理想狀態,IaaS虛擬化提升了運維效率,PaaS讓開發人員不需要關注太多基礎架構層面的內容。而現在,關於應用開發、架構管理、運維的種種問題都寄希望於雲原生架構,有賴於容器平臺來解決。
2020年,K8s已經成為容器編排領域的標準,隨著企業期望將更多關鍵性的應用遷移到K8s平臺上,K8s上有越來越多的有狀態應用,如何部署有狀態應用成為K8s的焦點。
有狀態應用的部署涉及兩方面問題:首先是服務間的拓撲依賴關係問題,K8s透過推出有狀態型別的API物件來解決這個問題。其次,企業資料落地儲存的問題,遺憾的是,K8s平臺不包含儲存的服務,一些替代性方案或是可靠性欠佳或是無法支援持久化儲存。
雲原生架構下的儲存進化為了提供能支撐雲原生架構的儲存,業內出現了多種方案,比如, K8s發展出了新的PVC和PV機制,讓開發人員僅要關注PVC,運維人員負責建立PV的人,把開發和運維解耦。
最近,在容器儲存領域出現了一個叫CAS的理念,它是一種指導如何實現好的儲存產品的理念,具體包含三點:
第一點,儲存元件本身是否可以進行容器化部署,並利用K8s本身的特性來運維管理儲存叢集。
第二點,能否夠給K8s內部的不同容器提供不同的卷配置的能力,例如QoS、ACL、塊大小、副本數量等。
第三點,架構上能否解耦。
目前,市場上已經有了遵循CAS理念的開源儲存產品了,但QingStor研發部在測試中發現了一些問題,比如有的方案從架構層面上來看,這些儲存產品並不是一個典型的分散式儲存架構,不具備分散式儲存的特性,效能很難滿足核心應用場景的需求。
QingStor對於雲原生儲存的思考
QingStor也正在思考如何設計產品,雲原生架構到底需要什麼樣的儲存,如何實現一款好用的雲原生架構下的儲存呢?王煜總結了四點:
第一點,要使用宣告式來描述儲存資源需求,這是K8s也提倡的操作。
第二點,儲存的卷是否可以在短時間大量的建立和銷燬,這是全新的挑戰。由於容器數量比虛擬化平臺的虛擬機器數量大得多,短時間內快速的啟動大量的容器對於儲存的壓力很大。
第三點,是否能夠進行容器粒度的卷管理。
第四點,儲存的元件要能容器化部署,從而實現自動化運維。
雲計算對分散式儲存本身提出的要求,在雲原生的場景下會更加凸顯,比如,資料跟隨的能力,資料保護機制、彈性擴容的能力,以及海量並行下的效能問題,這都是雲原生架構下對分散式儲存能力提出的挑戰。
王煜表示,企業在選擇雲原生儲存架構時候應該注意以下三點:
第一點,要用分散式儲存。幾乎所有的專業儲存廠商都可以提供對接容器平臺的能力,但是隻有分散式儲存才能非常完美匹配雲原生應用場景。
第二點,雲原生儲存應該具備足夠的穩定性以及擴充套件能力。
第三點,儲存元件要能容器化部署,要能利用容器平臺本身的整合管理和排程能力。
QingStor的雲原生儲存實踐
作為可以在企業私有云環境下進行獨立交付的分散式儲存產品線,QingStor 旗下有四款產品,分別是為極致效能而設計的NeonSAN,為海量非結構化資料而設計的物件儲存,為通用場景而設計的檔案儲存,以及一個提供多種介面的融合儲存。
QingStor NeonSAN是一款為核心業務設計的分散式儲存,採用了比較多新的技術,比如在軟體架構層面針對SSD和NVMe進行設計,透過RDMA網路進行資料副本間的複製,並且支援NVMe-oF的儲存訪問協議。同時,QingStor NeonSAN虛擬卷和物理硬碟採用了直接對映的架構, IO路徑棧極短,充分釋放了底層物理硬碟的效能。
在效能測試中,QingStor NeonSAN的IOPS大幅領先 OpenEBS, Longhorn,Ceph-rook。在方案成熟度上,QingStor NeonSAN目前已有大量生產落地的案例。
QingStor NeonSAN目前已經在企業客戶中有大規模生產環境的部署,最典型的使用場景就是公有云平臺上的雲硬碟。私有云也有很多落地案例,覆蓋了包括金融、製造、能源、醫療、政府等行業。
QingStor NeonSAN在雲原生架構體系下做了很多針對性的最佳化。
首先,QingStor NeonSAN可以完整支援 Kubernetes CSI儲存外掛,平臺可以針對儲存做許多操作,比如建立、銷燬、克隆、備份卷等,不需要運維人員提前建立容器所需的儲存,開發人員透過宣告式描述儲存需求即可,儲存空間的建立和繫結過程是和應用的建立過程同步完成的。
其次,QingStor NeonSAN實現了儲存元件自身的容器化部署,充分的利用K8s本身能力,比如,當K8s 監測到叢集狀態發生變化時,會觸發 Operator來自動化完成運維管理的操作。把儲存運維的操作變成了程式碼並整合到了K8s平臺上。
這一能力使得儲存擴容時間大大縮短,過去需要運維人員手動參與擴容,過程通常是以小時計,但是透過採用雲原生架構的方式進行自動化運維後,整個擴容時間降低到了分鐘級。
今年 9 月份,青雲QingCloud 釋出了容器儲存一體機,軟體架構是QingStor NeonSAN 與KubeSphere 容器平臺共同組成的,KubeSphere是青雲QingCloud基於K8s 開發的開源容器平臺,目前在雲原生社群收穫了廣泛的關注和好評。
QingStor希望透過一體機的方式,幫助企業快速擁抱雲原生架構,落地雲原生應用。
容器一體機極易上手,能做到開箱即用,效能優異,而且能穩定執行,容器一體機在雲原生場景中進行了測試。
第一個測試是批次建立100個pod和 pv卷,總耗時是 70秒,耗時遠低於同類的容器儲存解決方案。第二個測試是使用FIO對單個pod進行壓力測試,結果顯示可以達到10萬以上IOPS,以及亞毫秒的訪問時延。
QingStor NeonSAN基於第二代英特爾至強可擴充套件平臺打造的,可確保在計算、儲存、網路、軟體等多層面為企業客戶帶來效能強勁、安全可靠、簡單易用的軟體定義儲存解決方案,顯著降低系統部署的複雜度和TCO,與企業現有重要業務快速無縫銜接。
除此之外, QingStor NeonSAN適配英特爾® 傲騰(Optane™) 固態盤和英特爾®快取記憶體加速軟體(Intel Cache Acceleration Sotware)等多項新技術,實現超高吞吐與極低延時,並且和英特爾共同對整體方案進行了效能最佳化,能夠充分應對企業應用的嚴苛挑戰。
總結
QingStor產品家族在雲原生場景下,進行了很多針對性的研究和最佳化,能夠非常好地幫助企業快速落地雲原生架構和應用,並實現全棧國產自主可控的能力,為企業生產資料保駕護航的同時,最大程度發掘資料的價值。