LVM管理

一,LVM知識要點

LVM(Logical Volume Manager) 是Linux環境下對磁盤分區進行管理的一種機制,它是一種抽象化存儲技術,實現的方式,根據操作系統而有所不同。LVM是建立在硬盤和分區之上的一個邏輯層,來提高磁盤分區管理的靈活性。通過LVM管理器,用戶可以便捷的操作管理虛擬的邏輯卷對數據進行管理,而不用去擔心複雜物理硬件變化.能夠方便的擴展邏輯卷的大小.


DM邏輯設備介紹(lvm對底層物理設備組合成邏輯設備的核心就是由內核中的dm模塊來實現的,dm纔是真正意義上將多個組件擴展爲一個邏輯設備的核心)

 

1 、物理卷(Pysical Volume):也就是物理磁盤,類似於/dev/sda2, /dev/sdb1等等,可以是一個分區或者是整塊硬盤,也可以是RAID陣列組成的分區.多個PV可以組合起來形成一個VG(卷組Volume Group),物理卷的基本單位是由PE (Physical Extends)物理磁盤塊組成,在創建時可以指定物理卷的大小,指定之後不能更改

 

2、PE (Physical Extend):建立VG的時候指定的block塊大小,默認是4MB。一個VG最大可以容許65534個PE.

 

3、卷組(Voume Group):將多個物理卷組合叫做卷組,卷組類似於擴展分區 必須被格式化之後纔可以使用,一個卷組內可以創建多個邏輯卷,一個邏輯卷可跨越多個物理卷。

 

4、邏輯卷(Logical Volume):在卷組之上創建的邏輯扇區,用戶對數據文件進行管理的扇區.本身有兩種邊界,一個是物理邊界,一個是邏輯邊界。可以創建文件系統對數據文件進行管理操作,需要注意的是假設一個PE的大小爲8MB,那麼創建一個大小爲50MB的邏輯卷,它必須是8的倍數(7*8=56)所以它不可能精確到50MB。調整邏輯卷大小,其實就是給邏輯卷通過卷組增加或減少物理塊實現.

 

5、LV:(邏輯塊),根據操作系統而有所不同。大小由物理塊決定.

 

6、 快照可以理解成訪問同一個文件的另一條途徑,把數據停留在過去的某一個時刻主要是實現數據備份.對卷創建了快照實際上是對邏輯卷創建快照,快照卷也就是跟它的邏輯卷在同一個卷組當中。當數據沒有改變時用戶是通過快照卷調用原卷數據,而數據發生改變的部分會記錄在快照卷中,用戶訪問時是把快照卷中備份的原數據返回給用戶.快照卷應該是隻讀的,不允許修改,跟原卷在同一卷組內.

 

 wKioL1PI1aSiCuYCAACunprOvU8066.jpg

 

命令介紹
物理卷命令

 pvcreate(創建pv) pvs(查看pv信息) pvdisplay(查看pv詳細信息) pvmove(將PV數據轉移至其他PV)pvremove(刪除pv) pvscan(掃描pv)

           pvcreate:創建pv物理卷   如:pvcreate /dev/sdb1
           pvs:查看pv物理卷    如:pvs /dev/sdb1

           pvdisplay:查看pv詳細信息    如:pvdisplay /dev/sdb1
           pvmove:將pv物理捲上的數據移動到其他pv    如:pvmove /path/to/pv
卷組命令
 vgcreate(創建vg) vgremove(刪除vg)vgextend(擴展vg) vgreduce(縮減vg )vgs(查看vg信息)vgdisplay(查看vg詳細信息) vgscan(掃描vg)
   -s:指定PE
           vgcreate myvg /dev/sdb{n,n} 創建VG卷組
           vgdisplay myvg 只查看myvg卷組
           vgremove myvg:刪除myvg卷組,(刪除一個vg)
           vgreduce VG_NAME /path/to/pv :縮小減vg,也就意味着可以把pv縮減(一定要先把pv上的數據移走)
           pvmove /dev/sdb1 把sdb1上面的數據移走
           vgreduce myvg /dev/sdb1 從myvg移走/dev/sdb1
           pvremove /dev/sdb1 刪除/dev/sdb1
           擴展vg:vgextend myvg /dev/sdb2 擴展myvg卷組
邏輯卷命令

lvcreate(創建lv) lvremove(刪除lv) lvextend(擴展lv) lvreduce(縮減lv)lvs(查看lv信息)lvdisplay(查看lv詳細信息) lvscan(掃描lv)

            lvcreate  -L +G(指定空間大小)-n LV_NAM(邏輯卷名稱) VG_NAME  會自動擴展VG_NAME
            lvdisplay:顯示所有lv邏輯卷    如:dev/myvg/testlv

 

 

二,常用命令 

邏輯卷擴展的步驟:
 1、先確定擴展的大小;並確保所屬的卷組有足夠的剩餘空間;
 2、擴展物理邊界:
  # lvextend -L [+]Size /path/to/lv_device
 3、擴展邏輯邊界:
  # resize2fs /path/to/lv_device

 

