基於CentOS 6 系統創建邏輯卷LVM,執行擴容,縮減,刪除等操作
什麽是邏輯卷?
LVM是邏輯盤卷管理(Logical Volume Manager)的簡稱,它是Linux環境下對磁盤分區進行管理的一種機制,LVM是建立在硬盤和分區之上的一個邏輯層,來提高磁盤分區管理的靈活性。
LVM的工作原理其實很簡單,它就是通過將底層的物理硬盤抽象的封裝起來,然後以邏輯卷的方式呈現給上層應用。在傳統的磁盤管理機制中,我們的上層應用是直接訪問文件系統,從而對底層的物理硬盤進行讀取,而在LVM中,其通過對底層的硬盤進行封裝,當我們對底層的物理硬盤進行操作時,其不再是針對於分區進行操作,而是通過一個叫做邏輯卷的東西來對其進行底層的磁盤管理操作。舉例如我增加一個物理硬盤,這個時候上層的服務是感覺不到的,因為呈現給上層服務的是以邏輯卷的方式。
LVM最大的特點就是可以對磁盤進行動態管理。因為邏輯卷的大小是可以動態調整的,而且不會丟失現有的數據。如果我們新增加了硬盤,其也不會改變現有上層的邏輯卷。作為一個動態磁盤管理機制,邏輯卷技術大大提高了磁盤管理的靈活性。
LVM的技術需求與產生背景
企業日益變化的存儲需求使得傳統的磁盤分區存儲顯得不夠靈活,磁盤空間總有一天會被數據填滿,那該怎麽辦呢?
這個時候邏輯卷盤LVM的誕生也就順時改進了存儲技術,也大大優化在線存儲技術實現磁盤在線動態管理,降低了企業的管理成本。
基本邏輯卷LVM的管理概念:
PV(Physical Volume)- 物理卷
即物理卷在邏輯卷管理中處於最底層,它可以是實際物理硬盤上的分區
VG(Volumne Group)- 卷組
卷組建立在物理卷之上,一個卷組中至少要包括一個物理卷,在卷組建立之後可動態添加物理卷到卷組中。一個邏輯卷管理系統工程中可以只有一個卷組,也可以擁有多個卷組。
LV(Logical Volume)- 邏輯卷
邏輯卷建立在卷組之上,卷組中的未分配空間可以用於建立新的邏輯卷,邏輯卷建立後可以動態地擴展和縮小空間。系統中的多個邏輯卷可以屬於同一個卷組,也可以屬於不同的多個卷組。
PE(Physical Extent)- 即物理塊
LVM 默認使用4MB的PE區塊,而LVM的LV最多僅能含有65534個PE (lvm1 的格式),因此默認的LVM的LV最大容量為4M*65534/(1024M/G)=256G。PE是整個LVM 最小的儲存區塊,也就是說,其實我們的資料都是由寫入PE 來處理的。簡單的說,這個PE 就有點像文件系統裏面的block 大小。所以調整PE會影響到LVM 的最大容量!不過,在CentOS 6.x 以後,由於直接使用 lvm2 的各項格式功能,因此這個限制已經不存在了。
現在開始我們的實驗環境搭配:
我們邏輯卷的搭建全部在虛擬機上實現,如果有什麽不同的配置選項,建議還是以生產環境為主要驗證對象。
虛擬機是:VMware Workstation 12
系統是:Centos6.8 | LVM版本:lvm2.2
磁盤我們采用一個分區和一個整塊硬盤,容量大小分區10G,磁盤20G
(因為我們的實驗環境是一個分區和一整塊硬盤。但對於raid設備實現邏輯卷,生產環境中應該是比較少用,所以我們不介紹),相信您學完此方法用raid來實現邏輯卷管理,自然不在話下。
註意:分出單個磁盤分區,需要加卷標,如果是一整塊硬盤就不用加卷標直接格式化就行。
哦,對了。我先要刪除邏輯卷的實驗環境。這個刪除有意思,完全是反著來的。
接下來第一步;對單個硬盤分出一個分區 (簡單磁盤分區,命令fdisk ,一大步)
第一個磁盤分區我們分完了,看看小夥伴們,分區是不是很簡單呢...
接下來第二步;獨立一塊硬盤我們不用分區直接拿來創建物理卷就行
把剛分好的分區與單個硬盤一起創建為物理卷(磁盤的名稱以自己系統檢測出來的為準我這裏是sdb,sdc)
[[email protected] ~]#pvcreate /dev/sd{b1,c} (創建物理卷,命令pvcreate ,二大步)
創建成功,並且用pvs看格式為lvm2
接下來第三步;創建卷組
把/dev/sdb1和/dev/sdc組合創建為一個卷組,卷組名為vg0
[[email protected] ~]# vgcreate vg0 /dev/sd{b1,c}(創建卷組,命令vgcreate ,三大步)
創建成功,並且用vgs查看VG對應的卷組名是vg0,顯示PV卷有兩個,共30GB的空間容量
接下來第四步;創建邏輯卷
把新增的卷組容量加入邏輯卷中,邏輯卷名為lv0
[[email protected] ~]# lvcreate -n lv0 -L 10G vg0 (創建邏輯卷,命令lvcreate ,四大步)
此命令的意思是:從vg0 中分出10G的空間給lv0使用
顯示整個邏輯卷的詳細信息 lvdisplay
接下來第五步;格式化邏輯卷
註意:我們是先創建完pv,vg和lvm之後再格式化為ext4文件系統,跟raid的格式化是反著來的。
[[email protected] ~]# mkfs.ext4 /dev/vg0/lv0 (格式化邏輯卷,命令mkfs.ext4,五大步)
接下來第六步;掛載邏輯卷(掛載邏輯卷之前要先把邏輯卷路徑寫入配置文件fstab)
vim /etc/fstab (掛載邏輯卷修改fstab文件,六大步1)
[[email protected] ~]# mount /dev/vg0/lv0 /mnt/lv0/ (掛載邏輯卷,六大步2)
註意;先要在創建掛載目錄,用mkdir -p /mnt/lv0 ,(-p遞歸創建目錄,媽的老跟我說基什麽什麽,記不住。)
到此基本算成功搭起了邏輯卷,往下就是一些簡單修改測試了。不過您可以嘗試reboot下看配置是否永久生效!
接下來第七步;在已掛載的邏輯卷內拷貝文件測試
拷貝文件測試的時候我老是cp不成功加-r也不成功,後來經過幾次折騰忽然想起了別名alias。仿佛一語驚醒夢我中人
因為默認系統給cp命令做了一個別名,默認是cp -i選項。所以在復制文件不想提示就在cp別名前面加個註釋就行。
拷貝文件測試與寫入文件測試均不受影響,可正常執行
[[email protected] ~]# cd /mnt/lv0/ (在邏輯卷下測試文件,七大步)
[[email protected] lv0]# dd if=/dev/zero of=f1 bs=1M count=1024
接下來第八步;擴展邏輯卷(前提卷組有空間)
[[email protected] ~]# lvextend -L +10G /dev/vg0/lv0 (擴展邏輯卷,命令lvextend,八大步)
在lv0邏輯卷中原有的基礎上增加了10G空間,原有10G+10G等於20G擴容成功
以上擴容邏輯卷可能存在磁盤數據不同步問題,實際已增加,但是不顯示(我一次增加成功並顯示)
如果新增空間沒顯示記得同步下;
resize2fs /dev/vg0/lv0 (只能同步ext系列文件系統)
接下來第九步;擴展卷組(前提卷物理卷有空間)
先把磁盤創建為物理卷
[[email protected]~]# pvcreate /dev/sdd (擴展卷組,命令vgextend,九大步)
我創建了一個20G的物理卷,原來邏輯卷是30G還剩10G
把物理卷加入卷組
[[email protected]~]# vgextend vg0 /dev/sdd
我對組加入了一個20G的物理卷,原來邏輯卷是30G還剩10G,增加後總共50G空間還剩30G空間
擴展卷組成功 (df命令是看當前系統已掛載文件系統信息)
註意:如果用df命令 查看文件系統大小,但實際擴容空間是不顯示的。因為你增加的是空間容量並不是格式化後
的文件系統容量,所以你需要執行第八步的同步命令來新增文件系統容量
[[email protected] ~]# resize2fs /dev/vg0/lv0
接下來第十步;縮減邏輯卷空間(前提必須離線操作) (縮減文件系統空間,命令resize2fs,十大步)
先卸載邏輯卷系統 umount /mnt/lv0
再縮減文件系統,先執行e2fsck -f命令檢查文件系統信息
[[email protected] ~]# e2fsck -f /dev/vg0/lv0
[[email protected] ~]# resize2fs /dev/vg0/lv0 10G
[[email protected] ~]# lvreduce /dev/vg0/lv0 -L 10G
再掛載
到此邏輯卷卷縮減成功。
接下來第十一步;縮減卷組(前提必須離線操作) (縮減卷組空間,命令vgreduce,十一大步)
先卸載邏輯卷系統 umount /mnt/lv0,再查看pv信息
[[email protected] ~]# vgreduce vg0 /dev/sdd
將vg0組的sdd磁盤移除該組
查看vgs信息,空間少了
到此vg0組的空間縮減成功。
接下來第十二步最後一步;刪除邏輯卷 (這個有意思,是把創建LVM的步驟反過來操作,十二大步)
正確執行以下四條命令,方可徹底刪除邏輯卷,特別簡單。
1,umount /mnt/lv0 (先把邏輯卷的lv0掛載取消)
2,lvremove /dev/vg0/lv0 (用lvremove 命令後面跟設備地址移除LV)
3,vgremove vg0 (用vgremove 加卷組名,移除vg0卷組)
4,pvremove /dev/sdb1 /dev/sdc /dev/sdd (移除所有PV物理卷)
到此結束整個測驗。(有需要補充的可以留言,歡迎指正)
後面的關於邏輯卷快照的相關測驗,後續奉上。學習太累了,睡覺困的一筆
本文出自 “51eA” 博客,請務必保留此出處http://51eat.blog.51cto.com/11892702/1843663
基於CentOS 6 系統創建邏輯卷LVM,執行擴容,縮減,刪除等操作