掌握Linux磁盤管理技巧:從零開始配置磁盤陣列!
共 6103字,需瀏覽 13分鐘
·
2024-07-25 07:33
鏈接:https://www.cnblogs.com/du-z/p/10876697.html
1 磁盤陣列簡(jiǎn)介
RAID(Redundant Array of Independent Disks)即獨(dú)立硬盤冗余陣列,簡(jiǎn)稱磁盤陣列。磁盤陣列是由很多價(jià)格較便宜的磁盤,以硬件(RAID卡)或軟件(MDADM)形式組合成一個(gè)容量巨大的磁盤組,利用多個(gè)磁盤組合在一起,提升整個(gè)磁盤系統(tǒng)效能。利用這項(xiàng)技術(shù),將數(shù)據(jù)切割成許多區(qū)段,分別存放在各個(gè)硬盤上。其中RAID卡有自己的cpu,由它統(tǒng)一管理和控制;數(shù)據(jù)也由它來(lái)進(jìn)行分配和維護(hù),處理速度快。服務(wù)器啟動(dòng)時(shí),就會(huì)有顯示進(jìn)入配置Riad的提示。
RAID比單硬盤有以下一個(gè)或多個(gè)方面的好處:增強(qiáng)數(shù)據(jù)集成度,增強(qiáng)容錯(cuò)功能,增加處理量或容量,磁盤陣列對(duì)于電腦來(lái)說,看起來(lái)就像一個(gè)單獨(dú)的硬盤或邏輯存儲(chǔ)單元。
2 RAID 分類
RAID有很多種類型本章只舉4例供大家了解RAID技術(shù)!
| RAID類型 | 說 明 | 最低磁盤個(gè)數(shù) | 空間利用率 | 各自的優(yōu)缺點(diǎn) |
|---|---|---|---|---|
| RAID0 | 條帶卷 | 2+ | 100% | 讀寫速度快,不容錯(cuò) |
| RAID1 | 鏡像卷 | 2 | 50% | 讀寫速度一般,容錯(cuò) |
| RAID5 | 帶奇偶校驗(yàn)的條帶卷 | 3+ | (n-1)/n | 讀寫速度快,容錯(cuò),允許壞一塊盤 |
| RAID10 | RAID1的鏡像+RAID0的條帶 | 4 | 50% | 讀寫速度快,容錯(cuò) |
RAID 中主要有三個(gè)關(guān)鍵概念和技術(shù):鏡像( Mirroring )、數(shù)據(jù)條帶( Data Stripping )和數(shù)據(jù)校驗(yàn)( Data parity )
2.1 RAID0
RAID0是最早出現(xiàn)的RAID模式;應(yīng)用條數(shù)據(jù)條帶( Data Stripping )技術(shù),將數(shù)據(jù)分片保存2+個(gè)磁盤(最好磁盤的大小相同)上,多個(gè)數(shù)據(jù)分片共同組成一個(gè)完整數(shù)據(jù)副本,數(shù)據(jù)條帶具有更高的并發(fā)粒度,當(dāng)訪問數(shù)據(jù)時(shí),可以同時(shí)對(duì)位于不同磁盤上數(shù)據(jù)進(jìn)行讀寫操作, 從而獲得非??捎^的 I/O 性能提升;是組建磁盤陣列中最簡(jiǎn)單的一種形式,只需要2塊以上的硬盤即可;成本低,可以提高整個(gè)磁盤的性能;磁盤利用率為100%,但是,RAID 0沒有提供冗余或錯(cuò)誤修復(fù)能力,任何一個(gè)磁盤的損壞將損壞全部數(shù)據(jù)。
2.2 RAID1
RAID 1 應(yīng)用鏡像卷(mirroring)技術(shù),這是一種冗余技術(shù),為磁盤提供保護(hù)功能,防止磁盤發(fā)生故障而造成數(shù)據(jù)丟失,也就是說數(shù)據(jù)在寫入一塊磁盤的同時(shí),會(huì)在另一塊閑置的磁盤上生成鏡像文件(同步),所以,RAID1的讀寫速度一般,磁盤利用率為50%,即2塊100G的磁盤構(gòu)成RAID1只能提供100G的可用空間。
2.3 RAID5
RAID5應(yīng)用數(shù)據(jù)校驗(yàn)( Data parity )技術(shù),RAID 要在寫入數(shù)據(jù)同時(shí)進(jìn)行校驗(yàn)計(jì)算,并將得到的校驗(yàn)數(shù)據(jù)存儲(chǔ)在 RAID 成員磁盤中。校驗(yàn)數(shù)據(jù)可以集中保存在某個(gè)磁盤或分散存儲(chǔ)在多個(gè)不同磁盤中,甚至校驗(yàn)數(shù)據(jù)也可以分塊,不同 RAID 等級(jí)實(shí)現(xiàn)各不相同。當(dāng)其中一部分?jǐn)?shù)據(jù)出錯(cuò)時(shí),就可以對(duì)剩余數(shù)據(jù)和校驗(yàn)數(shù)據(jù)進(jìn)行反校驗(yàn)計(jì)算重建丟失的數(shù)據(jù),可以提供熱備盤實(shí)現(xiàn)故障的恢復(fù);校驗(yàn)技術(shù)相對(duì)于鏡像技術(shù)的優(yōu)勢(shì)在于節(jié)省大量開銷,但由于每次數(shù)據(jù)讀寫都要進(jìn)行大量的校驗(yàn)運(yùn)算,對(duì)計(jì)算機(jī)的運(yùn)算速度要求很高,必須使用硬件 RAID 控制器。在數(shù)據(jù)重建恢復(fù)方面,檢驗(yàn)技術(shù)比鏡像技術(shù)復(fù)雜得多且慢得多。
2.4 RAID10
RAID10即RAID1鏡像+RAID0條帶,比如我們有8塊盤,它是先兩兩做鏡像,形成了新的4塊盤,然后對(duì)這4塊盤做RAID0;當(dāng)RAID10有一個(gè)硬盤受損其余硬盤會(huì)繼續(xù)工作,這個(gè)時(shí)候受影響的硬盤只有2塊;
3 演示
3.1 Mdadm命令
madam是linux下用于創(chuàng)建和管理軟件RAID的命令,Linux內(nèi)核中有一個(gè)md(multiple devices)模塊在底層管理RAID設(shè)備,它會(huì)在應(yīng)用層給我們提供一個(gè)應(yīng)用程序的工具mdadm
option:
-a 檢測(cè)設(shè)備名稱
-n 指定設(shè)備數(shù)量
-l 指定RAID級(jí)別
-C 創(chuàng)建
-v 顯示過程
-f 模擬設(shè)備損壞
-r 移除設(shè)備
-Q 查看摘要信息
-D 查看詳細(xì)信息
-S 停止RAID磁盤陣列
-x 熱備盤個(gè)數(shù)
3.2 RAID5 演示
#下載mdadm
╭─[email protected] ~
╰─? yum stall mdadm -y
#第一步:查看磁盤
╭─[email protected] ~
╰─? ls /dev/sd*
/dev/sda /dev/sda1 /dev/sda2 /dev/sdb /dev/sdc /dev/sdd /dev/sde
#第二步:創(chuàng)建RAID5陣列
╭─[email protected] ~
╰─? mdadm -Cv /dev/md0 -l 5 -n 3 -x 1 /dev/sd{b,c,d,e}
mdadm: layout defaults to left-symmetric
mdadm: layout defaults to left-symmetric
mdadm: super1.x cannot open /dev/sdb: Device or resource busy
mdadm: ddf: Cannot use /dev/sdb: Device or resource busy
mdadm: Cannot use /dev/sdb: It is busy
mdadm: cannot open /dev/sdb: Device or resource busy
#第三步:查看陣列信息
╭─[email protected] ~
╰─? mdadm -D /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Thu May 16 21:11:13 2019
Raid Level : raid5
Array Size : 41908224 (39.97 GiB 42.91 GB)
Used Dev Size : 20954112 (19.98 GiB 21.46 GB)
Raid Devices : 3
Total Devices : 4
Persistence : Superblock is persistent
Update Time : Thu May 16 21:12:59 2019
State : clean
Active Devices : 3
Working Devices : 4
Failed Devices : 0
Spare Devices : 1
Layout : left-symmetric
Chunk Size : 512K
Consistency Policy : unknown
Name : localhost.localdomain:0 (local to host localhost.localdomain)
UUID : dd9965b6:b6e3d118:d92e3fef:517bbc93
Events : 18
Number Major Minor RaidDevice State
0 8 16 0 active sync /dev/sdb
1 8 32 1 active sync /dev/sdc
4 8 48 2 active sync /dev/sdd
3 8 64 - spare /dev/sde
#第四步:磁盤格式化成文件系統(tǒng)格式
╭─[email protected] ~
╰─? mkfs.xfs /dev/md0
meta-data=/dev/md0 isize=512 agcount=16, agsize=654720 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=10475520, imaxpct=25
= sunit=128 swidth=256 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=5120, version=2
= sectsz=512 sunit=8 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
#第五步:掛載
╭─[email protected] ~
╰─? mkdir /du
╭─[email protected] ~
╰─? mount /dev/md0 /du
#第六步:模擬磁盤損壞
╭─[email protected] ~
╰─? mdadm /dev/md0 -f /dev/sdc #sdc盤損壞
mdadm: set /dev/sdc faulty in /dev/md0
#第七部:查看磁盤陣列信息
╭─[email protected] ~
╰─? mdadm -D /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Thu May 16 21:11:13 2019
Raid Level : raid5
Array Size : 41908224 (39.97 GiB 42.91 GB)
Used Dev Size : 20954112 (19.98 GiB 21.46 GB)
Raid Devices : 3
Total Devices : 4
Persistence : Superblock is persistent
Update Time : Thu May 16 21:18:14 2019
State : clean, degraded, recovering
Active Devices : 2
Working Devices : 3
Failed Devices : 1
Spare Devices : 1
Layout : left-symmetric
Chunk Size : 512K
Consistency Policy : unknown
Rebuild Status : 32% complete
Name : localhost.localdomain:0 (local to host localhost.localdomain)
UUID : dd9965b6:b6e3d118:d92e3fef:517bbc93
Events : 25
Number Major Minor RaidDevice State
0 8 16 0 active sync /dev/sdb
3 8 64 1 spare rebuilding /dev/sde
4 8 48 2 active sync /dev/sdd
1 8 32 - faulty /dev/sdc
秋招已經(jīng)開始啦,大家如果不做好充足準(zhǔn)備的話,秋招很難找到好工作。
送大家一份就業(yè)大禮包,大家可以突擊一下春招,找個(gè)好工作!
