RAID 磁碟陣列的應用
RAID一般翻譯為磁碟陣列,全稱是 Redundant Arrays of Inexpensive Disk,最初的構想是源於加州大學伯克利分校的一個研究小組的專案,他們希望透過大量廉價的硬碟來組建價格便宜,可用性高的磁碟陣列。但是RAID發展到今天,已經背離了當初價格便宜的初衷。但是RAID也帶來了另外的好處,如何合理選擇RAID的級別,可以構建出具有更高可用性,更好地容錯的磁碟。
RAID主要分為軟體RAID和硬體RAID,軟體RAID主要是透過作業系統來實現,這樣會增加CPU的負擔,所以在實際場景中極少使用。硬體RAID使用獨立的硬體裝置和控制晶片,整體效能優於軟體RAID。RAID有不同的規範,但是總體上可以分為兩種:標準RAID和混合RAID。雖然現在的RAID有很多不同的規範,但是很多規範只是一種過渡性的實驗產品,在實際的生產環境中幾乎不使用。
1、標準RAID
1.1 RAID 0
RAID 0也稱為條帶(strping),它將兩個以上的硬碟串聯起來,成為一個大容量的磁碟。在儲存資料時,資料分散儲存在這些磁碟中。因為資料讀寫都可以並行的進行,所以在所有的級別中,RIID的速度是最快的。但是RAID既沒有冗餘功能,也不提供容錯能力。如果有一個物理磁碟損壞,所有的資料都會丟失。所以,RAID只是在一些對資料安全性要求不高,但是速度要求較高的場景下使用,比如影片,影像等工作站。
1.2 RAID 1
RAID 1稱為映象技術,需要兩塊以上的硬碟互作映象。也就是說,主盤上的資料和映象盤上的資料完全一樣。因此,在多執行緒的作業系統會大大提高資料的讀取速度。RAID 1 的可靠性非常高,只要有一塊硬碟正常就可以保證資料的完整性。但是RAID的缺點是浪費了大量的儲存空間。
RAID2-RAID4屬於實驗性的產品實際生產環境很少使用。
1.3 RAID 5
RAID 5引入了資料校驗的功能,並且校驗的資料是分散的儲存在各塊硬碟上。RAID 5 實際上是速度與可靠性的一種折衷方案,在實際場景中應用較多。與RAID相比,儲存成本比較便宜。RAID 5至少需要3塊磁碟來實現。
1.4 RAID 6
與RAID 5相比RAID6增加了第二個獨立的資訊校驗塊。兩個獨立的奇偶系統使用不同的演算法,資料的可靠性非常高,即使兩塊磁碟同時失效也不會影響資料的使用。RAID 6至少需要4塊以上的磁碟。
2、混合RAID
2.1 JBOD
嚴格來講JBOD(Just a Bunch Of Disks)並不屬於RAID的等級,JBOD並沒有嚴格的規範,主要是用於實現將各個獨立的硬碟空間在邏輯上組合成一個大的硬碟。如果硬碟損毀,則存在上面的資料將無法救回。若第一塊硬碟損壞,將丟失所有的資料,危險程度與RAID 0相比有過之無不及。但是JBOD也有它的應用場景,例如就鼓勵使用JBOD,因為Hadoop由自己的一套容災方案。
2.2 RAID 01
RAID 01是RAID 0與RAID 1的一種組合。主要實現方案是先將資料分成兩組,然後再對資料進行映象對映。即先實現RAID 0,再實現RAID 1。
2.3 RAID 10
RAID 10與RAID 01恰好相反,是先進行資料映象,然後才對資料進行分組。
2.4 RAID 50
RAID 5與RAID 0的結合,先作RAID 5,在作RAID 0,也就是對多組RAID 5構成條帶化的訪問。RAID 50以RAID 5為基礎,而RAID 5至少需要3塊硬碟,要以多組RAID 5構成RAID 50,因此RAID至少需要6塊硬碟。RAID 50在底層任意一組或多組RAID 5中出現一塊硬碟損壞時,仍然可以維持運作,不過任意一組同時出現兩塊硬碟損壞時,整組RAID 50就會失效。
透過Linux 實現軟RAID:
在Linux實現RAID主要是透過mdadm來實現。
mdadm屬於模式化的命令,主要模式有:
建立模式
管理模式
監控模式
增長模式
裝配模式
mdadm的基本格式為:
# mdadm [mode] [options]
裝配模式RAID的選項有:
-l:指定RAID的級別;
-n:指定裝置數,即磁碟的個數;
-a:自動為其建立裝置檔案;
-c,--chunk 指定分割資料塊的大小
1.實現RAID 0:
準備工作:
兩個1G大小的磁碟分割槽。
[root@local ~]# mdadm -C /dev/md0 -a
yes -l 0 -n 2 /dev/sdb{1,2}
mdadm: /dev/sdb1 appears to contain an ext2fs file system
size=104388K mtime=Thu Jan 1 08:00:00 1970
Continue creating array? (y/n) y
為其建立檔案系統:
[root@local ~]# mke2fs -j /dev/md0
掛載檔案系統:
[root@local mnt]# mount /dev/md0 /mnt/raid
檢視掛載檔案系統的資訊:
[root@local mnt]# df -h
檔案系統 容量 已用 可用 已用% 掛載點
/dev/mapper/VolGroup00-LogVol00 18G 3.3G 14G 20% /
/dev/sda1 99M 13M
82M 13% /boot
tmpfs 252M
0 252M 0% /dev/shm
/dev/sr0 3.3G 3.3G 0 100% /mnt/cdrom
.host:/ 56G 44G 12G 79% /mnt/hgfs
/dev/md0 1.9G 35M
1.8G 2% /mnt/raid
這裡顯示檔案並沒有2G是正常顯現,因為RAID本身也有一些後設資料需要儲存。
2.實現RAID 1:
準備工作:
兩塊1G大小的磁碟分割槽。
[root@local ~]# mdadm -C /dev/md1 -a yes -l 1 -n 2 /dev/sdb{5,6}
檢視狀態資訊
[root@local ~]# cat /proc/mdstat
Personalities : [raid0] [raid1]
md1 : active raid1 sdb6[1] sdb5[0]
987840 blocks [2/2] [UU]
md0 : active raid0 sdb2[1] sdb1[0]
1975744 blocks 64k chunks
unused devices:
建立檔案系統
[root@local ~]# mke2fs -j /dev/md1
檢視指定RAID裝置的詳細資訊
[root@local ~]# mdadm -D /dev/md1
/dev/md1:
Version : 0.90
Creation Time : Tue Mar 3 17:26:24 2015
Raid Level : raid1
Array Size : 987840 (964.85 MiB 1011.55 MB)
Used Dev Size : 987840 (964.85 MiB 1011.55 MB)
Raid Devices : 2
Total Devices : 2
Preferred Minor : 1
Persistence : Superblock is persistent
Update Time : Tue Mar 3 17:30:22 2015
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
UUID : f6a3844f:282828af:45d573d8:5f0aa269
Events : 0.4
Number Major Minor RaidDevice State
0 8 21
0 active sync /dev/sdb5
1 8 22
1 active sync /dev/sdb6
模擬一塊硬碟損壞(管理模式)
[root@local ~]# mdadm /dev/md1 --fail /dev/sdb5
mdadm: set /dev/sdb5 faulty in /dev/md1
移除損壞的硬碟:(-r = --remove)
[root@local ~]# mdadm /dev/md1 -r /dev/sdb5
mdadm: hot removed /dev/sdb5
更換新盤(和壞掉的盤的分割槽應保持一致)
[root@local ~]# mdadm /dev/md1 -a /dev/sdb7
mdadm: added /dev/sdb7
停止磁碟陣列
[root@local ~]# mdadm -S /dev/md1
mdadm: stopped /dev/md1
重新裝配磁碟陣列
[root@local ~]# mdadm -A --run /dev/md1 /dev/sdb5 /dev/sdb6
mdadm: /dev/md1 has been started with 1 drive (out of 2).
掃描磁碟陣列的資訊,以後可以實現自動裝配:
[root@local ~]# mdadm -D --scan > /etc/mdadm.conf
3.實現RAID 5:
準備工作:3塊512M大小的磁碟
[root@local ~]# mdadm -C /dev/md5 -l5 -n3 /dev/sdb{8,9,10}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9034054/viewspace-1989497/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- RAID磁碟陣列應用AI陣列
- RAID磁碟陣列AI陣列
- 磁碟陣列RAID陣列AI
- 磁碟陣列RAID概述陣列AI
- RAID磁碟陣列與配置AI陣列
- 認識RAID磁碟陣列AI陣列
- 磁碟陣列檢視命令 RAID陣列AI
- 磁碟陣列RAID工具:SoftRaid for Mac陣列AIMac
- raid磁碟陣列OFFLINE後的應急處理方案AI陣列
- 教程:RAID-5磁碟陣列故障分析AI陣列
- Linux下RAID磁碟陣列的原理與搭建LinuxAI陣列
- CentOS8中配置RAID磁碟陣列CentOSAI陣列
- 磁碟陣列關於Raid0,Raid1,Raid5,Raid10陣列AI
- RAID10磁碟陣列損壞修復操作AI陣列
- linux RAID10磁碟陣列損壞的修復LinuxAI陣列
- Raid0/raid1/raid5磁碟陣列資料恢復思路AI陣列資料恢復
- RAID磁碟硬陣列及安裝作業系統AI陣列作業系統
- 如何使用storcli在系統中管理RAID磁碟陣列AI陣列
- mdadm linux 做軟磁碟陣列 raid0Linux陣列AI
- Raid磁碟陣列重建後如何恢復原來的資料AI陣列
- 磁碟陣列陣列
- RAID5到RAID6,RAID6磁碟陣列資料安全提高多少?【轉】AI陣列
- 磁碟陣列RAID10優勢全面詳解_轉摘陣列AI
- 一文全懂:獨立冗餘磁碟陣列(RAID)陣列AI
- 伺服器磁碟陣列raid0資料恢復伺服器陣列AI資料恢復
- 伺服器磁碟陣列raid1資料恢復伺服器陣列AI資料恢復
- 浪潮伺服器磁碟陣列RAID配置資料恢復伺服器陣列AI資料恢復
- RAID磁碟陣列掉線3塊的資料恢復過程AI陣列資料恢復
- raid6磁碟陣列的Q校驗演算法深度挖掘AI陣列演算法
- Dell R740伺服器設定磁碟直通,不做RAID虛擬磁碟陣列伺服器AI陣列
- 使用MegaCli工具檢視Raid磁碟陣列狀態[主站備]AI陣列
- 磁碟陣列配置陣列
- Linux應該這麼學第7章使用 RAID 與 LVM 磁碟陣列技術LinuxAILVM陣列
- 【伺服器資料恢復】Raid磁碟陣列常見故障解析伺服器資料恢復AI陣列
- raid5磁碟陣列伺服器癱瘓資料恢復AI陣列伺服器資料恢復
- MegaCli管理磁碟陣列陣列
- 組磁碟陣列的主要作用陣列
- 雲端計算學習路線教程大綱課件:磁碟陣列 RAID陣列AI