磁碟陣列&邏輯磁卷

Download Report

Transcript 磁碟陣列&邏輯磁卷

RAID與LVM
1
磁碟陣列(RAID)
RAID簡介
RAID狀態
指令介紹
RAID
5實作
2
RAID簡介
容錯式廉價磁碟陣列『 Redundant Arrays
of Inexpensive Disks, RAID 』。
 RAID 可以透過一個技術(軟體或硬體),
將多個較小的磁碟整合成為一個較大的
磁碟裝置 。

ref:http://linux.vbird.org/linux_basic/0420quota.php#raid
3
RAID狀態
RAID狀態
解釋
RAID-0
等量模式, stripe
優點:效能最佳。
缺點:只要有任一磁碟損毀,在
RAID 上面的所有資料都會遺失
而無法讀取。
RAID-1
映射模式, mirror
優點:完整備份
缺點:寫入效能不佳
RAID 0+1
Stripe+mirror
優缺點:具有 RAID 0 的優點,
所以效能得以提升,具有 RAID
1 的優點,所以資料得以備份。
但是也由於 RAID 1 的缺點,所
以總容量會少一半用來做為備份
4
RAID狀態
RAID狀態
解釋
RAID 5
效能與資料備份的均衡考量
需要三顆以上磁碟才能夠組成,
允許一顆故障。
每個循環的寫入過程中,在每顆
磁碟還加入一個同位檢查資料
(Parity) ,這個資料會記錄其他
磁碟的備份資料, 用於當有磁
碟損毀時的救援。
RAID 6
增加了第二個獨立的奇偶校驗信
息塊,可靠度高。
需要四顆以上磁碟才能夠組成,
允許兩顆故障。
Spare Disk
ref:http://zh.wikipedia.org/wiki/RAID
預備磁碟
5
建立RAID-mdadm
--create :為建立 RAID 的選項;
 --spare-devices=N :使用幾個磁碟作為
備用 (spare) 裝置
 --level=[015] :設定這組磁碟陣列的等
級。支援很多,不過建議只要用 0, 1, 5
即可 --detail :後面所接的那個磁碟陣
列裝置的詳細資訊
 --detail :後面所接的那個磁碟陣列裝
置的詳細資訊

6
常用指令
mdadm --detail /dev/md0
 mdadm --create --auto=yes
/dev/md0 --level=5 \ > --raiddevices=4 /dev/{b-e}
 mdadm --manage /dev/md

7
RAID 5實作
準備4顆硬碟
 檢查partitions狀態
◦ #cat /proc/partitions

格式化新硬碟
◦ #fisk /dev/sdb
◦ n
◦ p
◦ t 選擇其它類型
◦ l 列出所有類型
◦ fd RAID類型
◦ w 選好之後存檔
◦ #partprobe 重讀分割區表,不用重開機
 依續完成格式化其它3顆的RAID類型
◦ fisk /dev/sdc
◦ fisk /dev/sdd
◦ fisk /dev/sde
 完成之後,查看4顆硬碟的狀態,確認後重新開機
◦ fdisk -l /dev/sd[bcde]
8
建立RAID 5

#mdadm -C /dev/md0 -l5 -n3 /dev/sd[bcd]1 -x 1 /dev/sde1
-C creat
 -l5 指定raid 5 模式
 -n3 指定3顆硬諜加入raid
 -x 指定1顆備援硬諜加入raid

#mdadm –D /dev/md0
 -D 查看詳細資料

9
RAID建置時電腦變慢

可以查看raid 的其它詳細資訊 ,同時
可看到 recovery 仍在進行中。
◦ #cat /proc/mdstat

格式化/dev/md0
◦ #mkfs –j /dev/md0

建立raid目錄並掛載
◦ #mkdir /media/raid
◦ #mount /dev/md0 /media/raid

#df -h 會看到只有兩顆硬碟的空間
10
RAID的故障測試
拷貝一個檔案到raid目錄,準備測試工作
◦ #cp /etc/passwd /media/raid
 先查看raid的運作狀態
◦ #mdadm -D /dev/md0

