大家好,我叫袁經(jīng)凱,我來(lái)自阿里云,主要負(fù)責(zé)阿里云混合云存儲(chǔ)架構(gòu)方面的一些工作。這兩天我們聽(tīng)到了許多關(guān)于高性能存儲(chǔ)介質(zhì)和Fabric優(yōu)化的內(nèi)容。今天我的主題是混合云場(chǎng)景下的的高性能存儲(chǔ),嘗試從另外一個(gè)角度看待不斷演進(jìn)的高性能介質(zhì),也即是在具體場(chǎng)景下,特別是在和云結(jié)合的場(chǎng)景下,如何擁抱高性能存儲(chǔ)帶來(lái)的變化?以及相衍生的新的存儲(chǔ)產(chǎn)品形態(tài)等,這是我們當(dāng)前考慮的問(wèn)題。
我們首先回顧一下過(guò)去存儲(chǔ)介質(zhì)的發(fā)展,從早期的Hard Drive,到后來(lái)的SSD,以及最新的Persistent Memory(持久內(nèi)存)。Hard Drive大概在十毫秒左右的時(shí)延,到SSD是亞毫秒的時(shí)延,到Persistent Memory(持久內(nèi)存)直接到了納秒級(jí)的時(shí)延表現(xiàn),可以看到整個(gè)存儲(chǔ)介質(zhì)是在快速的進(jìn)化當(dāng)中。而從另外一個(gè)角度講,我們對(duì)存儲(chǔ)介質(zhì)的性能行為定義也在發(fā)生著變化。不光是單純的IOPS或者Throughput,現(xiàn)在也更加關(guān)注性能的可靠性和穩(wěn)定性方面。
而存儲(chǔ)介質(zhì)只是存儲(chǔ)系統(tǒng)的一部分,存儲(chǔ)系統(tǒng)的不同的部署形態(tài)對(duì)整個(gè)存儲(chǔ)性能也有很大的影響或約束。早期單機(jī)的類(lèi)似DAS直連的形態(tài),性能受限于外部總線的發(fā)展;在數(shù)據(jù)中心的部署下,會(huì)看到SAN或者NAS的存儲(chǔ)形態(tài),性能行為也受到Fabric的影響,如Ethernet、FC,InfiniBand和NVMe over fabric等;而在云環(huán)境下,特別是在混合云環(huán)境下,數(shù)據(jù)在公共云和專(zhuān)有云中之間自由流動(dòng),如何從用戶(hù)的角度實(shí)現(xiàn)統(tǒng)一的數(shù)據(jù)視圖以及統(tǒng)一的存儲(chǔ)性能表現(xiàn),是一個(gè)比較大的挑戰(zhàn)。
我們看一下云環(huán)境下工作負(fù)載的部署策略。從傳統(tǒng)的觀點(diǎn)來(lái)說(shuō),云端提供計(jì)算和存儲(chǔ)的彈性,適合動(dòng)態(tài)或較難預(yù)測(cè)的工作負(fù)載,同時(shí)提供更好的運(yùn)維管理能力;而私有的數(shù)據(jù)中心更多是IO或計(jì)算密集的場(chǎng)景,或者是對(duì)時(shí)延要求比較高的形態(tài),這也是傳統(tǒng)架構(gòu)的特點(diǎn)。
而如今,公共云在快速的演進(jìn)當(dāng)中,整個(gè)公共云的存儲(chǔ)生態(tài)也在不斷的擴(kuò)展,覆蓋更豐富的業(yè)務(wù)負(fù)載。例如,性能上阿里云發(fā)布了百萬(wàn)IOPS和亞毫秒時(shí)延的ESSD;而存儲(chǔ)形態(tài)上,提供OSS對(duì)象存儲(chǔ),容量型及性能型NAS,彈性的塊存儲(chǔ)服務(wù)等;而從上層的數(shù)據(jù)層面來(lái)看,提供緩存、消息隊(duì)列,以及RDS,NoSQL等多樣的數(shù)據(jù)服務(wù)。
但顯而易見(jiàn)的是,未來(lái)很長(zhǎng)時(shí)間都會(huì)是公共云、專(zhuān)有云共存的形態(tài)。所以,如何實(shí)現(xiàn)公共云和專(zhuān)有云之間數(shù)據(jù)的自由流動(dòng),如何做到業(yè)務(wù)無(wú)感知,用戶(hù)不需要關(guān)注數(shù)據(jù)的位置,實(shí)現(xiàn)數(shù)據(jù)的融合和自由遷移非常重要。
理想狀態(tài)下,公共云和專(zhuān)有云之間的連接應(yīng)該是如圖所示的狀態(tài),使得公共云的計(jì)算側(cè)能訪問(wèn)線下的數(shù)據(jù),線下計(jì)算能訪問(wèn)線上的存儲(chǔ),存儲(chǔ)和存儲(chǔ)之間能實(shí)現(xiàn)統(tǒng)一的管理,這是我們需要做到的。
這是當(dāng)前最常見(jiàn)的線下存儲(chǔ)和線上存儲(chǔ)之間的互聯(lián)狀態(tài)。將傳統(tǒng)的存儲(chǔ)陣列進(jìn)行擴(kuò)展,提供了與云相集成的能力,從而充分利用云端存儲(chǔ)在彈性和低成本,以及安全和高可靠性上的優(yōu)勢(shì),使得存儲(chǔ)陣列承載高性能場(chǎng)景之外更多的業(yè)務(wù)形態(tài),這是非常直觀的需求。
傳統(tǒng)存儲(chǔ)有分層和緩存的概念,以及容量層和性能層等這樣的分層結(jié)構(gòu)。很自然,我們可以把當(dāng)前云端存儲(chǔ),例如阿里云OSS存儲(chǔ)看作新的存儲(chǔ)層次。通過(guò)引入云緩存、云分層、云備份等服務(wù),可以按策略實(shí)現(xiàn)數(shù)據(jù)在本地的高性能存儲(chǔ)以及云端的自由放置,從而實(shí)現(xiàn)存儲(chǔ)在成本,安全和高可用上的優(yōu)化,這是一個(gè)直接的云集成解決方案。
另外,我們經(jīng)常會(huì)遇到的“Cloud Burst”問(wèn)題,需要云上彈性的計(jì)算能力解決云下動(dòng)態(tài)的數(shù)據(jù)處理需求。這時(shí)候線上的計(jì)算和線下的存儲(chǔ)如何互聯(lián),如何保持像線下計(jì)算訪問(wèn)線下存儲(chǔ)那樣的一致的性能行為,是要解決的一個(gè)問(wèn)題。
當(dāng)前的一個(gè)解決方案是“Colocation”的部署方式。線下的IDC實(shí)現(xiàn)企業(yè)托管的高性能存儲(chǔ)陣列和公共云高速連接PoP點(diǎn)的直接互聯(lián),從而保證云上計(jì)算服務(wù)對(duì)線下存儲(chǔ)的低時(shí)延訪問(wèn),使得計(jì)算能平滑遷移到云端。
當(dāng)然,這種場(chǎng)景有一些限制,受限于公共云高速連接以及IDC機(jī)房的地域分布限制,同時(shí)也無(wú)法支持跨域訪問(wèn)。而且還需要了解用戶(hù)的用戶(hù)場(chǎng)景對(duì)SLA的要求,然后根據(jù)鏈路時(shí)延進(jìn)行評(píng)估和可行性分析。
這是一個(gè)基于“Colocation“的典型的云分析業(yè)務(wù)場(chǎng)景。用戶(hù)在邊緣側(cè)(Edge Storage)進(jìn)行數(shù)據(jù)收集;邊緣側(cè)與Colocation服務(wù)下的高性能存儲(chǔ)通過(guò)數(shù)據(jù)復(fù)制服務(wù)進(jìn)行數(shù)據(jù)交互;而高性能存儲(chǔ)和ECS計(jì)算實(shí)例之間,基于高速的數(shù)據(jù)訪問(wèn),反復(fù)迭代計(jì)算生成訓(xùn)練模型,然后將模型同步到邊緣側(cè),在邊緣進(jìn)行推斷。
上面的云集成和“Colocation”兩個(gè)方案解決了線上存儲(chǔ)和線下存儲(chǔ)以及線下存儲(chǔ)和線上計(jì)算的集成,但是離我們理想情況還有一定的距離,也即如何把線上線下存儲(chǔ)作為資源池做統(tǒng)一的管理,從而對(duì)計(jì)算來(lái)說(shuō),如何做到存儲(chǔ)無(wú)差別,這也正是我們混合云需要解決的問(wèn)題。
我們提出高性能的混合云存儲(chǔ)網(wǎng)關(guān)的概念。
新興技術(shù)成熟度曲線(編者注圖)
Gartner在新興技術(shù)成熟度曲線中認(rèn)為云存儲(chǔ)網(wǎng)關(guān)是一個(gè)淡化中的存儲(chǔ)形態(tài),這里其實(shí)是把存儲(chǔ)網(wǎng)關(guān)單純的當(dāng)成傳統(tǒng)的協(xié)議橋接。而我們將網(wǎng)關(guān)看作一個(gè)演進(jìn)的存儲(chǔ)形態(tài):一方面,它會(huì)比其他存儲(chǔ)更靠近計(jì)算側(cè),它會(huì)擁抱高性能存儲(chǔ)介質(zhì)帶來(lái)的變化,比如SSD或者Persistent Memory,從而作為一個(gè)高性能Cache形態(tài);
而另一個(gè)方面,云存儲(chǔ)網(wǎng)關(guān)承載傳統(tǒng)SDS(軟件定義存儲(chǔ))的業(yè)務(wù),作為存儲(chǔ)虛擬化的一部分,幫助我們把線上線下的異構(gòu)存儲(chǔ)形態(tài)集成起來(lái),讓用戶(hù)的存儲(chǔ)成為一個(gè)整體。
我們實(shí)現(xiàn)了這樣的云存儲(chǔ)網(wǎng)關(guān),它可以看做是云存儲(chǔ)生態(tài)的一部分。對(duì)外的前端支持不同的存儲(chǔ)協(xié)議,包括iSCSI,對(duì)象或者NAS,后端對(duì)接我們的傳統(tǒng)數(shù)據(jù)中心和公共云。通過(guò)實(shí)現(xiàn)了一個(gè)虛擬化的存儲(chǔ)層次,既可以對(duì)接線上的不同的存儲(chǔ)生態(tài),像我們的云端OSS和NAS,也可以對(duì)接線下的存儲(chǔ)生態(tài),最終形成統(tǒng)一的Storage Pool(存儲(chǔ)池)的概念。我們也支持靈活的部署方式,既有Virtual Appliance(虛擬化設(shè)備),也有Bare metal(裸金屬)的部署。
整體上它實(shí)現(xiàn)了一個(gè)全局的緩存服務(wù),這種緩存服務(wù)與我們現(xiàn)有的分布式緩存在實(shí)現(xiàn)上有不一樣的地方。舉個(gè)例子,針對(duì)不同客戶(hù)的場(chǎng)景我們會(huì)有不同的一致性實(shí)現(xiàn),比如在多點(diǎn)協(xié)同的場(chǎng)景,很多只需要最終一致性的語(yǔ)義。所以云存儲(chǔ)網(wǎng)關(guān)會(huì)考慮混合云場(chǎng)景下性能和一致性間的多種權(quán)衡和實(shí)現(xiàn)策略,以適應(yīng)的不同業(yè)務(wù)需求。
所以,從宏觀的角度看云存儲(chǔ)網(wǎng)關(guān)的形態(tài),它可以支持線上線下部署,靠近線上線下計(jì)算側(cè)。用戶(hù)看到的是Global Name Space(全局命名空間),它將線上線下存儲(chǔ)結(jié)合起來(lái)形成統(tǒng)一的數(shù)據(jù)視圖,從而接入傳統(tǒng)的企業(yè)存儲(chǔ)和線上的存儲(chǔ)生態(tài),形成完整的生命周期管理。并以此解決混合云場(chǎng)景下的各種問(wèn)題,比如數(shù)據(jù)及應(yīng)用的平滑遷移,基于策略的成本管理控制等。
最后,我們看一下整個(gè)阿里云混合云存儲(chǔ)全景實(shí)現(xiàn)。
首先,我們支持云上云下快速的離線和在線的數(shù)據(jù)遷移。實(shí)際應(yīng)用中,我們幫助115網(wǎng)盤(pán)完成百PB級(jí)的數(shù)據(jù)遷移;我們支持?jǐn)?shù)據(jù)和應(yīng)用在云上云下的備份和容災(zāi),提供容災(zāi)一體機(jī)以及BaaS(Backup as a Service)和DRaaS(Disaster Recovery as a Service)服務(wù);我們提供硬件和軟件形態(tài)的云存儲(chǔ)網(wǎng)關(guān)和云存儲(chǔ)陣列,作為企業(yè)存儲(chǔ)生態(tài)的一個(gè)重要組成部分;同時(shí),我們和第三方的存儲(chǔ)陣列廠商進(jìn)行合作,提供靈活的集成策略,像SDK或VM,Container的等方式的集成,幫助傳統(tǒng)廠商快速實(shí)現(xiàn)云集成能力。
以上是整個(gè)阿里云混合云存儲(chǔ)的簡(jiǎn)單介紹。混合云存儲(chǔ)生態(tài)以及云存儲(chǔ)網(wǎng)關(guān)在不斷演進(jìn)當(dāng)中,我們后續(xù)會(huì)繼續(xù)關(guān)注如何針對(duì)現(xiàn)有的SSD和持久內(nèi)存做進(jìn)一步的優(yōu)化,這是我演講的主要內(nèi)容,謝謝大家!