判斷超融合存儲(chǔ)優(yōu)劣的幾個(gè)原則初探(下篇)_第1頁(yè)
判斷超融合存儲(chǔ)優(yōu)劣的幾個(gè)原則初探(下篇)_第2頁(yè)
判斷超融合存儲(chǔ)優(yōu)劣的幾個(gè)原則初探(下篇)_第3頁(yè)
判斷超融合存儲(chǔ)優(yōu)劣的幾個(gè)原則初探(下篇)_第4頁(yè)
判斷超融合存儲(chǔ)優(yōu)劣的幾個(gè)原則初探(下篇)_第5頁(yè)
已閱讀5頁(yè),還剩6頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、判斷超融合存儲(chǔ)優(yōu)劣的幾個(gè)原則初探(下篇)判斷方法在本文所推薦的幾個(gè)原則,是透過ServerSAN產(chǎn)品體系架構(gòu)的分析,來判斷和比較產(chǎn)品的優(yōu)劣。除了技術(shù)分析之外,盡可能為大家提供一些簡(jiǎn)單的判斷方法,希望能夠有所幫助。(1)首先是通過塊數(shù)據(jù)存取方法來判斷系統(tǒng)的性能和效率。眾所周知,ServerSAN主要處理塊數(shù)據(jù),以計(jì)算虛擬化、數(shù)據(jù)庫(kù)等應(yīng)用為主,更多涉及企業(yè)的OLTPlk務(wù)應(yīng)用,大多屬于關(guān)鍵業(yè)務(wù)應(yīng)用。對(duì)于這類業(yè)務(wù)應(yīng)用而言,系統(tǒng)的可靠性、安全性至關(guān)重要。在滿足了這些條件的前提下,性能將是最終決定因素,這也是產(chǎn)品之間來開差距的指標(biāo)。如果僅僅從現(xiàn)有應(yīng)用著眼,會(huì)有用戶對(duì)于性能的效率和能力不以為意,但從長(zhǎng)遠(yuǎn)的

2、發(fā)展眼光,塊數(shù)據(jù)存取方法的不同,技術(shù)設(shè)計(jì)架構(gòu)的差異,所表現(xiàn)出的能力會(huì)有較大的區(qū)分。目前ServerSAN系統(tǒng)存取塊數(shù)據(jù),對(duì)于存儲(chǔ)介質(zhì)的訪問存在直接和間接的訪問方式的區(qū)分。所謂間接的訪問方式,就是借助ext2、ext3、ext4或者ZFS等Linux的文件系統(tǒng),來存儲(chǔ)和管理塊數(shù)據(jù),或者利用對(duì)象存儲(chǔ)系統(tǒng)將塊數(shù)據(jù)以對(duì)象的方式存取。這種數(shù)據(jù)訪問方式實(shí)現(xiàn)起來相對(duì)簡(jiǎn)單,但它們無法針對(duì)塊數(shù)據(jù)的特點(diǎn),以及設(shè)備的特性進(jìn)行性能優(yōu)化,訪問過程中需要對(duì)用戶的塊數(shù)據(jù)進(jìn)行多次轉(zhuǎn)換,比如將塊數(shù)據(jù)傳遞給文件系統(tǒng),由文件系統(tǒng)再將數(shù)據(jù)寫入存儲(chǔ)介質(zhì)。這種多層次的傳遞會(huì)造成系統(tǒng)性能損耗。用對(duì)象存儲(chǔ)來實(shí)現(xiàn)塊設(shè)備存儲(chǔ)存在更多問題,因?yàn)閷?duì)

3、象存儲(chǔ)中的對(duì)象通常是Immutable(不可改變的),而且對(duì)象存儲(chǔ)系統(tǒng)更加強(qiáng)調(diào)吞吐率,而塊設(shè)備中的數(shù)據(jù)是在不停的被修改的,并且塊設(shè)備更強(qiáng)調(diào)IOPS因此,間接的訪問存儲(chǔ)介質(zhì)的方式其性能很難達(dá)到最優(yōu)。與之相比,直接存儲(chǔ)方式會(huì)自己實(shí)現(xiàn)一個(gè)適合塊設(shè)備特性的精簡(jiǎn)文件系統(tǒng),直接對(duì)磁盤裸設(shè)備(RawDevice)直接操作和控制,可以在最大程度上充分利用磁盤設(shè)備的IOPS,從而達(dá)到系統(tǒng)硬件的極限。既然存在這樣的區(qū)分,因此對(duì)于用戶來說,很重要的一個(gè)任務(wù)就是能夠識(shí)別出哪些才是專業(yè)的九段產(chǎn)品,避免業(yè)余九段渾水摸魚。但在工作實(shí)踐的過程中,有什么樣的方法能夠幫助我們進(jìn)行鑒別呢?在此,個(gè)人給大家推薦的辦法是:就看Serv

