Linux LVM逻辑卷管理配置与磁盘空间在线扩容实战

LVM逻辑卷管理架构与核心概念

LVM(Logical Volume Manager)是Linux系统下的逻辑卷管理框架,提供比传统分区更灵活的磁盘管理能力。LVM通过三层抽象结构实现存储空间的动态分配:物理卷(PV)→ 卷组(VG)→ 逻辑卷(LV)。这种架构允许在不停机的情况下对存储空间进行在线扩容、缩减和迁移。

物理卷PV是LVM管理的基础,对应磁盘或磁盘分区。卷组VG由一个或多个PV组成,是存储池的概念。逻辑卷LV从VG中分配空间创建,相当于可动态调整大小的虚拟分区,可直接格式化并挂载使用。

创建LVM存储结构

在新增磁盘/dev/sdb上创建LVM结构的完整流程:

# 1. 创建物理卷PV
pvcreate /dev/sdb
pvcreate /dev/sdc

# 查看PV信息
pvdisplay
pvs

# 2. 创建卷组VG
vgcreate vg_data /dev/sdb /dev/sdc

# 查看VG信息
vgdisplay
vgs

# 3. 创建逻辑卷LV
# 分配50GB空间创建lv_app
lvcreate -L 50G -n lv_app vg_data

# 使用VG剩余空间的100%创建lv_log
lvcreate -l 100%FREE -n lv_log vg_data

# 查看LV信息
lvdisplay
lvs

格式化与挂载逻辑卷

逻辑卷创建后格式化并挂载到目录:

# 格式化为xfs文件系统
mkfs.xfs /dev/vg_data/lv_app
mkfs.xfs /dev/vg_data/lv_log

# 创建挂载点
mkdir -p /data/app
mkdir -p /data/log

# 挂载逻辑卷
mount /dev/vg_data/lv_app /data/app
mount /dev/vg_data/lv_log /data/log

# 写入fstab实现开机自动挂载
echo "/dev/vg_data/lv_app /data/app xfs defaults 0 0" >> /etc/fstab
echo "/dev/vg_data/lv_log /data/log xfs defaults 0 0" >> /etc/fstab

# 验证fstab配置
mount -a
df -h

LVM在线扩容操作

当逻辑卷空间不足时,LVM支持在不卸载文件系统的情况下在线扩容。这是LVM相对于传统分区的核心优势。

场景:/data/app当前50GB空间即将用尽,需要扩容到100GB。

# 方式一:从VG剩余空间扩容(VG有足够空闲PE)
lvextend -L +50G /dev/vg_data/lv_app

# 方式二:指定最终大小
lvextend -L 100G /dev/vg_data/lv_app

# 方式三:使用VG全部剩余空间
lvextend -l +100%FREE /dev/vg_data/lv_app

# 刷新文件系统(xfs)
xfs_growfs /data/app

# ext4文件系统使用resize2fs
resize2fs /dev/vg_data/lv_app

# 验证扩容结果
df -h /data/app

新增磁盘扩容卷组

当VG空间不足时,需要先添加新磁盘到VG再扩容LV:

# 新增磁盘/dev/sdd创建为PV
pvcreate /dev/sdd

# 将新PV加入现有VG
vgextend vg_data /dev/sdd

# 确认VG容量已增加
vgs vg_data

# 继续扩容LV
lvextend -l +100%FREE /dev/vg_data/lv_app
xfs_growfs /data/app

LVM快照备份与恢复

LVM快照是某一时间点逻辑卷的只读副本,用于在线备份和回滚。快照采用写时复制(COW)机制,初始不占用额外空间,仅在源数据变化时才复制变动的数据块。

# 创建10GB快照(大小建议为源LV的15%-20%)
lvcreate -L 10G -s -n lv_app_snapshot /dev/vg_data/lv_app

# 挂载快照进行备份
mkdir -p /mnt/snapshot
mount /dev/vg_data/lv_app_snapshot /mnt/snapshot

# 使用rsync从快照备份
rsync -avz /mnt/snapshot/ /backup/lv_app_20260815/

# 备份完成后卸载并删除快照
umount /mnt/snapshot
lvremove -f /dev/vg_data/lv_app_snapshot

快照恢复:当源数据损坏时,可通过快照合并(merge)回滚到快照时间点的状态。合并操作在下次激活LV时执行:

# 合并快照到源LV
lvconvert --merge /dev/vg_data/lv_app_snapshot

# 如果LV已挂载,合并将在下次激活时执行
# 需要先卸载再激活
umount /data/app
lvchange -an /dev/vg_data/lv_app
lvchange -ay /dev/vg_data/lv_app
mount /dev/vg_data/lv_app /data/app

LVM运维注意事项

监控VG空闲空间:通过vgdisplay命令查看VG剩余PE数量,设置告警阈值。当空闲空间低于20%时应及时扩容。

文件系统类型限制:xfs只支持在线扩容不支持缩减,ext4支持扩容和缩减但缩减需离线操作。生产环境推荐使用xfs。

thin pool精简配置:LVM支持thin provisioning,允许超额分配存储空间,物理空间按实际使用量分配。适合虚拟化环境但需密切监控实际使用量防止空间耗尽。

原创文章,作者:小编,如若转载,请注明出处:https://www.yunthe.com/linuxlvm-luo-ji-juan-guan-li-pei-zhi-yu-ci-pan-kong-jian/

(0)
小编小编
上一篇 1小时前
下一篇 1小时前

相关推荐