1. 首页 > Linux教程 > 正文

Linux教程FG342-LVM高级配置

内容简介:本文风哥教程参考Linux官方文档、Red Hat Enterprise Linux官方文档、Ansible Automation Platform官方文档、Docker官方文档、Kubernetes官方文档和Podman官方文档等内容,详细介绍了相关技术的配置和使用方法。

本文档介绍LVM的高级配置和功能。

风哥提示:

Part01-LVM条带化

1.学习交流加群风哥QQ1132571741 创建条带化逻辑卷

# 创建条带化逻辑卷
[root@lvm-server ~]# lvcreate -L 200G -i 2 -I 64K -n lv_stripe vg_storage
Using default stripesize 64.00 KiB.
Logical volume “lv_stripe” created.

# 查看条带化信息
[root@lvm-server ~]# lvs -a -o +devices,stripes,stripesize
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert Devices Stripe StripeSize
lv_stripe vg_storage -wi-a—– 200.00g /dev/sdb(0),/dev/sdc(0) 2 64.00k

# 查看详细布局
[root@lvm-server ~]# lvdisplay -m /dev/vg_storage/lv_stripe
— Logical volume —
LV Path /dev/vg_storage/lv_stripe
LV Name lv_stripe
VG Name vg_storage
LV UUID stripe-1234-5678-90ab-cdef-12345678
LV Write Access read/write
LV Creation host, time lvm-server, 2026-04-04 18:00:00 +0800
LV Status available
# open 0
LV Size 200.00 GiB
Current LE 51200
Segments 1
Allocation stripe
Stripe size 64.00 KiB
Stripes 2
Read ahead sectors auto
– currently set to 256
Block device 253:5

— Segments —
Logical extents 0 to 51199:
Type stripe
Stripes 2
Stripe size 64.00 KiB
Stripe 0:
Physical volume /dev/sdb
Physical extents 0 to 25599
Stripe 1:
Physical volume /dev/sdc
Physical extents 0 to 25599

1.2 LVM镜像配置

# 创建镜像逻辑卷
[root@lvm-server ~]# lvcreate -L 100G -m1 -n lv_mirror vg_storage
Logical volume “lv_mirror” created.

# 查看镜像状态
[root@lvm-server ~]# lvs -a -o +devices
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert Devices
lv_mirror vg_storage rwi-a-r— 100.00g 100.00 lv_mirror_rimage_0(0),lv_mirror_rimage_1(0)
[lv_mirror_rimage_0] vg_storage iwi-aor— 100.00g /dev/sdb(25600)
[lv_mirror_rimage_1] vg_storage iwi-aor— 100.00g /dev/sdc(25600)
[lv_mirror_rmeta_0] vg_storage ewi-aor— 4.00m /dev/sdb(25599)
[lv_mirror_rmeta_1] vg_storage ewi-aor— 4.00m /dev/sdc(25599)

# 转换为镜像
[root@lvm-server ~]# lvconvert -m1 /dev/vg_storage/lv_app
vg_storage/lv_app: Converted 0.00% (0/26214400 extents)
vg_storage/lv_app: Converted 10.00% (2621440/26214400 extents)
vg_storage/lv_app: Converted 20.00% (5242880/26214400 extents)
vg_storage/lv_app: Converted 100.00% (26214400/26214400 extents)
Logical volume vg_storage/lv_app successfully converted.

# 分离镜像
[root@lvm-server ~]# lvconvert –splitmirrors 1 -n lv_fgapp_copy vg_storage/lv_app
Logical volume vg_storage/lv_fgapp_copy created.

Part02-LVM快照

2.1 创建和使用快照

# 创建快照
[root@lvm-server ~]# lvcreate -L 10G -s -n lv_fgapp_snap /dev/vg_storage/lv_app
Logical volume “lv_fgapp_snap” created.

# 查看快照
[root@lvm-server ~]# lvs -a -o +devices,snap_percent
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert Devices Snap%
lv_app vg_storage owi-aos— 80.00g /dev/sdb(0)
lv_fgapp_snap vg_storage swi-a-s— 10.00g lv_app 0.00 /dev/sdb(20480) 0.00

# 挂载快照
[root@lvm-server ~]# mkdir /mnt/snapshot
[root@lvm-server ~]# mount /dev/vg_storage/lv_fgapp_snap /mnt/snapshot

# 恢复快照
[root@lvm-server ~]# umount /app
[root@lvm-server ~]# lvconvert –merge /dev/vg_storage/lv_fgapp_snap
Merging of volume vg_storage/lv_fgapp_snap started.
lv_app: Merged: 100.00%

