天天看點

【ESSD技術解讀-總篇】 雲上企業級存儲——打開存儲新次元,促進使用者核心業務創新

前言

提到企業級存儲,大家印象最深的是“高穩定”、“高性能”、“豐富的企業級特性”等關鍵詞;而說到雲計算,大家會想到“大規模”、“全球部署”、“彈性”、“服務化”、“智能化”、“即時開通"、“按量付費”這些鮮明特征。如果把兩者結合,會産生什麼樣的新存儲形态呢?雲上企業級存儲的目标就是将企業級存儲和雲的特點進行完美的融合,打開存儲更多新的次元,在保障使用者業務永續的同時,幫助使用者更好的進行業務創新。

【ESSD技術解讀-總篇】 雲上企業級存儲——打開存儲新次元,促進使用者核心業務創新

以塊存儲為例,常見的企業級解決方案是存儲區域網絡(Storage Area Network,簡稱 SAN),通過專用網路連接配接存儲陣列和業務主機,提供存儲統一管理和共享,并實作高性能低延遲的資料通路。但 SAN 存在成本高、運維複雜、可擴充性差等不足,而這些問題恰恰是雲技術最擅長的方面。為此,阿裡雲推出了基于 ESSD 雲盤的雲上企業級存儲,幫助使用者更好的滿足目前數字化轉型和創新的需要。

ESSD 企業級雲盤

ESSD 雲盤為使用者提供高可用、高可靠、高性能的塊級随機通路服務,并提供原生快照資料保護和跨域容災等豐富的企業特性。它于 2016 年啟動項目, 基于盤古 2.0 分布式存儲底座,采用 RDMA 和 NVMe SSD 全使用者态 IO 技術,并結合阿裡 10 多年分布式存儲自研技術積累, 在 2017 年首次亮相阿裡“雙11”購物節,承載資料庫和中間件等核心業務部分峰值流量,取得了驚豔的表現;于是在 2018 年開始在阿裡内部大規模推廣使用,并開始開放給部分外部客戶使用,都取得了非常積極的回報;在 2019 年 ESSD 雲盤大規模商業化,率先帶領雲盤進入了微秒時代; 2020 年推出普惠型規格 ESSD PL0,讓中小客戶也能擷取 ESSD 全閃技術的紅利;到 2021 年 9 月,ESSD 雲盤已經在 59 個可用區規模售賣, 95% 的阿裡雲頭部客戶選擇使用 ESSD, 成為最受歡迎的雲盤産品。

【ESSD技術解讀-總篇】 雲上企業級存儲——打開存儲新次元,促進使用者核心業務創新

作為雲産品服務,ESSD 雲盤提供服務化、安全、智能的運維管控服務,幫助使用者屏蔽了底層複雜的硬體和系統運維,以聲明式開放 API 友善使用者建構上層的業務系統。同時,ESSD 雲盤服務随着雲的基礎設施在全球部署輸出,無論是中心區域、還是本地雲、邊緣雲,更好的滿足使用者多樣化的部署需求。

ESSD 雲盤為使用者提供了三大方面的資料服務: 高穩定、高性能、高彈性的資料通路服務, 輕量、實時、彈性的原生快照資料保護服務,随時随地、容災多活服務。

在最基礎的資料通路方面,ESSD 雲盤提供了 9 個 9 的高可靠和 5 個 9 的高可用,并提供端到端的資料保護,百微秒低延遲和百萬 IOPS,支援自定義密鑰加密、線上擴容和秒級性能變配。并且在近期釋出按業務負載性能自動彈性伸縮的 ESSD Auto PL 雲盤,支援 NVMe 标準協定和共享通路, 以及滿足安全合規實體隔離的專屬叢集。

在基礎資料通路服務之上,ESSD 雲盤還為使用者提供了原生快照服務,幫助使用者更便捷的做好資料保護。它提供靈活的快照政策,并且在快照期間不影響前端 IO 讀寫性能, 能夠秒級完成快照的建立、復原和克隆,支援多塊雲盤建立一緻性組快照和應用一緻性快照, 提供快照跨區域複制,并且滿足雲原生和容器場景通過快照大規模批量建立雲盤進行實時通路的需求。

除了快照資料保護,為了更好滿足使用者多地域容災多活的需求,ESSD 雲盤新推出了異步複制服務,讓使用者“零”門檻起步,利用阿裡雲全球部署的基礎設施和網絡專線,實作異地容災架構。未來還會為使用者提供同步複制、跨區多活等更多容災服務。

ESSD 雲盤以服務為中心,結合雲和企業級存儲的特性,建構雲上企業級存儲服務。下面我們選取 ESSD 雲盤最新釋出的産品和功能特性,為大家做更詳細的解讀。

【ESSD技術解讀-總篇】 雲上企業級存儲——打開存儲新次元,促進使用者核心業務創新