4、erSAN系統(tǒng)管理的存儲(chǔ)介質(zhì)上,是否安裝了文件系統(tǒng)。如果存儲(chǔ)介質(zhì)上有文件系統(tǒng),那么便是間接訪問方式。這種鑒別方法未必100雉確,但絕大多數(shù)情況下是有效的??傊?,用戶對(duì)于系統(tǒng)存儲(chǔ)介質(zhì)的訪問方式需要保持高度的重視。(2)IO請(qǐng)求所經(jīng)過的網(wǎng)絡(luò)路徑。所謂IO請(qǐng)求路徑,通常包括幾個(gè)部分:接收外部(如虛擬機(jī)的)10請(qǐng)求、尋址即將外部IO請(qǐng)求轉(zhuǎn)換為(ServerSAN)系統(tǒng)內(nèi)部請(qǐng)求、將內(nèi)部I0請(qǐng)求發(fā)至相應(yīng)的存儲(chǔ)節(jié)點(diǎn)以實(shí)現(xiàn)數(shù)據(jù)訪問。在一個(gè)ServerSAN系統(tǒng)中,通常會(huì)由客戶端塊設(shè)備驅(qū)動(dòng)來負(fù)責(zé)接收外部I0請(qǐng)求,其處理方式亦尋址方式有多種:有些需要查詢?cè)獢?shù)據(jù)庫(kù)(MetadataStore,用于存放內(nèi)部數(shù)據(jù)塊的元

5、數(shù)據(jù),包括數(shù)據(jù)塊在哪個(gè)存儲(chǔ)節(jié)點(diǎn)上的信息);有的則利用ConsistentHashing的方法,直接計(jì)算出IO請(qǐng)求對(duì)應(yīng)的內(nèi)部存儲(chǔ)地址,從而達(dá)到省略查詢?cè)獢?shù)據(jù)庫(kù)的目的。此外,將內(nèi)部請(qǐng)求發(fā)送到存儲(chǔ)節(jié)點(diǎn)也有多種方式:以副本為3份的寫請(qǐng)求為例,有的是將數(shù)據(jù)依次寫入3個(gè)存儲(chǔ)節(jié)點(diǎn),如此就涉及3個(gè)網(wǎng)絡(luò)跳轉(zhuǎn);也有的是將數(shù)據(jù)先寫入主節(jié)點(diǎn)(Primary),再由主節(jié)點(diǎn)發(fā)給另外兩個(gè)從節(jié)點(diǎn),如此需要兩個(gè)網(wǎng)絡(luò)跳轉(zhuǎn)。另外一種方式是同時(shí)廣播給3個(gè)存儲(chǔ)節(jié)點(diǎn),如此只涉及一個(gè)網(wǎng)絡(luò)跳轉(zhuǎn)??蛻舳薎/O請(qǐng)求0K*I1外地址二塊設(shè)備驅(qū)動(dòng)f元數(shù)據(jù)庫(kù)41$內(nèi)部地址存儲(chǔ)節(jié)點(diǎn)1.I回呼丁存儲(chǔ)節(jié)點(diǎn)2艘卜。|丁存儲(chǔ)節(jié)點(diǎn)3圖1,擁有最長(zhǎng)網(wǎng)絡(luò)路徑的系統(tǒng)以

