隨著互聯(lián)網(wǎng)以及移動互聯(lián)網(wǎng)的興起,非結(jié)構(gòu)化數(shù)據(jù)呈現(xiàn)指數(shù)級增長,存儲容量成為了大多數(shù)生成和使用大量非結(jié)構(gòu)化數(shù)據(jù)的用戶和企業(yè)面臨的首要挑戰(zhàn)。
用戶或者企業(yè)必須購買更多的存儲基礎(chǔ)設(shè)施,并將其堆疊在現(xiàn)有基礎(chǔ)設(shè)施之上。這種方法在非結(jié)構(gòu)化數(shù)據(jù)線性增長的情況下有效,但對于處理當今指數(shù)級增長的數(shù)據(jù)來說,既繁瑣又低效。
而對象存儲通過分布式系統(tǒng),將節(jié)點部署在任何需要的地方,都可以邊收集數(shù)據(jù)邊執(zhí)行分析,而不必通過網(wǎng)絡(luò)發(fā)送所有原始的非結(jié)構(gòu)化數(shù)據(jù)進行處理。這一高效而低成本的特性,使得對象存儲迅速取代了存儲區(qū)域網(wǎng)絡(luò)(SAN)和網(wǎng)絡(luò)連接存儲(NAS),成為了存儲界的新網(wǎng)紅。
實際上,早在1996年,美國卡內(nèi)基梅隆大學就將對象存儲作為一個研究項目提出來。隨后,加州大學伯克利分校也有推出類似的項目。2002年,F(xiàn)ilepool公司推出了基于內(nèi)容可尋址技術(shù)的Centera系統(tǒng),算是比較早期的對象存儲系統(tǒng)。
2006年,當亞馬遜推出AWS S3(Simple Storage Service)存儲服務(wù)后,正式將對象存儲作為一項云存儲服務(wù),引入云計算領(lǐng)域,從此開啟了對象存儲的黃金時代。
但在國內(nèi),對象存儲則起步較晚,領(lǐng)頭者也是鳳毛麟角,作為云計算領(lǐng)域的國家隊,天翼云于2013年走上了自主研發(fā)的道路,并在2015年實現(xiàn)了”跨區(qū)域復(fù)制“這一業(yè)內(nèi)領(lǐng)先的能力。
此后,更是發(fā)揮了中國電信帶寬優(yōu)勢,打造了一個強一致性的國家級存儲網(wǎng)絡(luò),讓用戶可實現(xiàn)就近訪問和讀寫數(shù)據(jù),大幅提升用戶體驗,并且提高開發(fā)者的效率。并攻克”廣域網(wǎng)環(huán)境下如何確保穩(wěn)定性“的技術(shù)難點,降低了網(wǎng)絡(luò)波動對存儲系統(tǒng)的影響,提升服務(wù)穩(wěn)定性。
就在2018年6月,天翼云和云上貴州已于6月底正式簽署《基礎(chǔ)設(shè)施協(xié)議》,這標志著自2018年2月28日中國內(nèi)地的iCloud業(yè)務(wù)由云上貴州負責運營后,中國電信天翼云將和云上貴州共同為iCloud提供云存儲服務(wù),該筆簽約是業(yè)內(nèi)目前最大的云計算存儲類訂單。
契機之下,雷鋒網(wǎng)與中國電信首席專家江峰進行了一次深度對話,還原天翼云打造”國家級存儲網(wǎng)絡(luò)“的歷程。
1
從12年的路標看未來
2009年,中國電信正式啟動”翼云計劃“ ,也就是天翼云的前身。
2012年8月,中國電信對外發(fā)布了云計算戰(zhàn)略及解決方案,成為國內(nèi)首家發(fā)力云計算的電信運營商。而彼時,天翼云對外提供的云服務(wù)還不是今天的OOS對象存儲服務(wù)。
”2012年,我們從集團調(diào)到云計算公司的時候,大家其實還不知道什么是對象存儲,只知道存儲就是磁盤陣列軟件系統(tǒng)?!敖鍖卒h網(wǎng)回憶到,雖是這樣說,站在2012年路標時的他也隱隱的感覺到,對象存儲是未來的一個發(fā)展方向。
但就在一年前,中國電信集團已經(jīng)為云計算公司集采了一批商用存儲,而這批設(shè)備使用的是CSRP規(guī)范,雖然也是S3的一種,但實際上卻是中國電信自己造的一稿規(guī)范,而基于這個規(guī)范開發(fā)的云產(chǎn)品上市之后,卻發(fā)現(xiàn)CSRP規(guī)范沒人用。
而為了給用戶一個好的體驗,江峰團隊決定將上層調(diào)度先規(guī)劃好,底層引擎仍然使用各家的產(chǎn)品,能滿足基本的可用要求即可。
然而在實踐中發(fā)現(xiàn),如果需要良好的性能,就要將它的產(chǎn)品拆開,要將上層的接口直接訪問底層引擎上。
”廠商知道這樣的性能好,但是他們不愿意暴露底層引擎接口。但廠家在引擎之上再封裝一套接口給我,性能就不行了。“擺在他們面前只有兩條路了,要么維持現(xiàn)狀繼續(xù)下去,要么自主研發(fā),完全做一套自己的存儲引擎。
”那個時候我們花了很多的時間去糾結(jié)到底要不要自己做,還是拿一套開源的修改一下,因為自己做還是很難的一件事情?!白罱K經(jīng)過不斷論證之后,天翼云存儲團隊決定了自己研發(fā),而且還決定了不基于任何開源。
一行行代碼敲下來,就在2014年,一款設(shè)計最大容量為256PB的OOS V4.0版本面世了。這是第一代分布式存儲引擎。
”當時我們認為256PB這一容量上限,可以滿足10年的需求?!敖寤貞浀?。
然而,就在OOS v4.0面世沒多久,需求就已經(jīng)超過了1000PB,而且要求在一個集群里搞定。面對這一情況,天翼云存儲團隊從頭開始研發(fā),將數(shù)據(jù)結(jié)構(gòu)全部進行調(diào)整,對于數(shù)據(jù)容量上限,也不再去設(shè)立目標。
不久之后,OOS v5.0版本也投入使用,不僅僅做到了數(shù)據(jù)結(jié)構(gòu)層面沒有了容量上限的,并且還實現(xiàn)了全國范圍內(nèi)的異地冗余,雖然不是強一致性的,但也是國內(nèi)首個可以實現(xiàn)異地冗余的對象存儲產(chǎn)品。
2
瞄準一個特性”死磕“
”從我們團隊這么多年的經(jīng)驗來說,對象存儲需要瞄準一個特性一直做下去,這個特性就是:低成本。“江峰對雷鋒網(wǎng)說到。
為了低成本這個特性,江峰這個團隊可謂是較勁腦汁。
在OOS V4.0開發(fā)之時,為了減少用戶存儲容量浪費,在保證數(shù)據(jù)穩(wěn)定的前提下,他們?yōu)榇鎯Φ臄?shù)據(jù)提供動態(tài)冗余算法,會根據(jù)用戶數(shù)據(jù)的具體情況,來決定是采用糾刪碼還是多副本更節(jié)省用戶的存儲空間。
通過動態(tài)冗余算法,天翼云可以一直將用戶存儲容量浪費減小到最低限度,既能保證數(shù)據(jù)的持久性還能為客戶降低成本。
軟件層面將成本降低之后,江峰又將目光瞄向了硬件層面。他發(fā)現(xiàn),要想增加單磁盤容量,就要增加介質(zhì)的磁密度。但受限于物理工藝,再要增加磁密度會變得越來越難了。而磁盤廠商在這樣的情況下,研發(fā)了疊瓦式磁盤,將密度再次提高。
熟悉的朋友比較清楚,疊瓦式磁盤(SMR)增加了容量,降低了成本,但這種技術(shù)應(yīng)用也帶來了問題與挑戰(zhàn)。磁道重疊后必須順序?qū)懭?,否則會對相鄰磁道的數(shù)據(jù)造成損壞。正因為如此,目前業(yè)內(nèi)常用的磁盤文件系統(tǒng),例如EXT/XFS等,由于需要隨機的修改數(shù)據(jù)從而無法運行在SMR磁盤上,這對SMR的應(yīng)用帶來了不小的困難。
因此,SMR技術(shù)一直都被業(yè)內(nèi)大多數(shù)企業(yè)”嫌棄“并不使用,而這也正是希捷和西數(shù)這兩家硬盤企業(yè)所頭疼的地方,并沒有相關(guān)的生態(tài)去支持他們這個產(chǎn)品,也就導致了這種磁盤并沒有文件系統(tǒng)可以使用。但在那時,微軟Azure等極個別國際云計算巨頭卻規(guī)模商用SMR磁盤。
這一切都被江峰看在眼里,因此在SMR磁盤上市的第一時間就聯(lián)系相關(guān)服務(wù)器和磁盤供應(yīng)商,開始了對SMR磁盤的測試。
經(jīng)過測試后,他們發(fā)現(xiàn)雖然SMR磁盤的應(yīng)用存在諸多技術(shù)挑戰(zhàn),但通過行業(yè)領(lǐng)先廠商的產(chǎn)品趨勢可以看到未來硬盤的發(fā)展方向,SMR技術(shù)將成為主流,即使未來會有諸如HAMR等進一步提升磁密度的技術(shù)出現(xiàn),只要寫數(shù)據(jù)寬度大于讀數(shù)據(jù)寬度,SMR技術(shù)就會一直存在。
因此天翼云OOS的研發(fā)團隊從2015年起就堅定不移的對Host Managed SMR進行自主研發(fā)。在軟件層做了大量的優(yōu)化、消除,解決了技術(shù)提升帶來的負面影響,突破了SMR的技術(shù)局限性,體現(xiàn)疊瓦式存儲給單碟存儲容量提升帶來的優(yōu)勢,既能夠提高單機存儲容量的上限,又可以避免帶來讀寫效率、讀寫性能上的瓶頸。
同時,結(jié)合OOS的特點,天翼云設(shè)計了可以兼容SMR磁盤的一套類似文件系統(tǒng)的Key-Value存儲系統(tǒng)——KVDisker。結(jié)合對象存儲的特性,KVDisker能夠有效降低SMR技術(shù)引用帶來的問題與風險,將技術(shù)與應(yīng)用完美融合,天翼云開創(chuàng)了將SMR磁盤有效應(yīng)用于云存儲服務(wù)領(lǐng)域的先河,此舉也將天翼云對象存儲成本降低了20%以上。
值得一提的是,KVDisker也是天翼云存儲團隊完全自主研發(fā),不基于任何已有文件系統(tǒng)(如EXT/XFS)及任何支持SMR的開源軟件,實現(xiàn)直接讀寫磁盤的技術(shù)。
在2015年,規(guī)模使用了SMR硬盤之后,江峰又將目光瞄向了服務(wù)器上,結(jié)合中國電信的實際情況之后,江峰向中國電信集團提出,要定制可以容納60個盤的服務(wù)器,而相比于其他廠商,大多廠商的服務(wù)器只能容納20多個盤而已。
容納60個磁盤的服務(wù)器,并只采用一路CPU,而通過這樣的方式,天翼云存儲團隊再將采購成本降低了50%以上,在實際使用中,服務(wù)器的CPU利用率也只有20%。
”之前跟互聯(lián)網(wǎng)公司相比,很多人都會覺得成本方面,對于天翼云來說是一個劣勢,通過我們不斷優(yōu)化之后,我們在成本方面具備了與互聯(lián)網(wǎng)公司同樣的優(yōu)勢?!岸谶@之后,如何將自己的優(yōu)勢放大,則也成為了江峰接下來考慮的重要方向。
如何做一個”國家級存儲網(wǎng)絡(luò)“
”2015年之后,我就在想中國電信的優(yōu)勢究竟是什么?中國電信的優(yōu)勢就是有網(wǎng)絡(luò),別人做分布式存儲都是建一個個資源池,看起來是把資源池連起來了,但實際上這些資源池只是在管理上連接起來了,數(shù)據(jù)平面沒有打通?!霸?016年一個知名的云計算大會上,江峰提出,要利用中國電信的帶寬資源,將國內(nèi)的所有資源池連接起來,做成一個國家級存儲網(wǎng)絡(luò)。
我們在前文中提到,在OOS v5.0時,中國電信就已經(jīng)實現(xiàn)了異地冗余,但是弱一致性的,也就是說,你在北京寫入數(shù)據(jù)之后,需要過一段時間才能備份到上海或者其他地方。
而現(xiàn)在,江峰所提出的國家級存儲網(wǎng)絡(luò)要實現(xiàn)的是強一致性的,用戶可實現(xiàn)就近訪問和讀寫數(shù)據(jù),大幅提升用戶體驗,并且提高開發(fā)者的效率,不用再擔心用戶在哪,要把資源建在哪里。
”國家級存儲網(wǎng)絡(luò)“事實上就是把全國的云存儲OOS資源池用高速網(wǎng)絡(luò)互連起來,對外呈現(xiàn)為一個統(tǒng)一的云存儲資源池,無論用戶通過哪個物理資源池訪問OOS,看到的都是同一個視圖。
”國家級存儲網(wǎng)絡(luò)“的核心技術(shù)在于以下三點:
一是如何高效管理數(shù)量眾多、規(guī)模巨大的資源池集群,這本身就是一個復(fù)雜的系統(tǒng)工程;二是如何讓每個用戶從不同的資源池看到同一個視圖,這不僅要求資源池之間具備”高速通道“,還要求OOS本身在擴展性、效率方面有精巧的設(shè)計;三是如何在相隔數(shù)千公里的多個資源池之間,既保證數(shù)據(jù)的一致性,又提供極低的延遲。
就在天翼云將資源池跨廣域網(wǎng)部署之后,他們發(fā)現(xiàn)廣域網(wǎng)環(huán)境經(jīng)常會發(fā)生網(wǎng)絡(luò)抖動的情況,而這一情況不解決的話,服務(wù)穩(wěn)定性很難保證。此外,江峰還發(fā)現(xiàn),在廣域網(wǎng)環(huán)境中,TCP網(wǎng)絡(luò)都不可靠,當數(shù)據(jù)跨越千里傳輸?shù)臅r候,你可能發(fā)出123,但經(jīng)過光網(wǎng)長距離傳輸,對方則有概率收到的是321,還不報錯。
后來經(jīng)過研究發(fā)現(xiàn),IPv4協(xié)議有一個弱點,校驗位不足的情況下會出現(xiàn)概率性的錯誤,但徹底解決這個問題并不是一件易事。
對此,內(nèi)部多次開會進行了溝通,最后,中國電信云計算分公司現(xiàn)任總經(jīng)理胡志強,提出了一個要求:必須要自主研發(fā)。
最終,江峰帶領(lǐng)團隊通過不斷努力,終于攻克了”廣域網(wǎng)環(huán)境下如何確保穩(wěn)定性“的技術(shù)難點,降低了網(wǎng)絡(luò)波動對存儲系統(tǒng)的影響,提升了服務(wù)的穩(wěn)定性。同時,基于全局元數(shù)據(jù)環(huán)技術(shù),實現(xiàn)了跨地域的分布式架構(gòu)”虛擬存儲網(wǎng)絡(luò)“和”業(yè)務(wù)場景敏感的數(shù)據(jù)交付“模型。
從那時起,中國電信的存儲網(wǎng)絡(luò)OOS就擁有了資源統(tǒng)一,就近訪問,多站點多活等功能,滿足用戶在強一致性和最終一致性間進行靈活選擇。
不僅如此,天翼云存儲團隊在此基礎(chǔ)之上針對部分政企客戶推出了高級特性,不僅保證其數(shù)據(jù)的安全,同時也降低其存儲成本。
就在這一網(wǎng)絡(luò)建成之后,天翼云存儲也獲得了當時業(yè)內(nèi)最大的一筆云存儲訂單:為云上貴州運營的iCloud提供底層云存儲服務(wù)。
而其所看重的,正是天翼云可以實現(xiàn)全國各地都可以實現(xiàn)就近服務(wù),這也使得,iCloud訪問同步速度更快,體驗大幅提升。
3
獨立之后,仍需苦練內(nèi)功
天翼云存儲網(wǎng)絡(luò)上的數(shù)據(jù)早已經(jīng)超過EB,在可用性上,已經(jīng)實現(xiàn)了數(shù)十個月內(nèi)每周的服務(wù)可用性超99.995%。而這也正是天翼云不斷堅持自主研發(fā)所取得的成果。
中國電信剛剛發(fā)布的財報顯示,2020年中國電信全網(wǎng)云計算收入達138億元,不光在以市場份額駁斥了運營商做不好云計算的理論。同時,中國電信是全球運營商中,第一家真正實現(xiàn)核心的IT系統(tǒng)去IOE的運營商,通過自主研發(fā)構(gòu)建了云網(wǎng)數(shù)智,全棧自研的體系,將技術(shù)能力轉(zhuǎn)化為數(shù)字化平臺推向市場。
此前,一紙任命書也正式官宣,中國電信要成立天翼云科技公司,這意味著天翼云將開始獨立運作,擺脫國企的體制限制,將有更大的自主權(quán),可以自主提升員工的薪酬水平,以靈活激勵機制吸引人才。
而這必然會將天翼云的目前的劣勢進一步填補,繼續(xù)苦練”內(nèi)功“,在此之下,天翼云未來可期。