縮減邏輯卷的步驟:
 1、卸載卷,並執行強制檢測
  # e2fsck -f /path/to/lv_device
 2、縮減邏輯邊界:
  # resize2fs /path/to/lv_device SIZE
 3、縮減物理邊界:
  # lvreduce -L [-]Size /path/to/lv_device

 

 

三, 實驗:

1、創建一個由兩個物理卷組成大小爲20G的卷組myvg,要求PE大小16M;而後新建 大小爲7G邏輯卷mylv1,要求其文件系統爲ext4,塊大小爲2048,且開機能自動掛載至/users;

2、新建用戶openstack,其家目錄爲/users/openstack,而後切換至openstack用戶,複製一些文件至其家目錄中;

3、縮減mylv1至5G大小;而後切換至openstack用戶,確保其數據沒有丟失;

4、對mylv1創建快照卷snap-mylv1,並通過其備份數據至/tmp/user.tar.bz2;

 

 

劃分2個任意大小的硬盤分區組合爲一個20G的卷組myvg,設置PE大小爲16M,

            3.1.1新建兩個個10g分區sdb1和sdb2

wKiom1PLXCHA-W99AAV2Bo9ADkU617.jpg

        3.1.2 重讀分區

wKiom1PLXJ-DHSP2AABb7N7Dz5w462.jpg

        3.1.3 修改分區格式爲fd,只有分區ID設置爲8e,Linux LVM才能創建pv

wKiom1PLX-HzaMPuAAEcIj7qO-Y629.jpg

        3.1.4 創建pv

wKiom1PLXunyO0PjAACeDK4AzNc733.jpg

wKiom1PLYTWCdLUvAACbWPCHyzI333.jpg

        3.1.5 創建vg

wKiom1PLYZrhGuS4AADGMZz_RMY170.jpg

        3.1.6 創建lv, 大小爲7G邏輯卷mylv1,要求其文件系統爲ext4,塊大小爲2048

此處需要注意

#卷組只需要名稱,但lv靠設備文件來引用(/dev/卷組(gv)名/pv名  (/dev/vgtest/lvtest0)

#邏輯卷的設備文件存放路徑:/dev/mapper/

wKioL1PLZLbxwno_AACPlF5WoW8729.jpg

wKiom1PLZLjS30VuAALvgGRtoI8887.jpg

 

        3.1.7開機能自動掛載至/users

掛載

wKiom1PLZnuCuCz7AAAu6Or49As249.jpg

修改配置文件開機自動掛載/etc/fstab

wKioL1PLaLjRHorzAAG4hc8I6j0795.jpg

 

        3.1.8重啓驗證開機自動加載是否成功

wKioL1PLageDmX0KAAMR5s5RxuA899.jpg

 

 

新建用戶openstack,其家目錄爲/users/openstack,而後切換至openstack用戶,複製一些文件至其家目錄中;

        3.2.1 新建用戶openstack,其家目錄爲/users/openstack

 

wKiom1PLafjgzoPVAAIbkKPZqsU549.jpg

        3.2.2 切換至用戶openstack,複製一些文件至其家目錄中;

wKiom1PLbafQF7mKAAIACqChutQ208.jpg

 

縮減mylv1至5G大小;而後切換至openstack用戶,確保其數據沒有丟失;

縮減邏輯卷的步驟:
1、卸載卷,並執行強制檢測
# e2fsck -f /path/to/lv_device
2、縮減邏輯邊界:
# resize2fs /path/to/lv_device SIZE
3、縮減物理邊界:
# lvreduce -L [-]Size /path/to/lv_device

 

        3.3.1卸載並檢測lv

wKioL1PLcVzTY4DTAAFShUyUt3A343.jpg

         3.3.2縮減邏輯邊界:

wKiom1PLcVCzvvYGAAEXSLcY3J8453.jpg
       3.3.3 縮減物理邊界:
wKiom1PLcpzwwMgwAAD6UmGiI5o370.jpg

        3.3.4 重新掛載並驗證

wKioL1PLdNGh1-4DAALSA7F9C4Q350.jpg

 

對mylv1創建快照卷snap-mylv1,並通過其備份數據至/tmp/user.tar.bz2;

        3.4.1創建快照卷snap-mylv1,預計快照大小爲100M,但是因爲pv塊是16M爲單位,所以創建出來的快照爲112M

wKioL1PLdvHS1Yq_AACJCJFMr0g599.jpg

        3.4.2掛載快照卷,快照卷只給讀權限

wKiom1PLegbg8zeeAAISlJ0TEs0892.jpg

        3.4.3通過snap-mylv1備份數據至/tmp/user.tar.bz2

 wKiom1PM1umCAb47AANTmv4hHo4789.jpg

        3.4.4 查看備份包/tmp/user.tar.bz2

wKioL1PM2Oni7BmOAANTmv4hHo4220.jpg

 

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