6、SheepdogStorage系統(tǒng)為例)一個(gè)IO請(qǐng)求需要通過QEMUblockdriver)Gateway,存儲(chǔ)節(jié)點(diǎn)3個(gè)網(wǎng)絡(luò)跳轉(zhuǎn),即網(wǎng)絡(luò)路徑為3。以Ceph為例,一個(gè)IO請(qǐng)求需要通過RBD客戶端驅(qū)動(dòng)),主OSD存儲(chǔ)節(jié)點(diǎn)),從OSD3個(gè)網(wǎng)絡(luò)跳轉(zhuǎn),即網(wǎng)絡(luò)路徑為3??蛻舳薎/O請(qǐng)求OK1、Q 塊設(shè)缶驅(qū)動(dòng)一 尋址模塊存儲(chǔ)節(jié)點(diǎn)1存儲(chǔ)節(jié)點(diǎn)2存儲(chǔ)節(jié)點(diǎn)3圖2,擁有最短網(wǎng)絡(luò)路徑的系統(tǒng)目前為止,我們見到的分布式存儲(chǔ)系統(tǒng)里最優(yōu)的I/O路徑為2:客戶端驅(qū)動(dòng)和存儲(chǔ)節(jié)點(diǎn);其中尋址功能被合并到客戶端驅(qū)動(dòng),并且尋址不需要查詢?cè)獢?shù)據(jù)庫(kù)??蛻舳蓑?qū)動(dòng)直接廣播到所有的存儲(chǔ)節(jié)點(diǎn)上。同樣的,就像上篇文章提到,有沒有一個(gè)判斷ServerS

7、AN系統(tǒng)I/O路徑的簡(jiǎn)單方法呢?不幸地是,我們很難通過一個(gè)系統(tǒng)的外部表象來判斷這個(gè)系統(tǒng)的I/O路徑是多少,是否最優(yōu)?我也沒有想出一個(gè)簡(jiǎn)單的方法。但就像判斷直接和間接訪問裸設(shè)備一樣,判斷系統(tǒng)的I/O路徑對(duì)于判斷系統(tǒng)的水平也是非常重要的。盡管沒有一個(gè)簡(jiǎn)單的方法,但在實(shí)際的選型過程中,I/O路徑應(yīng)該成為一個(gè)考察的重點(diǎn),用戶應(yīng)該要求供應(yīng)商介紹其系統(tǒng)架構(gòu),以及外部I/O、內(nèi)部I/O請(qǐng)求的方法,一旦我們得知系統(tǒng)不是內(nèi)直接尋址或不是將數(shù)據(jù)一次性廣播給所有的副本節(jié)點(diǎn),我們就可以得出如此的判斷:該系統(tǒng)的I/O路徑極有可能不是極有可能最優(yōu)的。(3)系統(tǒng)可擴(kuò)展性(HighScalability前容錯(cuò)能力以及安全性我

8、們說到了裸設(shè)備訪問方式,以及系統(tǒng)I/O路徑的問題,應(yīng)該說這是ServerSAN系統(tǒng)性能影響比較大的兩個(gè)因素,用戶在選型中,需要進(jìn)行仔細(xì)地了解和考察。除了影響系統(tǒng)性能的因素之外,我認(rèn)為系統(tǒng)可擴(kuò)展性(HighScalability)和容錯(cuò)能力以及安全性都是需要認(rèn)真考慮的因?qū)τ谙到y(tǒng)的可擴(kuò)展性首先要考察系統(tǒng)是否存在瓶頸。需要考察系統(tǒng)是否存在這樣一個(gè)組件(component):系統(tǒng)大部分請(qǐng)求(request)需要經(jīng)過這個(gè)組件或由這個(gè)組件來處理,其特征是如果這個(gè)組件通常由一臺(tái)或幾臺(tái)服務(wù)器構(gòu)成,往往就存在著瓶頸的問題)比如SleepDogStorage系統(tǒng)中存在一個(gè)ClusterManager)的組件)它的

9、功能是用于監(jiān)控?cái)?shù)據(jù)節(jié)點(diǎn)上線/下線的變化,通常通過ZooKeeper來實(shí)現(xiàn)。對(duì)于ZooKeeper來說)其監(jiān)控能力存在著上限,如1000個(gè)數(shù)據(jù)節(jié)點(diǎn),如果這1000個(gè)數(shù)據(jù)節(jié)點(diǎn)里面,還有更小的單元的狀態(tài)需要監(jiān)控,如邏輯卷狀態(tài)等,如此就會(huì)演變成為上萬個(gè)連接數(shù)需要被管理,這就大大超過了ZooKeeper的可承受范圍。在這種情況下,ClusterManager就會(huì)成為了ServerSAN系統(tǒng)的瓶頸,導(dǎo)致系統(tǒng)擴(kuò)展性不好。ServerSAN系統(tǒng)的容錯(cuò)能力是指:在網(wǎng)絡(luò)錯(cuò)誤、服務(wù)器硬件失敗的情況下,系統(tǒng)工作不受影響。因?yàn)楫?dāng)存儲(chǔ)系統(tǒng)的節(jié)點(diǎn)數(shù)擴(kuò)展一定的規(guī)模后(如1000個(gè)節(jié)點(diǎn)),同時(shí)系統(tǒng)承受了一定量的用戶請(qǐng)求,節(jié)點(diǎn)上

