LVM最佳實踐

LVM邏輯卷管理器

LVM概念

在Linux中,邏輯卷管理器(Logical Volume Manager, LVM)是為Linux內核提供邏輯卷管理的設備映射器目標。大多數現代Linux發行版都能夠識別lvm,能夠將根文件系統放在邏輯卷上。

LVM用途

  • 創建多個物理卷的單個邏輯卷或整個硬碟(有點類似於RAID 0,但更類似於JBOD),允許動態調整卷大小。
  • 通過允許在不停機或服務中斷的情況下添加和替換磁碟,並結合熱交換來管理大型硬碟場。
  • 在小型系統(如桌面)上,LVM允許根據需要輕鬆地調整文件系統的大小,而不必在安裝時估計分區可能需要多大。
  • 通過記錄邏輯卷的快照來執行一致的備份。
  • 用一個密碼加密多個物理分區。

LVM架構圖

LVM組件圖

LVM舉例(Centos7系統的操作)

#查看磁碟
fdisk -l

#創建物理卷
pvcreate /dev/xvdb

#創建卷組
vgcreate VolGroup00 /dev/xvdb

#激活卷組
vgchange -a y VolGroup00

#設置lv大小的時候有兩種方法:
#第一種自定義大小>直接設置lv大小510000M
lvcreate -L510000 -n lv_bee VolGroup00
#第二種全部空間設置>先查看vgdisplay
  --- Volume group ---
  VG Name               VolGroup2
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  2
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                1
  Open LV               1
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               500.00 GiB
  PE Size               4.00 MiB
  Total PE              127999
  Alloc PE / Size       127999 / 500.00 GiB
  Free  PE / Size       0 / 0   
  VG UUID               4JgmAK-6p2s-6qJM-E9E9-k5c3-fcGA-IS0nSP

#全部創建成lv
lvcreate -l 127999 -n lv_data VolGroup00

#將該設備格式化成ext4文件系統
mkfs -t ext4 /dev/VolGroup00/lv_data
#輸出如下資訊
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
3276800 inodes, 13106176 blocks
655308 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2162163712
400 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
	4096000, 7962624, 11239424

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

#加入fstab開機自動掛載
vim /etc/fstab
#添加掛載資訊
/dev/mapper/VolGroup00-lv_data  /data                 ext4    defaults        0 0

#創建數據目錄
mkdir /data

#執行掛載命令
mount -a

#查看掛載情況
df -h