分布式存儲(chǔ)在云時(shí)代找到了“新方向”

中關(guān)村在線
總體來說,高性能、高可用、快速交付、業(yè)務(wù)連續(xù)性、工作負(fù)載管理是云時(shí)代分布式存儲(chǔ)需要具備的五個(gè)特性,而只有這樣才能滿足對(duì)企業(yè)核心業(yè)務(wù)系統(tǒng)的支持需求。

云計(jì)算加速發(fā)展的勢(shì)頭愈演愈烈,企業(yè)IT人員聊的已經(jīng)不是“我們要不要上云計(jì)算?”,而是“怎樣上云?如何用好云?”那么當(dāng)企業(yè)張開雙臂擁抱云計(jì)算的時(shí)候,對(duì)原有的傳統(tǒng)IT架構(gòu)會(huì)造成多大沖擊?原有的傳統(tǒng)IT架構(gòu)能不能滿足上云的這些需求?從存儲(chǔ)架構(gòu)來說,無疑是不小的考驗(yàn)。

通常來講,主流的存儲(chǔ)類型可以分為塊存儲(chǔ)、文件存儲(chǔ)、對(duì)象存儲(chǔ)。當(dāng)然今天主要講的是塊存儲(chǔ)。傳統(tǒng)SAN存儲(chǔ)是過去人們經(jīng)常在討論的一種集中式塊存儲(chǔ),其交付給客戶的時(shí)候通常是以一種雙控架構(gòu)的形式出現(xiàn),可理解為背板專有硬件集成了兩個(gè)控制節(jié)點(diǎn),緊密耦合在一起,這使得在業(yè)務(wù)部署的時(shí)候會(huì)以“成對(duì)”的形式出現(xiàn),并且一對(duì)雙控和另一對(duì)雙控之間要互相通信,對(duì)網(wǎng)絡(luò)環(huán)境有著較高要求,企業(yè)不同業(yè)務(wù)部門的存儲(chǔ)系統(tǒng)難以發(fā)揮協(xié)同作用。

傳統(tǒng)的集中式塊存儲(chǔ)計(jì)算能力還是主要由控制器提供,所以計(jì)算力是受限的。打個(gè)比喻,傳統(tǒng)的綠皮火車,只有一個(gè)火車頭在跑,加容量只是不停的在后面一節(jié)一節(jié)的掛火車皮,它的性能無法得到線性的增長(zhǎng),可能你掛的越多,最后平均下來整個(gè)系統(tǒng)運(yùn)行的效率越慢。

此外,其需要專有的硬件設(shè)計(jì)以及專業(yè)的硬件架構(gòu),這也造成了其本身?yè)碛械挠布杀久黠@高于x86服務(wù)器,運(yùn)維起來也比較復(fù)雜。一般這種存儲(chǔ)出問題的話,基本上需要專業(yè)廠商派專業(yè)的服務(wù)人員來解決。由此可以看到,傳統(tǒng)的存儲(chǔ)如果想適應(yīng)云時(shí)代的需求,面臨著比較明顯的局限。

想讓存儲(chǔ)滿足云時(shí)代的要求,要滿足哪些特點(diǎn)?首先,要基于標(biāo)準(zhǔn)x86硬件、軟件/硬件冗余設(shè)計(jì),整體架構(gòu)高可用,存儲(chǔ)是數(shù)據(jù)的一個(gè)終點(diǎn),要通過計(jì)算、網(wǎng)絡(luò)最終把數(shù)據(jù)保存在存儲(chǔ)上。其次,根據(jù)業(yè)務(wù)架構(gòu)與規(guī)模進(jìn)行存儲(chǔ)架構(gòu)的調(diào)整。存儲(chǔ)能夠根據(jù)業(yè)務(wù)架構(gòu)的調(diào)整、業(yè)務(wù)規(guī)模的變化相應(yīng)的做靈活的調(diào)整。

再有,容量和性能擁有完整的Scale Out能力,讓性能和容量可以隨著節(jié)點(diǎn)線性增長(zhǎng)。同時(shí),開放的API、支持與業(yè)務(wù)耦合。需要做到軟件定義,需要提供開放的API,可以為不同的業(yè)務(wù)做耦合,不需要綁得那么緊。此外,統(tǒng)一管理、統(tǒng)一運(yùn)維。在管理和運(yùn)維方面,一定盡量簡(jiǎn)化運(yùn)維人員參與的復(fù)雜度,降低運(yùn)維成本,盡量讓存儲(chǔ)系統(tǒng)自己去運(yùn)維。

對(duì)于企業(yè)的核心業(yè)務(wù)系統(tǒng)來講,數(shù)據(jù)庫(kù)算是典型的應(yīng)用場(chǎng)景之一,這里面包括了傳統(tǒng)的業(yè)務(wù)系統(tǒng),比如Oracle、SQL Server、SAP,大部分的金融行業(yè)客戶或者傳統(tǒng)企業(yè)一定會(huì)用這種數(shù)據(jù)庫(kù),當(dāng)然也有一些面向分布式的解決方案,比如基于MySQL的分布式數(shù)據(jù)庫(kù),MySQL是目前比較流行的或者大多數(shù)客戶在新業(yè)務(wù)系統(tǒng)部署時(shí)候使用的開源數(shù)據(jù)庫(kù)。

