【ESSD技术解读】ESSD Auto PL规格,引领IO性能弹性新方向
前言
作為 IaaS 最重要的核心組件之一,阿里云 ESSD 為云服務(wù)器 ECS 提供低時(shí)延、持久性和高可靠的塊存儲(chǔ)服務(wù),成為云廠商全閃塊存儲(chǔ)的業(yè)界標(biāo)桿。隨著越來(lái)越多的企業(yè)上云和核心應(yīng)用上云,以及容器和 Serverless 架構(gòu)的蓬勃發(fā)展,對(duì)塊存儲(chǔ) IO 性能的彈性能力提出了新的挑戰(zhàn)和需求。阿里云存儲(chǔ)團(tuán)隊(duì)在這種背景下推出了 ESSD Auto PL 新的云盤(pán)規(guī)格,把性能與容量解耦,提供 IO 性能按需供給兩大關(guān)鍵特性。本文結(jié)合塊存儲(chǔ)典型業(yè)務(wù)場(chǎng)景,介紹 Auto PL 新產(chǎn)品特性、揭秘背后的技術(shù)原理。
云存儲(chǔ)的IO彈性需求和業(yè)務(wù)痛點(diǎn)
隨著云原生技術(shù)的發(fā)展,越來(lái)越多的企業(yè)基于云計(jì)算的虛擬化、彈性擴(kuò)展及蓬勃發(fā)展的云原生技術(shù)的分布式框架,容器技術(shù)、編排系統(tǒng)、持續(xù)交付及快速迭代,構(gòu)建起大規(guī)模、彈性擴(kuò)展強(qiáng)、豐富的云上分布式業(yè)務(wù)場(chǎng)景;新的計(jì)算形態(tài)逐步往短周期、輕量化等方向發(fā)展,對(duì)塊存儲(chǔ) IO 性能彈性提出了更多需求(性能通常用 IOPS :Input/Output Operations per Second 和吞吐 BPS :Bytes per Second 來(lái)描述),以下是比較常見(jiàn)的業(yè)務(wù)痛點(diǎn):
- VM/容器批量啟動(dòng):計(jì)算實(shí)例啟動(dòng)時(shí),系統(tǒng)盤(pán)短時(shí)間內(nèi)消耗大量 IOPS 和吞吐 BPS
- 業(yè)務(wù)高峰:客戶業(yè)務(wù)面臨不可預(yù)期的突發(fā)場(chǎng)景,需要云盤(pán)以及 VM 具備短時(shí)的突發(fā)性能需求的彈性擴(kuò)展能力
- 周期性任務(wù)處理:OLAP/批處理在可預(yù)見(jiàn)的時(shí)間內(nèi)周期性的提交海量任務(wù),需要云盤(pán)具備突發(fā)的彈性擴(kuò)展能力
傳統(tǒng)的塊存儲(chǔ)產(chǎn)品采用性能/容量耦合的產(chǎn)品設(shè)計(jì),用戶通過(guò)購(gòu)買(mǎi)云盤(pán)容量獲取相應(yīng)的 IOPS/BPS 性能上限,通過(guò)云盤(pán)擴(kuò)容同時(shí)獲得磁盤(pán)容量和 IO 性能。ESSD 支持 PL0/1/2/3 多種性能的檔位(PL:performance level),不同 PL 等級(jí)有不同 IO 性能上限,客戶可通過(guò)云盤(pán)變配功能提升 PL 等級(jí),從而得到更高的 IOPS/BPS 性能上限。云原生業(yè)務(wù)充分利用云的彈性能力,業(yè)務(wù)需求上量有個(gè)較長(zhǎng)的時(shí)間周期,通常會(huì)預(yù)留部分存儲(chǔ)性能余量。此外,相當(dāng)部分云上業(yè)務(wù)流量存在明顯的波峰波谷行為,大部分時(shí)間處于業(yè)務(wù)低負(fù)載期,且業(yè)務(wù)高峰期和峰值難以準(zhǔn)確預(yù)估。典型的 IO 流量突發(fā)型業(yè)務(wù)可能在一定時(shí)間內(nèi)出現(xiàn)一個(gè)或多個(gè)突發(fā) IO 流量,突發(fā)時(shí)間短、突發(fā)性能峰值高,常見(jiàn)于互聯(lián)網(wǎng)秒殺等突發(fā)業(yè)務(wù)場(chǎng)景,對(duì)性能規(guī)劃提出了新的挑戰(zhàn):如果性能配置預(yù)留過(guò)高,會(huì)造成日常資源的大量閑置浪費(fèi);而如果性能預(yù)留不足,業(yè)務(wù)突發(fā)洪峰會(huì)造成業(yè)務(wù)受損。總而言之,通過(guò)云盤(pán)擴(kuò)容/變配進(jìn)行較為精準(zhǔn)的性能規(guī)劃變得非常困難。
ESSD Auto PL
針對(duì)以上業(yè)務(wù)痛點(diǎn),阿里云推出了 ESSD Auto PL 產(chǎn)品規(guī)格,支持性能按需配置和按需突發(fā)兩個(gè)模式,支持 1000 IOPS/GB 的超高單位容量性能上限。性能按需配置主要面向可預(yù)期的周期性 IO 流量場(chǎng)景,用戶在新建 ESSD Auto PL 時(shí)除了選擇存儲(chǔ)容量,還可單獨(dú)配置額外的 IO 性能上限,實(shí)現(xiàn)了 IO 性能與容量解耦。針對(duì)可預(yù)期的 IO 洪峰,用戶可根據(jù)業(yè)務(wù)需求靈活調(diào)整 IO 性能,提供可預(yù)期的應(yīng)對(duì)能力。
對(duì)于難以預(yù)期的突發(fā)業(yè)務(wù)洪峰,Auto PL 支持性能按需突發(fā)模式,提供最大單盤(pán) 100W IOPS,4GB/s 的極限 IO 性能,云盤(pán)根據(jù)實(shí)際性能需求自動(dòng)調(diào)整,無(wú)需進(jìn)行 IO 性能預(yù)測(cè)和規(guī)劃,充分利用了 ESSD 分布式存儲(chǔ)的彈性能力,徹底解決了突發(fā)流量下的性能規(guī)劃問(wèn)題。該功能采用后付費(fèi)模式,用戶只需按實(shí)際發(fā)生超出預(yù)先配置性能的讀寫(xiě)次數(shù)付費(fèi), 保障業(yè)務(wù)穩(wěn)定運(yùn)行的同時(shí),最大化節(jié)省用戶的資源配置開(kāi)銷(xiāo)。以某大型互聯(lián)網(wǎng)電商某突發(fā)流量場(chǎng)景為例,該業(yè)務(wù)原來(lái)使用 ESSD PL1,性能上限為 50000 IOPS,350MB/s,在業(yè)務(wù)突發(fā)流量場(chǎng)景,有 2.3% 的云盤(pán)打滿 PL1 性能上限影響業(yè)務(wù),且業(yè)務(wù)峰值時(shí)間較短,流量峰值無(wú)法準(zhǔn)確預(yù)估。傳統(tǒng)的需要采用 ESSD PL2 來(lái)滿足業(yè)務(wù)突發(fā)流量,采用 ESSD Auto PL 并開(kāi)啟按需突發(fā)模式,業(yè)務(wù)存儲(chǔ) TCO 下降 49%。
Auto PL 仍然兼容了 ESSD PL1 的基準(zhǔn)性能,標(biāo)準(zhǔn)的 Auto PL 云盤(pán)性能表現(xiàn)與 ESSD PL1 完全一致,實(shí)現(xiàn)存量客戶 & 業(yè)務(wù)場(chǎng)景無(wú)縫切換。另外 ESSD Auto PL 在業(yè)界首次同時(shí)支持性能按需配置和性能按需突發(fā)兩種功能,并且可疊加使用,用戶可根據(jù)實(shí)際 IO 流量模型靈活配置。
Auto PL技術(shù)解析
作為第一個(gè)支持性能容量解耦同時(shí)支持性能按負(fù)載彈性伸縮的云盤(pán), ESSD Auto PL 需要解決很多技術(shù)上的挑戰(zhàn):比如如何快速感知業(yè)務(wù)的負(fù)載變化,如何動(dòng)態(tài)按需申請(qǐng)釋放資源支持性能伸縮,如何快速平衡負(fù)載調(diào)度等等。經(jīng)過(guò)反復(fù)打磨,ESSD Auto PL 云盤(pán)設(shè)計(jì)了細(xì)粒度的云盤(pán)切分機(jī)制,能夠讓它均衡使用整個(gè)后端存儲(chǔ)集群的資源并快速動(dòng)態(tài)調(diào)整;通過(guò)集群容量/性能水位實(shí)時(shí)監(jiān)測(cè)和調(diào)度、多級(jí) QoS 隔離等保障 IO 性能突發(fā)引入的流量沖擊和多租戶 IO 干擾等問(wèn)題。
云盤(pán)細(xì)粒度切分
ESSD Auto PL 支持最大 1000 IOPS/GB,遠(yuǎn)超 Nand SSD 單位容量的 IOPS 性能。每一塊 ESSD 云盤(pán)的 LBA 地址空間會(huì)被劃分為多個(gè)條帶組,條帶組的 IO 被分布式算法打散,分別被不同的存儲(chǔ)節(jié)點(diǎn)處理,以充分利用 RDMA 網(wǎng)絡(luò)和高性能存儲(chǔ)能力。ESSD Auto PL 設(shè)計(jì)了細(xì)粒度的地址空間管理機(jī)制,讓小容量云盤(pán)也可以充分打散到多個(gè)存儲(chǔ)節(jié)點(diǎn),實(shí)現(xiàn)更大范圍的 IO 調(diào)度能力,同時(shí)大范圍的 IO 調(diào)度能力也可以降低存儲(chǔ)集群?jiǎn)螜C(jī)熱點(diǎn)和部分 IO 長(zhǎng)尾延遲。
多租戶隔離和IO優(yōu)先級(jí)管理
EBS 作為典型的多租戶服務(wù),突發(fā)高吞吐/高 IOPS 流量潛在會(huì)影響低負(fù)載租戶的 IO 延遲,100W IOPS IO Burst 極致性能對(duì)隔離能力提出了更高的要求。ESSD 支持實(shí)例和云盤(pán)兩層 QoS,實(shí)例 QoS 提供多虛擬機(jī)之間的 IO 隔離能力,上限與用戶購(gòu)買(mǎi)實(shí)例的 vCPU 核數(shù)強(qiáng)相關(guān),部分小規(guī)格實(shí)例支持存儲(chǔ) credit burst 能力,可累積閑時(shí) IO quota 提供最大 30 分鐘的性能突發(fā)能力;云盤(pán) QoS 提供實(shí)例內(nèi)各云盤(pán)的性能上限,與云盤(pán)規(guī)格相關(guān)。從 VM 發(fā)出的 IO 從鏈路上依次通過(guò)云盤(pán)、實(shí)例兩級(jí) QoS,并進(jìn)行 Burst IO 流量打標(biāo),確保在流量擁塞場(chǎng)景下全鏈路能準(zhǔn)確識(shí)別 Burst 流量,保證非 Burst 流量得到優(yōu)先處理。針對(duì) Burst IO 流量引起的系統(tǒng)局部熱點(diǎn)和 IO 阻塞,實(shí)現(xiàn)了IO 流量 10 毫秒級(jí)別的業(yè)務(wù)負(fù)載感知和預(yù)測(cè),再秒級(jí)別完成動(dòng)態(tài)隊(duì)列調(diào)度和并發(fā)度調(diào)整,結(jié)合硬件卸載的隊(duì)列動(dòng)態(tài)分發(fā)機(jī)制、避免在多租戶場(chǎng)景下因?yàn)閺椥蕴嵘龓?lái)多租戶間的性能干擾。
多集群性能水位負(fù)載均衡
極致的 IO 性能彈性對(duì)性能 SLA 引入了新的挑戰(zhàn),特別是 IO 突發(fā)性能極限 100W IOPS 引入了更大的流量擁塞風(fēng)險(xiǎn),為此 ESSD 設(shè)計(jì)了新的多集群性能水位負(fù)載均衡機(jī)制。新的智能均衡調(diào)度機(jī)制由集群/存儲(chǔ)節(jié)點(diǎn)/IO 線程多級(jí)調(diào)度組成,根據(jù)云盤(pán)性能配置,實(shí)時(shí)監(jiān)控組件 IO 負(fù)載,實(shí)現(xiàn)集群內(nèi)秒級(jí) IO 負(fù)載均衡、分鐘級(jí)別集群間流量調(diào)度,當(dāng)集群/存儲(chǔ)節(jié)點(diǎn)間流量出現(xiàn)顯著性能水位差異時(shí),實(shí)時(shí)觸發(fā)云盤(pán)熱遷移,解決用戶大批量云盤(pán)負(fù)載同時(shí)升高的性能爭(zhēng)搶問(wèn)題。
總結(jié)
ESSD AutoPL 作為未來(lái) ESSD 的主售產(chǎn)品,覆蓋面積為當(dāng)前所有彈性計(jì)算面對(duì)的行業(yè)和客戶。AutoPL 具備的靈活性和彈性能力降低了 IT 規(guī)模規(guī)劃難度和因規(guī)劃不當(dāng)帶來(lái)的風(fēng)險(xiǎn),將會(huì)受運(yùn)維人員或IT資源采購(gòu)人員青睞。無(wú)論是阿里云新增客戶,還是存量客戶,ESSD AutoPL 都可以作為 ESSD PL1 的替代產(chǎn)品進(jìn)行購(gòu)買(mǎi)。AutoPL 為客戶的業(yè)務(wù)突發(fā)增長(zhǎng)提供了既經(jīng)濟(jì)實(shí)惠、又簡(jiǎn)單便利的使用體驗(yàn),期待大家廣泛使用 AutoPL 產(chǎn)品,并且給我們提寶貴的反饋,幫助我們做得更好。我們將繼續(xù)通過(guò)技術(shù)創(chuàng)新來(lái)提高 ESSD 的性能和服務(wù)質(zhì)量保障能力,提高用戶使用體驗(yàn),為客戶提供永不停機(jī)的計(jì)算服務(wù)。
原創(chuàng)作品:阿里云存儲(chǔ) 郗鑒
原文鏈接:https://developer.aliyun.com/article/796062?
版權(quán)聲明:本文內(nèi)容由阿里云實(shí)名注冊(cè)用戶自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,阿里云開(kāi)發(fā)者社區(qū)不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。具體規(guī)則請(qǐng)查看《阿里云開(kāi)發(fā)者社區(qū)用戶服務(wù)協(xié)議》和《阿里云開(kāi)發(fā)者社區(qū)知識(shí)產(chǎn)權(quán)保護(hù)指引》。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,填寫(xiě)侵權(quán)投訴表單進(jìn)行舉報(bào),一經(jīng)查實(shí),本社區(qū)將立刻刪除涉嫌侵權(quán)內(nèi)容。總結(jié)
以上是生活随笔為你收集整理的【ESSD技术解读】ESSD Auto PL规格,引领IO性能弹性新方向的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Linux系统TCP内核参数优化总结
- 下一篇: 阿里云IoT何云飞:智物Cloud AI