ESSD Auto PL 高彈性 IO

ESSD Auto PL 雲盤的推出是為了應對很多使用者面臨的問題:無法準确預估業務峰值,在性能配置上難以做好精準規劃。如果性能配置預留過高,會造成日常資源的大量閑置浪費;而如果性能預留不足,業務突發洪峰會造成業務受損。ESSD Auto PL 雲盤希望幫助使用者解決這個困境,它支援性能指定配置的同時,支援按業務負載自動伸縮,單盤性能可以自動提升到最高 100 萬 IOPS,為不可預期的突發通路提供安全便捷的性能自動配置。在打開自動性能伸縮的情況下,使用者隻需按實際發生超出預先配置性能的讀寫次數付費,保障業務穩定運作的同時,最大化節省使用者的資源配置開銷。

【ESSD技術解讀-總篇】 雲上企業級存儲——打開存儲新次元,促進使用者核心業務創新

作為業界第一個支援性能容量解耦同時支援性能按負載彈性伸縮的雲盤,ESSD Auto PL 需要解決很多技術上的挑戰:比如如何快速感覺業務的負載變化,如何動态按需申請釋放資源支援性能伸縮,如何快速平衡負載排程等等。經過反複打磨,ESSD Auto PL 雲盤可以做到 10 毫秒級别的業務負載感覺和預測,在秒級别完成動态隊列排程和并發度調整,對單個雲盤細粒度切分能夠讓它均衡使用整個後端存儲叢集的資源并快速動态調整。不止于此,我們還解決另外兩個問題來掃除使用者的顧慮:

1. 通過對叢集容量-性能水位的實時監控預測和分鐘級跨叢集排程均衡,來滿足使用者大批量雲盤負載同時升高,可能超出單叢集性能上限的情況;

2. 通過多級 QoS 隔離和優先級管理,包括硬體解除安裝的隊列動态分發,IO 打标和執行代價評估重排等方法,避免在多租戶場景下因為彈性提升帶來多租戶間的性能幹擾。

通過這些技術,我們希望 ESSD Auto PL 雲盤簡化使用者的性能配置,更好助力使用者平滑度過業務的尖峰時刻。

NVMe 和 共享通路

随着閃存技術的迅速發展和普及,存儲媒體已經不再是存儲的瓶頸,而媒體之上的軟體處理成為最大瓶頸。NVMe 協定是針對高性能裝置新推出的資料通路協定,相比傳統的 SCSI 協定,它更加簡捷輕量,同時提供了豐富的擴充特性。 這次 ESSD 雲盤支援使用者使用 NVMe 協定更高效的通路資料,同時基于 NVMe Persistent Reservation 标準實作了雲盤共享通路。

很多主流的商業資料庫比如 Oracle RAC, SAP HANA 等需要使用磁盤共享通路來實作高可用, NVMe Persistent Reservation 為共享通路和權限管理提供了安全、輕量的支援,大幅縮短故障切換時間。同時,ESSD 雲盤還利用了硬體解除安裝技術将 NVMe 虛拟化延遲降低 30%, 并采用自研的 Solar-RDMA 網絡協定支援高效資料傳輸,并能夠秒級完成網絡多路徑的故障切換。

【ESSD技術解讀-總篇】 雲上企業級存儲——打開存儲新次元,促進使用者核心業務創新

輕量、實時、彈性的原生快照資料保護

ESSD 雲盤提供原生快照為使用者提供便捷的資料保護服務,本次釋出除了新增多盤一緻性快照組和應用一緻性快照外,還對快照體驗進行了極緻的更新優化,展現在“輕”、“快”、“彈”三個方面。

“輕”: 在快照建立期間不影響 IO 讀寫性能。很多使用者擔心建立快照影響 IO 性能,隻在業務低谷期才進行快照資料保護。我們對分布式快照算法和實作進行了大量優化,讓使用者可以抛開影響性能的顧慮,随時進行資料保護。從下圖的實測資料可以看到,對 2 塊正在大量寫入的 ESSD 雲盤建立一緻性快照時,前台寫入的延遲不變;我們也實測了另外 2 家友商的快照表現,會發現 IO 延遲增加接近 1-3 倍。

“快”: ESSD 雲盤快照可以在秒級内完成建立、復原和克隆,滿足使用者實時資料保護和 DevOps 快速編排上的需要。

“彈”: 随着雲原生和容器技術的普及應用,使用者希望能夠在短時間内拉起大量容器 Pod,我們對快照批量克隆雲盤并進行實時資料通路做了大量優化,能夠讓使用者在分鐘級拉起數千個 Pod 快速啟動運作。

【ESSD技術解讀-總篇】 雲上企業級存儲——打開存儲新次元,促進使用者核心業務創新

異步複制,跨域容災