# 创建只读快照
[root@lvm-server ~]# lvcreate -L 10G -s -p r -n lv_fgapp_readonly /dev/vg_storage/lv_app
Logical volume “lv_fgapp_readonly” created.

# 查看快照使用情况
[root@lvm-server ~]# lvs /dev/vg_storage/lv_fgapp_snap
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
lv_fgapp_snap vg_storage swi-a-s— 10.00g lv_app 5.23

2.2 快照备份策略

# 创建快照备份脚本
[root@lvm-server ~]# cat > /usr/local/bin/lvm-snapshot-backup.sh << 'EOF' #!/bin/bash VG_NAME="vg_storage" LV_NAME="lv_app" SNAP_SIZE="10G" BACKUP_DIR="/backup/lvm" DATE=$(date +%Y%m%d_%H%M%S) # 创建快照 echo "Creating snapshot..." lvcreate -L $SNAP_SIZE -s -n ${LV_NAME}_snap_${DATE} /dev/${VG_NAME}/${LV_NAME} # 挂载快照 mkdir -p /mnt/snap_${DATE} mount /dev/${VG_NAME}/${LV_NAME}_snap_${DATE} /mnt/snap_${DATE} # 备份数据 echo "Backing up data.更多视频教程www.fgedu.net.cn.." tar czf ${BACKUP_DIR}/${LV_NAME}_${DATE}.tar.gz -C /mnt/snap_${DATE} . # 卸载并删除快照 umount /mnt/snap_${DATE} rmdir /mnt/snap_${DATE} lvremove -f /dev/${VG_NAME}/${LV_NAME}_snap_${DATE} echo "Backup completed: ${BACKUP_DIR}/${LV_NAME}_${DATE}.tar.gz" EOF [root@lvm-server ~]# chmod +x /usr/local/bin/lvm-snapshot-backup.sh # 执行备份 [root@lvm-server ~]# /usr/local/bi学习更多学习教程公众号风哥教程itpux_com交流加群风哥微信: itpux-comn/lvm-snapshot-backup.sh Creating snapshot... Logical volume "lv_fgapp_snap_20260404_180500" created. Backing up data... Logical volume "lv_fgapp_snap_20260404_180500" successfully removed. Backup completed: /backup/lvm/lv_fgapp_20260404_180500.tar.gz from PG视频:www.itpux.com

Part03-LVM精简配置

3.1 创建精简池

# 创建精简池
[root@lvm-server ~]# lvcreate -L 500G -T vg_storage/lv_thin_pool
WARNING: Sum of all thin volume sizes (500.00 GiB) exceeds the size of thin pool vg_storage/lv_thin_pool (500.00 GiB).
Thin pool vg_storage/lv_thin_pool created.

# 查看精简池
[root@lvm-server ~]# lvs -a
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
lv_thin_pool vg_storage twi-a-tz– 500.00g 0.00 0.00
[lv_thin_pool_tdata] vg_storage Twi-ao—- 500.00g /dev/sdb(51200)
[lv_thin_pool_tmeta] vg_storage ewi-ao—- 4.00m /dev/sdb(51199)

# 创建精简卷
[root@lvm-server ~]# lvcreate -V 200G -T vg_storage/lv_thin_pool -n lv_thin_vol1
Logical volume “lv_thin_vol1” created.

[root@lvm-server ~]# lvcreate -V 300G -T vg_storage/lv_thin_pool -n lv_thin_vol2
Logical volume “lv_thin_vol2” created.

# 查看精简卷
[root@lvm-server ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
lv_thin_pool vg_storage twi-a-tz– 500.00g 0.00 0.00
lv_thin_vol1 vg_storage Vwi-a-tz– 200.00g lv_thin_pool 0.00
lv_thin_vol2 vg_storage Vwi-a-tz– 300.00g lv_thin_pool 0.00

# 扩展精简池
[root@lvm-server ~]# lvextend -L +100G /dev/vg_storage/lv_thin_pool
Size of logical volume “lv_thin_pool” changed from 500.00 GiB (128000 extents) to 600.00 GiB (153600 extents).
Logical volume “lv_thin_pool” successfully resized.

风哥针对LVM高级配置建议:

  • 使用条带化提高性能
  • 使用镜像提高可靠性
  • 定期创建快照备份
  • 使用精简配置节省空间
  • 监控LVM使用情况

本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html

联系我们

在线咨询:点击这里给我发消息

微信号:itpux-com

工作日:9:30-18:30,节假日休息