10、線下線、網(wǎng)絡(luò)斷線連線、磁盤出錯(cuò)(企業(yè)硬盤的錯(cuò)誤率在3%E右)的情況就會(huì)很頻繁。在這種情況下,如果系統(tǒng)的容錯(cuò)能力弱,整個(gè)系統(tǒng)就將忙于數(shù)據(jù)遷移和恢復(fù),正常的客戶數(shù)據(jù)請(qǐng)求的處理會(huì)受到影響。一般而言,在客戶的IO請(qǐng)求路徑上(比如尋址方式)使用ConsistentHashing、DHT(DistributedHashTable)或者類似的算法,如Ceph的CRUSH:法,都會(huì)導(dǎo)致系統(tǒng)的容錯(cuò)能力弱。這是因?yàn)榇祟愃惴〞?huì)在系統(tǒng)的節(jié)點(diǎn)或硬盤上線下線時(shí),動(dòng)態(tài)遷移大量數(shù)據(jù)。優(yōu)秀的ServerSAN系統(tǒng)可以通過日志的方式,將節(jié)點(diǎn)或硬盤在下線期間的數(shù)據(jù)記錄下來,等它們上線后,只復(fù)制缺失的數(shù)據(jù)而避免拷貝所有的數(shù)據(jù)。在這里

11、,我們同樣需要一個(gè)簡(jiǎn)單的判斷的方法。我個(gè)人的推薦是,可以通過觀察系統(tǒng)是否存在一個(gè)中央控制單元,或中央監(jiān)控單元或中央元數(shù)據(jù)庫(kù);I/O尋址算法是否使用了DH俄類似的算法。來簡(jiǎn)單判斷系統(tǒng)容錯(cuò)能力好壞。最后,需要說說數(shù)據(jù)安全性。我們知道:數(shù)據(jù)安全性、數(shù)據(jù)一致性(DataConsistency)和系統(tǒng)性能三者互斥的,即一個(gè)系統(tǒng)很難同時(shí)達(dá)到高數(shù)據(jù)安全性、強(qiáng)數(shù)據(jù)一致性和高IOPS的系統(tǒng)。以異地容災(zāi)為例,在ServerSAN系統(tǒng)中其方法是將一份數(shù)據(jù)復(fù)制到兩個(gè)或多個(gè)副本到異地?cái)?shù)據(jù)中心,如此大大提高了系統(tǒng)的安全性。但如此一來,該系統(tǒng)數(shù)據(jù)一致性和系統(tǒng)性能就有可能會(huì)受到影響。不論是同步復(fù)制還是異步復(fù)制,這樣的影響都是存在的。首先是同步數(shù)據(jù)復(fù)制,是在系統(tǒng)成功響應(yīng)客戶的寫請(qǐng)求之前,數(shù)據(jù)被復(fù)制到至少兩個(gè)數(shù)據(jù)中心,如果是異地?cái)?shù)據(jù)中心則對(duì)于網(wǎng)絡(luò)帶寬、延時(shí)都有很高的要求,否則將導(dǎo)致系統(tǒng)的性能及其低下。但保持異地?cái)?shù)據(jù)中心的高網(wǎng)絡(luò)帶寬和低延遲,成本會(huì)是非常高的。不得已,就會(huì)采用異步方式,即在一個(gè)數(shù)據(jù)中心的寫請(qǐng)求一旦成功寫入本地的數(shù)據(jù)中心即可返回,系統(tǒng)可以在后臺(tái)將這部分寫復(fù)制到另外的一個(gè)數(shù)據(jù)中心去。非常顯然,異步方式會(huì)導(dǎo)致兩個(gè)中心的數(shù)據(jù)存在不一致性。也正是因?yàn)槿绱?,好的解決方案應(yīng)該采用兩地三中心的方式。這也是我個(gè)人推薦的方式??傊?,分布式存儲(chǔ)技術(shù)還處于快速的發(fā)展之中,技術(shù)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論