監控系統主機存儲空間不夠用咋辦?DZ先生一招搞定!

自述
曾經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君,讓監控變得更簡單***

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章