RAID是將把好幾塊硬碟通過一定組合方式把它組合起來,成為一個新的硬碟陣列組,從而使它能夠達到高性能硬碟的要求. ...
一.磁碟陣列(Redundant Arrays of Independent Disks,RAID) 有“獨立磁碟構成的具有冗餘能力的陣列”之意。
磁碟陣列是由很多價格較便宜的磁碟,以硬體(RAID卡)或軟體(MDADM)形式組合成一個容量巨大的磁碟組,利用多個磁碟組合在一起,提升整個磁碟系統效能。利用這項技術,將數據切割成許多區段,分別存放在各個硬碟上。 磁碟陣列還能利用同位檢查(Parity Check)的觀念,在數組中任意一個硬碟故障時,仍可讀出數據,在數據。
註:RAID可以預防數據丟失,但是它並不能完全保證你的數據不會丟失,所以使用RAID的同時還是註意備份重要的數據.
二.RAID創建方式
RAID的創建有兩種方式:軟RAID(通過操作系統軟體來實現)和硬RAID(使用硬體陣列卡);瞭解raid1、raid5和raid10。不過隨著雲的高速發展,供應商一般可以把硬體問題解決掉。
三.RAID磁碟陣列特點
對磁碟高速存取(提速): RAID將普通硬碟組成一個磁碟陣列,在主機寫入數據,RAID控制器把主機要寫入的數據分解為多個數據塊,然後並行寫入磁碟陣列;主機讀取數據時,RAID控制器並行讀取分散在磁碟陣列中各個硬碟上的數據,把它們重新組合後提供給主機。由於採用並行讀寫操作,從而提高了存儲系統的存取速度。
擴容。
數據冗餘
四.RAID類型
raid級別:raid 0 raid 1 raid5 raide 10 raid 01
RAID 0
0 :(stripe)條帶模式,至少需要兩塊硬碟,每一份數據平均分成多份存儲在多個磁碟 中,且都處於一個水平條帶上
優點:讀寫速度提高,用了多少塊盤就是多少倍 缺點:無冗餘能力(也稱容錯能力) 空間利用率:多個磁碟的總和,100%
RAID 1
1:(mirror)鏡像模式,磁碟數量需要2的倍數,兩個磁碟中存儲的數據完全一致,當一 個盤損壞時,數據依然可以進行讀寫
優點:有冗餘能力
缺點:磁碟利用率 只有50%,寫的速度下降
RAID 5
5:check code校驗碼模式,至少需要三塊硬碟,每一次存儲數據時,採用條帶模式存 儲到n-1數量的磁碟中,另外一個磁碟存放的是其他幾個磁碟中的數據以某種加密方式之 後得出的加密數據,且每一次存儲,存儲加密數據的磁碟都是不斷變化的,當其中任何 一個盤的數據損壞時,都可以通過加密方式和其餘兩塊磁碟的數據來得知另外一個盤的 數據,具有較高的冗餘能力
優點:讀寫速度快,有冗餘能力
缺點:磁碟利用率為n-1/n,兩個磁碟損壞時,數據將丟失
組合起來用RAID10
10:mirror+stripe模式,至少需要4快硬碟,先將兩塊硬碟組成Raid1,然後將兩組 Raid1組合成Raid0,存儲一分數據時,每一Raid1的組合存儲的數據都是均分的,然後 Raid1組合再用mirror模式存儲
優點:讀寫速度快,冗餘能力強
缺點:磁碟利用率為50%
組合起來用RAID01
RAID01 是先做條帶化再作鏡像,本質是對物理磁碟實現鏡像
優點:讀寫速度快,冗餘能力強
缺點:磁碟利用率為50%,安全性能比10差
比較:
RAID10和RAID01的比較
兩者最重要的區別在於:RAID10的底層是鏡像RAID1,而鏡像就保證了當有一塊硬碟比如A1損壞時,並不影響他的寫功能,讀性能可能稍微有所降低(大概降低1/8)。但是RAID01的底層是條帶RAID0,而條帶就導致了只要有一塊硬碟比如左邊的Disk0中的A1損壞時,那麼整個左邊的RAID0就不能使用了,所以整個RAID01就變成了只有右邊的RAID0可以使用了,也就是從RAID01變成了RAID0,讀性能馬上降低一般,寫性能沒有影響,可靠性變得最差。僅僅憑藉這一點,我們就絕不應該使用RAID01,而應該選擇RAID10
五.RAID命令
命令:mdadm (需要下載)
#功能:創建/管理/刪除 磁碟陣列
#語法格式:
mdadm [模式] <磁碟陣列名稱> [選項] <組成設備>
#模式:
assemble:將以前定義的某個陣列加入當前在用陣列。
create:創建一個新的陣列,每個設備具有超級塊
manage: 管理陣列,比如增加或移除
misc:允許單獨對陣列中的某個設備做操作,比如抹去超級塊或 終止在用的陣列。
follow or Monitor:監控磁碟陣列的狀態
grow:改變磁碟陣列容量或陣列中的設備數目
選項:
-A:加入一個以前定義的陣列
-C:創建一個新的陣列 (重要)
-D:列印一個或多個設備的詳細信息
-E:列印設備上的超級塊的內容
-h:幫助信息,用在以上選項後,則顯示該選項信息
-v:顯示細節
-b:較少的細節。用於-D和-E選項
-f, --force 強制執行
-c:指定配置文件,預設為 /etc/mdadm.conf
-s:掃描配置文件或 /proc/mdstat以搜尋丟失的信息。
create 或 build 使用的選項:
-c:指定塊大小,單位 kb. 預設為 64.
-l,:設定RAID模式.(非常重要)
-n=:指定陣列中可用設備數目。
-x :指定初始陣列的熱備盤數目。
-a, --auto{=no,yes,md,mdp,part,p}{NN} :創建RAID同時是否創建設備。
例:使用sdb sdc 創建raid0
mdadm -C /dev/md0 -l 0 -n 2 /dev/sd{b,c}1
raid查看方法
cat /proc/mdstat mdadm --detail /dev/mdXXX
刪除raid (刪除raid前需要卸載對應的掛載點)
mdadm --stop /dev/mdXXXX