自述
曾經DZ先生做過這樣的一個校園項目,在施工初期的時候,平臺主機只有一塊1T系統盤,且這個1T的硬盤只剩餘500多G,但由於項目規劃的原因,沒有增加額外的存儲來存儲校園的4臺人臉相機,於是乎只能將這4臺人臉的照片存儲平臺主機,雖然早就知道存儲有用盡的一天,但這一天還是早早的到來了。爲了解決這個存儲耗盡的問題,DZ先生我給出了使用LVM邏輯卷的方案,可在業務不中斷,不更換硬盤,不導入導出業務的情況下,通過增加幾塊硬盤來解決問題。
原理
LVM(Logical volume Manager)定義:
邏輯卷管理通過將底層物理硬盤抽象封裝起來,以邏輯卷的形式表現給上層系統。邏輯卷的大小可以動態調整,而且不會丟失現有數據。新加入的硬盤也不會改變現有上層的邏輯卷。
圖一:LVM組成
圖二:LV擴展
PE(physical extend): 物理拓展,是硬盤條帶化後的存儲塊,默認爲4M。
PV(physical volume):物理卷是格式化硬盤,包含衆多PE的存儲空間,一個PV相當於一塊硬盤。
VG(physical group):卷組是包含多個PV的一組空間,來自不同的PV的PE進入VG的存儲池裏,空間不夠時,只需要加入新的PV即可。
LV(logical volume):邏輯卷是真正可以被使用的存儲,存儲空間從VG中劃分。
最後將LV格式化並掛載到相應的目錄下,即可被正式用。
操作步驟
1.將物理磁盤設備初始化爲物理卷
2.創建卷組,並將PV加入卷組中
3.基於卷組創建邏輯卷
4.爲創建好的邏輯卷創建文件系統
5.將格式化好的邏輯卷掛載使用
1.將物理磁盤設備初始化爲物理卷
pvcreate /dev/sdb /dev/sdc
通過fdisk -l 命令查到,我們有兩塊新的盤sdb和sdc,將其創建爲PV
查詢命令pvs 或者pvdisplay
2.創建卷組,並將PV加入卷組中
vgcreate linux111 /dev/sdb /dev/sdc --------linux111爲卷組名
查詢命令vgs 或者vgdisplay
3.基於卷組創建邏輯卷
lvcreate -n mylv -L 2G linux111 -n 邏輯卷名字,-L分配大小 100M、1G等等
注:創建完成後,會在/dev下自動創建linux111卷組名的文件夾,同時mylv1也會在/dev/linux111/目錄下
查詢命令lvs 或者lvdisplay
4.爲創建好的邏輯卷創建文件系統
mkfs.ext3 /dev/linux111/mylv1
5.將格式化好的邏輯卷掛載使用
mount /dev/linux111/mylv /mnt 可以用mount查看是否掛載成功
/dev/mapper/linux111-mylv1 on /mnt type ext3 (rw)
刪除LVM
倒過來刪除
1. 去除掛載
umount /mnt
2. 刪除LV
lvremove /dev/linux111/mylv2
3.刪除VG
vgremove linux111
4. 刪除PV
pvremove /dev/sdb
如何拉伸一個邏輯卷
1. 首先確保卷組裏有足夠的空間 vgdisplay|| vgs
2. 擴容LV
擴容前
lvextend -L +100M /dev/linux111/mylv1
擴容後
注意:雖然擴容了,但是沒有更新文件系統,新增的100M是不會顯示出來的
3. 更新文件系統,更新完則爲200M
resize2fs /dev/linux111/mylv1
如何拉伸一個卷組
顧名思義,卷組裏沒有過多的空間給LV,需要增加擴容空間,也就是擴容PE
1. 將要添加到VG的硬盤格式化PV
pvcreate /dev/sdc
2. 將PV添加到VG中
擴容前
vgextend linux111 /dev/sdc
擴容後
如何縮小一個邏輯卷
注意: 實際中不要輕易的去縮小一個邏輯卷,能不動則不動。一般只擴容,不縮減。這邊僅以實驗展示,並非實際環境!
1. 卸載已經掛載的邏輯卷
[root@CENTOS /]# umount /dev/linux111/mylv1
2. 縮小文件系統(這邊會有命令提示你檢查文件系統)
resize2fs /dev/linux111/mylv1 100M 縮小到100M
這邊檢驗通過
3. 縮小LV並查看LV大小
lvreduce -L -100M /dev/linux111/mylv1
4. 最後在掛載
mount /dev/linux111/mylv1 /mnt
如何縮小一個卷組
注意: 實際中不要輕易的去縮小一個卷組,能不動則不動。一般只擴容,不縮減。這邊僅以實驗展示,並非實際環境!
1. 將一個pv從指定的卷組中去除
vgreduce linux111 /dev/sdc
溫馨提示: 實際中,建議只擴不減,只擴不減,只擴不減!!!
***關注DZ君,讓監控變得更簡單***