1骨饿、LVM介紹
LVM的安裝 ? ? 采用yum install lvm2即可
PV(Physical Volume)- 物理卷
物理卷在邏輯卷管理中處于最底層,它可以是實際物理硬盤上的分區(qū)溉浙,也可以是整個物理硬盤,也可以是raid設(shè)備蒋荚。
VG(Volumne Group)- 卷組
卷組建立在物理卷之上戳稽,一個卷組中至少要包括一個物理卷,在卷組建立之后可動態(tài)添加物理卷到卷組中圆裕。一個邏輯卷管理系統(tǒng)工程中可以只有一個卷組广鳍,也可以擁有多個卷組。
LV(Logical Volume)- 邏輯卷
邏輯卷建立在卷組之上吓妆,卷組中的未分配空間可以用于建立新的邏輯卷,邏輯卷建立后可以動態(tài)地擴展和縮小空間吨铸。系統(tǒng)中的多個邏輯卷可以屬于同一個卷組行拢,也可以屬于不同的多個卷組。
2诞吱、安裝LVM管理軟件與LVM使用方式
? ? ? ? ?? yum install lvm2
? ? ? ? ? ? LVM的使用以及卷的創(chuàng)建需要遵循一定的規(guī)則舟奠,第一要先創(chuàng)建物理卷,然后創(chuàng)建邏輯卷組房维,然后創(chuàng)建邏輯卷的形式進行使用沼瘫,最后在邏輯卷上創(chuàng)建文件系統(tǒng)后就可以正常使用了
3、創(chuàng)建物理卷PV
pvcreate /dev/sdb1? /dev/sdb2 /dev/sdb3
在這三個分區(qū)上創(chuàng)建物理卷PV咙俩,其實就是在分區(qū)上創(chuàng)建出中間的抽象層耿戚,就是寫上部分數(shù)據(jù)即可湿故。
Physical volume "/dev/sdb1" successfully created.
Physical volume "/dev/sdb2" successfully created.
Physical volume "/dev/sdb3" successfully created.
出現(xiàn)這個創(chuàng)建成功
pvdisplay ? 顯示已經(jīng)創(chuàng)建的物理卷的詳細信息
PVS ? ? ?? 查看簡略信息
PVSCAN ? ? ?? 查看檢錄信息
4、創(chuàng)建邏輯卷組
vgcreate vg0 /dev/sdb1 /dev/sdb2 /dev/sdb3
創(chuàng)建名字為vg0的邏輯卷組膜蛔,將磁盤分區(qū)sdb1-3添加到卷組內(nèi)部去
vgdisplay ? ? 顯示詳細信息
vgs ? ?? 顯示簡略信息
VG #PV #LV #SN Attr VSize VFree?
vg0? 3? 0? 0 wz--n- <11.99g <11.99g
5坛猪、創(chuàng)建邏輯卷
lvcreate -L 5G -n lv1 vg0 ??
創(chuàng)建邏輯卷lv1 ,從邏輯卷組vg0中分出5G大小來
lvdisplay ? ?? 顯示詳細信息
lvs ? ? ? ? ?? 顯示簡略信息
6皂股、LVM卷的掛在
需要對邏輯卷先創(chuàng)建文件系統(tǒng)墅茉,他的路徑在/dev/vg0/lv1 ??
mkfs.ext4 ? /dev/vg0/lv1 對邏輯卷1創(chuàng)建文件系統(tǒng)完成然后就可以掛在正常使用了
7、邏輯卷的擴容
? ? 1呜呐、LV的擴容 ? lvextend -L +1G /dev/vg0/lv1 ? ? 對邏輯卷lv1擴容1G
? ? 2就斤、擴容后調(diào)用命令resize2fs /dev/vg0/lv1 ? ? 在df查看掛載就會顯示分區(qū)變大了
8、邏輯卷組的擴容
? ? 1蘑辑、增加物理卷的數(shù)量可以擴容
????????????vgextend vg0 /dev/sdb4 ? ? 將sdb4添加到邏輯卷組vg0里面去
9洋机、LV(邏輯卷)縮減
? ? 1、卸載文件系統(tǒng)
? ? ? ? ? ? umount
? ? 2以躯、進行邏輯卷檢查
????????????e2fsck -f /dev/vg0/lv1?
? ? 3槐秧、重新選定系統(tǒng)大小
????????????resize2fs /dev/vg0/lv1? 10G
????4、修改邏輯卷大小
????????????lvresize -L 10G /dev/vg0/lv1?
10忧设、VG(邏輯卷組)的縮減
? ? 1刁标、卸載文件系
????????????umount
? ? 2、將/dev/sdb4把 從vg0 中移除
? ? ? ? ? ? vgreduce ? vg0 ?? /dev/sdb4
11址晕、刪除
? ? 1膀懈、刪除LV
? ? ? ? lvremove? /dev/vg0/lv1
? ? 2、刪除VG
? ? ? ? vgremove vg0
? ? 3谨垃、刪除PV
? ? ? ? pvremove /dev/sdb1
12启搂、LVM快照
21、RAID(獨立冗余磁盤陣列)
RAID技術(shù)通過把多個硬盤設(shè)備組合成一個容量更大的刘陶,安全性更好的磁盤陣列胳赌。把數(shù)據(jù)切割成許多區(qū)段后分別放在不同的物理磁盤上,然后利用分散讀寫技術(shù)來提升磁盤陣列整體的性能匙隔,同時把多個重要數(shù)據(jù)的副本同步到不同的物理設(shè)備上疑苫,從而起到了非常好的數(shù)據(jù)冗余備份效果。缺點就是磁盤利用率低纷责。
22捍掺、RAID的分類目前來說至少有幾十種,這里簡單介紹一下最常見的四種再膳,RAID0挺勿,RAID1,RAID10喂柒,RAID5不瓶。
?1禾嫉、RAID 0
????????RAID 0是最早出現(xiàn)的RAID模式,即Data Stripping數(shù)據(jù)分條技術(shù)湃番。RAID 0是組建磁盤陣列中最簡單的一種形式夭织,只需要2塊以上的硬盤即可,成本低吠撮,可以提高整個磁盤的性能和吞吐量尊惰。RAID 0沒有提供冗余或錯誤修復(fù)能力,但實現(xiàn)成本是最低的泥兰。
?2弄屡、RAID 1
?RAID 1稱為磁盤鏡像,原理是把一個磁盤的數(shù)據(jù)鏡像到另一個磁盤上鞋诗,也就是說數(shù)據(jù)在寫入一塊磁盤的同時膀捷,會在另一塊閑置的磁盤上生成鏡像文件,在不影響性能情況下最大限度的保證系統(tǒng)的可靠性和可修復(fù)性上削彬,只要系統(tǒng)中任何一對鏡像盤中至少有一塊磁盤可以使用全庸,甚至可以在一半數(shù)量的硬盤出現(xiàn)問題時系統(tǒng)都可以正常運行,當(dāng)一塊硬盤失效時,系統(tǒng)會忽略該硬盤融痛,轉(zhuǎn)而使用剩余的鏡像盤讀寫數(shù)據(jù)壶笼,具備很好的磁盤冗余能力。雖然這樣對數(shù)據(jù)來講絕對安全雁刷,但是成本也會明顯增加覆劈,磁盤利用率為50%。
? ? 3沛励、RAID0+1
????RAID 0+1名稱上我們便可以看出是RAID0與RAID1的結(jié)合體责语。在我們單獨使用RAID 1也會出現(xiàn)類似單獨使用RAID 0那樣的問題,即在同一時間內(nèi)只能向一塊磁盤寫入數(shù)據(jù)目派,不能充分利用所有的資源坤候。為了解決這一問題,我們可以在磁盤鏡像中建立帶區(qū)集企蹭。因為這種配置方式綜合了帶區(qū)集和鏡像的優(yōu)勢铐拐,所以被稱為RAID 0+1。把RAID0和RAID1技術(shù)結(jié)合起來练对,數(shù)據(jù)除分布在多個盤上外,每個盤都有其物理鏡像盤吹害,提供全冗余能力螟凭,允許一個以下磁盤故障,而不影響數(shù)據(jù)可用性它呀,并具有快速讀/寫能力螺男。RAID0+1要在磁盤鏡像中建立帶區(qū)集至少4個硬盤棒厘。也有一種叫法叫RAID10.
4、RAID5:分布式奇偶校驗的獨立磁盤結(jié)構(gòu)
????它的奇偶校驗碼存在于所有磁盤上下隧。RAID5的讀出效率很高奢人,寫入效率一般,塊式的集體訪問效率不錯淆院。因為奇偶校驗碼在不同的磁盤上何乎,所以提高了可靠性。但是它對數(shù)據(jù)傳輸?shù)牟⑿行越鉀Q不好土辩,而且控制器的設(shè)計也相當(dāng)困難支救。在RAID 5中有“寫損失”,即每一次寫操作拷淘,將產(chǎn)生四個實際的讀/寫操作各墨,其中兩次讀舊的數(shù)據(jù)及奇偶信息,兩次寫新的數(shù)據(jù)及奇偶信息启涯。
總結(jié):RAID0大幅度提升了設(shè)備的讀寫性能贬堵,但不具備容錯能力。RAID1雖然十分注重數(shù)據(jù)安全结洼,但磁盤利用率太低黎做。RAID5就是raid0和RAID5的一種折中,既提升了磁盤讀寫能力补君,又有一定的容錯能力引几,成本也低。RAID10就是RAID0和raid1的組合挽铁,大幅度提升讀寫能力伟桅,較強的容錯能力,成本也較高叽掘。一般中小企業(yè)用RAID5楣铁,大企業(yè)采用RAID10。
23更扁、安裝madam命令
? ? yum install madam
24盖腕、部分命令詳解
-a????檢測設(shè)備名稱
-n????指定設(shè)備數(shù)量
-l????指定RAID級別
-C????創(chuàng)建
-v????顯示過程
-f????模擬設(shè)備損壞
-r????移除設(shè)備
-Q????查看摘要信息
-D????查看詳細信息
-S????停止RAID磁盤陣列
24、創(chuàng)建一個RAID5模式的磁盤陣列
mdadm -C /dev/md0 -ayes -l5 -n3 -x1 /dev/sdb[1-4]
-C --create ?創(chuàng)建陣列
-a --auto ?同意創(chuàng)建設(shè)備浓镜,如不加此參數(shù)時必須先使用mknod 命令來創(chuàng)建一個RAID設(shè)備溃列,不過推薦使用-a yes參數(shù)一次性創(chuàng)建
-l ?--level 陣列模式,支持的陣列模式有 linear, raid0, raid1, raid4, raid5, raid6, raid10, multipath, faulty, container膛薛;
-n ? ? --raid-devices? ? 陣列中活動磁盤的數(shù)目听隐,該數(shù)目加上備用磁盤的數(shù)目應(yīng)該等于陣列中總的磁盤數(shù)目;
25哄啄、查看RADI詳情
mdadm -D /dev/md0
Raid Level : 陣列級別雅任;?
Array Size : 陣列容量大蟹绶丁;
Raid Devices : RAID成員的個數(shù)沪么;
Total Devices : RAID中下屬成員的總計個數(shù)硼婿,因為還有冗余硬盤或分區(qū),也就是spare禽车,為了RAID的正常運珩寇漫,隨時可以推上去加入RAID的;State : clean, degraded, recovering 狀態(tài)哭当,包括三個狀態(tài)猪腕,clean 表示正常,degraded 表示有問題钦勘,recovering 表示正在恢復(fù)或構(gòu)建陋葡;
Active Devices : 被激活的RAID成員個數(shù);
Working Devices : 正常的工作的RAID成員個數(shù)彻采;
Failed Devices : 出問題的RAID成員腐缤;
Spare Devices : 備用RAID成員個數(shù),當(dāng)一個RAID的成員出問題時肛响,用其它硬盤或分區(qū)來頂替時岭粤,RAID要進行構(gòu)建,在沒構(gòu)建完成時特笋,這個成員也會被認為是spare設(shè)備剃浇;
UUID : RAID的UUID值,在系統(tǒng)中是唯一的猎物;
26虎囚、創(chuàng)建RAID配置文件
創(chuàng)建RAID 配置文件/etc/mdadm.conf
RAID 的配置文件為/etc/mdadm.conf,默認是不存在的蔫磨,需要手工創(chuàng)建淘讥。
該配置文件的主要作用是系統(tǒng)啟動的時候能夠自動加載軟RAID,同時也方便日后管理堤如。但不是必須的蒲列,推薦對該文件進行配置。
我們這里需要創(chuàng)建這個文件搀罢,測試中發(fā)現(xiàn)蝗岖,如果沒有這個文件,則reboot 后榔至,已經(jīng)創(chuàng)建好的md0 會自動變成md127剪侮。
/etc/mdadm.conf 文件內(nèi)容包括:
由DEVICE 選項指定用于軟RAID的所有設(shè)備,和ARRAY 選項所指定陣列的設(shè)備名、RAID級別瓣俯、陣列中活動設(shè)備的數(shù)目以及設(shè)備的UUID號。
echo DEVICE /dev/sdb[1-4] >> /etc/mdadm.conf
mdadm -Ds >> /etc/mdadm.conf
26兵怯、RAID測試彩匕,RAID中模擬一個自盤出現(xiàn)故障
mdadm /dev/md0 -f /dev/sdb1 ?? 在之前創(chuàng)建的md0中分區(qū)/dev/sdb1出現(xiàn)故障
cat /proc/mdstat ?? 查看重構(gòu)過程
27、一處損壞的磁盤
mdadm /dev/md0 -r /dev/sdb1 ? ? ?? 在磁盤陣列md0中將磁盤或者分區(qū)
28媒区、刪除出現(xiàn)問題的磁盤
mdadm /dev/md0 -r /dev/sdb1
29驼仪、增加一塊磁盤
mdadm /dev/md0 -a? /dev/sdb1
添加磁盤會曾為熱備盤,讓熱備盤轉(zhuǎn)變?yōu)榛顒哟疟P需要執(zhí)行以下命令
mdadm -G ? /dev/md0 -n4 ?? 將序號為4的熱備盤轉(zhuǎn)轉(zhuǎn)變?yōu)榛顒哟疟P
增加后只是陣列的容量增加了袜漩,但是文件系統(tǒng)還沒有增加绪爸,需要執(zhí)行一下命令
resize2fs ?? /dev/md0 ?? 將磁盤陣列的容量同步到文件系統(tǒng)去
30、停止磁盤陣列
mdadm -S /dev/md0 ?? 停止/dev/md0磁盤陣列
mdadm --zero-superblock /dev/sdb[1-4] ?? 清除所有磁盤上的超級塊數(shù)據(jù)才行宙攻,要不沒法刪除
停止后還要刪除配置文件奠货,否則重啟還會出現(xiàn)