舉個(gè)例子,某家保險(xiǎn)巨頭需要的存儲(chǔ)系統(tǒng)要具備足夠的穩(wěn)定性、足夠的性能,才放心讓它支撐核心業(yè)務(wù)系統(tǒng)。核心業(yè)務(wù)系統(tǒng)里面數(shù)據(jù)庫(kù)是最關(guān)鍵的,比如最常見的Oracle數(shù)據(jù)庫(kù),傳統(tǒng)企業(yè)用什么跑Oracle?基本上都是國(guó)外廠商的品牌,比如EMC、IBM或者Oracle一體機(jī)來跑Oracle數(shù)據(jù)庫(kù)。

為什么數(shù)據(jù)庫(kù)非常關(guān)鍵呢?比如說這個(gè)保險(xiǎn)客戶,所有的保單,客戶支付的保費(fèi)、賠付的金額,都要放在這個(gè)數(shù)據(jù)庫(kù)里面。如果這個(gè)數(shù)據(jù)庫(kù)出現(xiàn)任何問題,哪怕丟一筆數(shù)據(jù),如果這個(gè)客戶要做理賠,服務(wù)商不清楚他到底繳了多少錢、需要賠付他多少錢,這個(gè)產(chǎn)生的問題就非常大了。銀行更是一樣,存一筆錢進(jìn)去之后,這個(gè)數(shù)據(jù)丟了,對(duì)銀行和客戶都有很嚴(yán)重的影響。另外一個(gè)層面來講,新的業(yè)務(wù)系統(tǒng)要能夠基于當(dāng)前較為流行的Serverless、服務(wù)網(wǎng)格、容器K8S,可以將新的業(yè)務(wù)系統(tǒng)采用最新的架構(gòu)來做承載和部署。

如果剖析一些新的分布式存儲(chǔ)架構(gòu)的網(wǎng)絡(luò)拓?fù)?,可以看到前端的業(yè)務(wù)集群沒有任何變更,數(shù)據(jù)庫(kù)的服務(wù)集群,比如說三節(jié)點(diǎn)的Oracle RAC系統(tǒng),也沒有太大的變化。變化在哪?在整個(gè)萬兆網(wǎng)絡(luò)和存儲(chǔ)服務(wù)集群。傳統(tǒng)業(yè)務(wù)里,存儲(chǔ)是基于FC的存儲(chǔ),網(wǎng)絡(luò)是兩套網(wǎng)絡(luò),一套網(wǎng)絡(luò)是基于業(yè)務(wù)的傳統(tǒng)萬兆以太網(wǎng)絡(luò)或者千兆以太網(wǎng)絡(luò);另一套網(wǎng)絡(luò)是專門跑存儲(chǔ)的FC網(wǎng)絡(luò)。

當(dāng)做了存儲(chǔ)技術(shù)架構(gòu)的變更之后,從網(wǎng)絡(luò)層面來看就是統(tǒng)一架構(gòu)了,基于一套萬兆的以太網(wǎng)絡(luò)來實(shí)現(xiàn)的。存儲(chǔ)的網(wǎng)絡(luò)和業(yè)務(wù)的網(wǎng)絡(luò)整合,對(duì)運(yùn)維來說復(fù)雜度降低了,因?yàn)樗峭惶准軜?gòu)。此外,在存儲(chǔ)服務(wù)集群上可以看到網(wǎng)絡(luò)拓?fù)湎鄬?duì)比較復(fù)雜,因?yàn)橐粋€(gè)節(jié)點(diǎn)上面有四根網(wǎng)線來做業(yè)務(wù)的傳輸和網(wǎng)絡(luò)的傳輸,不過網(wǎng)絡(luò)的流量是可以做平均分配的,因?yàn)槠錄]有一個(gè)統(tǒng)一的入口,不像傳統(tǒng)的集中式存儲(chǔ),而是有兩個(gè)存儲(chǔ)網(wǎng)關(guān),所有的流量都要通過存儲(chǔ)網(wǎng)關(guān)與后端存儲(chǔ)來做通信。

分布式存儲(chǔ)的網(wǎng)絡(luò)流量、業(yè)務(wù)流量是均勻分布到所有存儲(chǔ)節(jié)點(diǎn)的,會(huì)將網(wǎng)絡(luò)流量和網(wǎng)絡(luò)壓力做了平均分配,可以實(shí)現(xiàn)對(duì)業(yè)務(wù)流量的分擔(dān),具備很大的容量擴(kuò)展和網(wǎng)絡(luò)并發(fā)能力的??梢哉f,是一個(gè)比較典型的傳統(tǒng)金融行業(yè)客戶對(duì)存儲(chǔ)和數(shù)據(jù)庫(kù)的使用架構(gòu)。

結(jié)語

總體來說,高性能、高可用、快速交付、業(yè)務(wù)連續(xù)性、工作負(fù)載管理是云時(shí)代分布式存儲(chǔ)需要具備的五個(gè)特性,而只有這樣才能滿足對(duì)企業(yè)核心業(yè)務(wù)系統(tǒng)的支持需求。

THEEND

最新評(píng)論(評(píng)論僅代表用戶觀點(diǎn))

更多
暫無評(píng)論