存儲08-raid技術的演進
- 2020 年 3 月 31 日
- 筆記
1.RAID1.0時代

假設上圖為17塊硬碟的一個存儲,現描述如下:
1)磁碟0-7組成一個raidgroup0;在raidgroup0上又劃分了lun0-1
2)磁碟8-15組成一個raidgroup1;在raidgroup1上又劃分了lun2-3
3)有一塊全局hotspare盤(磁碟0-15任意一塊故障後,hotspare磁碟要馬上頂上進行raid重建)
熱備盤小知識:
1)熱備盤可以分全局熱備和局部設備
2)熱備盤可以有多塊
3)全局熱備盤可以頂替所有raidgroup內的故障盤
4)局部熱備盤只能頂替指定raidgroup內的故障盤
5)熱備盤非必須,有熱備盤相對於無熱備盤安全一些(磁碟故障後換盤的時間可以拖久一點)
6)早些年的存儲,磁碟故障後熱備盤頂替上後,當故障盤更換後熱備盤的數據還要回拷到更換後的盤
7)後來隨著存儲控制器系統的智慧化升級,磁碟故障後熱備盤頂替上後,當故障盤更換後熱備盤的數據不需要回拷到更換後的盤;更換後的盤可以直接當熱備盤,這樣減少一次數據回拷
8)數據回拷非常影響存儲的性能
raid1.0的特性描述:
1)以物理磁碟為組成raid的最小單元
2)存在熱點盤(磁碟故障後,熱備盤是熱點盤;故障盤更換後,熱備盤數據回拷到更換後的盤,此時熱備盤和更換後的盤都是熱點盤)
3)磁碟故障後raid重構時間非常久(早些年磁碟容量小也就幾百G,幾個小時就完成;現如今單盤容量基本都是1|2|4|6|8|10|16T,重構時間是原來的幾十倍;數據重構時間越短,數據越安全;萬一重構未完成期間又壞盤呢,禍不單行此時數據有很大的可能就廢了;raid1.0非常弱智,哪怕故障盤裡寫了1bit數據,剩下的全盤-1bit的垃圾數據也要重構)
4)單個raidgroup內磁碟數量不能太多(這個很好理解,8塊盤同時壞2塊總比20塊磁碟同時壞2塊概率低;就好比1W輛車裡面同時撞兩輛比1億輛車同時撞兩輛概率低;所有傳統存儲時代,官方最佳實踐都是8塊盤,iops和故障率取一個平衡)
5)單個lun的iops非常低(不能跨raidgroup,因為單個raidgroup的盤又不能太多)
6)數據丟失概率大(因為壞盤後重構時間太久,尤其是大容量磁碟)
7)一般情況下,都需要有熱備盤
備註:說了這麼多,其實raid1.0的根子在於,它是早些年單盤容量不大時代的產物,已經無法適應現如今單盤容量過T的時代(重構時間太久,幾天幾夜,風險太大),需要迫切改進。大容量磁碟+傳統raid卡做raid10是沒有心理壓力的;但是用大於2T的盤做raid5就是砸自己飯碗,除非數據不怕丟。無知者無畏,一頓操作猛如虎。
2.RAID1.5時代

假設上圖為17塊硬碟的一個存儲,現描述如下:
1)磁碟0-7組成一個raidgroup0;磁碟8-15組成一個raidgroup1
2)raidgroup0和raidgroup1組成了storagepool
3)storagepool上又劃分了lun0-3
4)有一塊全局hotspare盤(磁碟0-15任意一塊故障後,hotspare磁碟要馬上頂上進行raid重建)
備註:其實storagepool里把raidgroup又邏輯切分了無數個小單元,這無數個小單元又相互組合出來lun0-3
raid1.5的特性描述:
1)raid1.0該有的特性raid1.5都有
2)raid1.5單個lun的iops要比raid1.0(raid1.0里單個lun的iops不能跨raidgroup,raid1.5里單個lun的iops可以跨多個raidgroup,raid1.5的lun可利用的物理磁碟比raid1.0要多)
備註:raid1.5僅僅是比raid1.0提升了單個lun的iops,重構時間太久風險太大的問題任然沒有解決;存儲管理員天天頭上頂個大炸彈。
3.raid2.0時代

raid2.0特性描述:
1)把物理磁碟邏輯劃分為一塊一塊的小邏輯硬碟chunk(單個chunk為幾M),chunk為組成raid的最小單元
2)chunk在chunkgroup里組成各種raid小條帶(如raid1:1D+1D,raid5:7D+1P,raid6:6D+2P,raid10:(2D+1D)*2,raid50:(5D+1P)*2,raid60:(6D+2P)*2等,並且不通的raid可以共用底層的物理磁碟)
3)lun由chunkgroup里的各種相同raid類型的小條帶組成
4)無熱點盤(磁碟故障後,剩餘的所有磁碟參與重構)
5)重構時間段(第一無熱點盤,參與重構磁碟多;第二raid2.0比較智慧,只重構有效數據,垃圾數據不進行重構)
6)單個lun的iops非常高(因為lun橫跨在底層所有的磁碟上)
7)數據安全可靠(因為壞盤後重構時間短)
8)無需單獨的熱備盤(所有盤都是熱備盤和數據盤)
9)同一個物理磁碟上包含上次各種raid類型(raid1.0和raid1.5中,一個物理磁碟只能屬於一個raid類型)
備註:現在的一些高端或者分散式存儲基本上都是raid2.0技術。切記不要用大容量單盤做傳統的raid1.0和raid1.5,即要命又砸飯碗。