故意將dev/sdc1設為故障狀態
◦ #mdadm /dev/md0 -f /dev/sdc1
 再查看raid的運作狀態,會發現sde1 逐漸替
補 sdc1 的工作
◦ #mdadm -D /dev/md0
 此時仍可正常讀檔,表示raid 有正常運作
◦ #cat /media/raid/passwd

11
RAID的移出與加入

將故障的dev/sdc1 移出,可以送修
◦ #mdadm /dev/md0 -r /dev/sdc1

查看是否已移出
◦ #mdadm -D /dev/md0

當故障的硬碟修復後,將其加回
◦ #mdadm /dev/md0 -a /dev/sdc1

關閉軟體RAID
◦ #umount /dev/md0
◦ #mdadm --stop /dev/md0
12
開機自動掛載
#vi /etc/fstab
/dev/md0 /media/raid ext3 defaults 1 2

13
邏輯磁卷管理員
LVM介紹
LVM架構
LVM管理工具
LVM實作
14
LVM介紹
LVM的全名邏輯磁卷管理,是以磁卷
(Volume)為單位,捨棄傳統磁碟以分割
(Partition)為磁碟的單位。
 LVM 的重點在於『可以彈性的調整
filesystem 的容量!』而並非在於效能
與資料保全上面。

ref:http://linux.vbird.org/linux_basic/0420quota.php#lvm
15
LVM架構
16
LVM的三個元件
實體磁卷PV:(Physical Volume)磁碟分割
區;System ID必須標示為8e。
 磁卷群組VG:(Volume Group)把多割磁
碟分割區(實體磁卷)建立成一個磁卷群
組。
 邏輯磁卷LV:(Logic Volume)把邏輯磁卷
當作原本的分割區使用。

17
LVM管理工具
實體磁卷
磁卷群組
虛擬磁卷
掃描
pvscan
vgscan
lvscan
檢視
pvdisplay
vgdisplay
lvdisplay
新建
pvcreate
vgcreate
lvscreate
移除
pvremove
vgremove
vgremove
放大
vgextend
lvestend
縮小
vgreduce
lvreduce
18
LVM流程圖
ref :http://linux.vbird.org/linux_basic/0420quota.php#lvm
19
LVM實作


準備3顆HDD
首先查看partitions
◦ #cat /proc/partitions

進行各硬碟格式化工作
◦
◦
◦
◦
◦
◦
◦
◦

#fdisk /dev/sdc
n
p
t
l 列出類型
8e lvm類型
w save
#partprobe 重讀分割表,不用重開機
檢查3顆硬碟的格式化結果
◦ #fdisk -l /dev/sd[cde]
20
•建立LVM
•#pvcreate /dev/sdc1
•查詢LVM
•#pvscan
•PV 裝置名稱 lvm2 容量大小
•指定 dev/sdc1 在vg00群組
•#vgcreate vg00 /dev/sdc1
•再查詢LVM
•#pvscan
•也可查詢群組狀態
•#vgdisplay vg00
•#vgscan
•指定大小100M 並且叫做lv00邏輯分割 由vg00群組切割
•#lvcreate -L 100M -n lv00 vg00
•會發現少100M
•#pvscan
21
•找出 lv
•#lvscan
•列出lv 詳細資訊
•#lvdisplay /dev/vg00/lv00
•格式為ext3
•#mkfs -j /dev/vg00/lv00
•掛載
•#mkdir /media/lvm
•#mount /dev/vg00/lv00 /media/lvm
•查看空間
•#df -h
22
•若之後空間不足要擴大到200M
•#lvextend -L 200M /dev/vg00/lv00
•變成200M
•#lvscan
•因擴大的是分割區,分割區內容沒有變更,所以掛載100M不變
•#df –h
•將指定的分割區做動態調整
•#resize2fs /dev/vg00/lv00
•變成200M了
•#df -h
23
將其它硬碟加到LVM群組

先檢查LVM
◦ #pvscan

加入群組
◦ #vgextend vg00 /dev/sdd1

移出群組
◦ #vgreduce vg00 /dev/sdd1
24