資料是企業的核心資産,現實世界總會發生非人力可及的災難,導緻資料中心大面積停服,甚至造成資料丢失。資料異地容災是企業級客戶的普适需求,傳統的容災方案往往需要使用者自建容災中心、購買專線、以及投入大量人力運維和測試驗證,投入成本大、周期長。而雲計算服務在全球部署的基礎設施天然為使用者建構了随時随地的容災能力。ESSD 雲盤這次推出了異步複制服務,幫助使用者“零”門檻,随時按需進行跨地域資料容災。

在 ESSD 雲盤異步複制技術設計實作上,我們對雲盤一緻性組複制算法做了很多創新優化, 保證主從雲盤組的時序強一緻性和多重交叉校驗, 主盤前台讀寫性能無損; 同時在資料傳輸鍊路,確定最小增量資料複制,利用多路并發排程壓縮複制時間周期,并對網絡健康狀況進行實時檢測和切換;使用者在控制台輕點幾下滑鼠,即可随時開通異步複制服務,隻需按實際使用量來付費。

【ESSD技術解讀-總篇】 雲上企業級存儲——打開存儲新次元,促進使用者核心業務創新

ESSD 專屬叢集

部分雲上使用者希望對資料實施實體隔離以滿足行業規範需要, ESSD 專屬叢集既能讓使用者享有雲上的統一運維和軟硬體持續疊代的優勢,又可以獨占叢集滿足實體資源隔離和定制化的需要。

【ESSD技術解讀-總篇】 雲上企業級存儲——打開存儲新次元,促進使用者核心業務創新

全新一代高性能 ESSD PL-X 雲盤

ESSD 的高性能和豐富企業特性得到很多使用者的喜愛,我們也從和使用者的互動交流中學習很多,不斷打磨疊代來帶給使用者更好的雲盤體驗。很多使用者都回報希望 ESSD 在性能方面能更進一步,能夠滿足他們最苛刻性能場景的需求。我們也一直朝這個方向努力,這裡提前給大家帶來一個好消息,全新一代的高性能 ESSD PL-X 雲盤即将釋出邀測。

ESSD PL-X 雲盤相比之前性能最強的 ESSD PL-3 雲盤,4K 資料寫端到端延遲降低 70%,隻有 30 us; IOPS 提升 3 倍,最高達到 300 萬; 而吞吐從 4GB/s 提升到 15GB/s。 相比其他友商的高性能雲盤, ESSD PL-X 性能對比優勢更加明顯。

【ESSD技術解讀-總篇】 雲上企業級存儲——打開存儲新次元,促進使用者核心業務創新

ESSD PL-X 雲盤采用了最新的高速 RDMA 網絡和持久性記憶體技術,對資料鍊路進行深度優化,并通過創新的高并發讀寫一緻性協定,極緻壓縮了協定串行化開銷。同時考慮到持久性記憶體的機關成本要比 SSD 高一個數量級, ESSD PL-X 雲盤融合持久性記憶體和 NVMe SSD 存儲媒體,采用智能分層資料存儲管理,為使用者帶來最高的成本效益。

從我們目前的 FIO 實測資料看,ESSD PL-X 雲盤 4K 單路寫端到端延遲隻有 25.44 微秒, 這個延遲分解下來: 主機端虛拟化延遲 10.6 us,RDMA 網絡傳輸 13us, 存儲後端處理僅 1.8 us。

【ESSD技術解讀-總篇】 雲上企業級存儲——打開存儲新次元,促進使用者核心業務創新

我們還測試 ESSD PL-X 在資料庫場景下的表現,在 32 核 64 GB 記憶體的雲伺服器上部署 MySQL 8.0.18 社群版,通過 sysbench 壓測多家本地盤和雲盤的性能表現,可以從下圖看到,ESSD PL-X 雲盤在純寫純讀場景下性能都超出其它本地盤和雲盤。同時由于 ESSD 雲盤支援 16KB 原子寫,滿足 MySQL 關閉 double write 來更好的提升性能。我們還期望通過不斷優化持久化記憶體的彈性緩存算法來進一步提升性能,從右下圖可以看到,随着持久化記憶體作為讀 cache 命中率的提升,MySQL 讀性能還會不斷攀升。

【ESSD技術解讀-總篇】 雲上企業級存儲——打開存儲新次元,促進使用者核心業務創新

總結

ESSD 雲盤創新融合了雲和企業級存儲的特性,為使用者提供了更便捷、更智能的存儲服務體驗。我們相信,未來存儲不再是大家印象中的笨重的“鐵盒子”,雲上企業級存儲以服務為中心,打開存儲更多元度,讓存儲變得更加柔性和智能。ESSD 雲盤新的産品功能釋出朝這個方向邁出了一大步,“穩定安全高性能,普惠智能新存儲”,我們在路上!

原創作品:阿裡雲存儲 滿弓

繼續閱讀