PVE入门-LVM

LVM基础概念

Proxmox VE的LVM逻辑架构
  • PD(physical Disk):
    物理磁盘,如硬盘,或RAID硬盘。

  • PP(physical partition):
    物理分区,如硬盘的分区,或RAID硬盘的分区。

  • PV(physical volume):
    物理卷,在逻辑卷管理系统最底层,可为整个物理硬盘或实际物理硬盘上的分区,一般一个PV对应一个PP
命令范例:

pvcreate /dev/sdb1
pvdisplay

  • VG(volume group):
    卷组,建立在物理卷上,每个卷组中至少要包括一物理卷,卷组建立后可动态的添加卷到卷组中,一个逻辑卷管理系统工程中可有多个卷组。
命令范例:

#vgextend pve /dev/sdb1

#vgreduce //从vg中移除pv
#vgremove //移除vg

  • LV(logical volume):
    逻辑卷,建立在卷组基础上,卷组中未分配空间可用于建立新的逻辑卷,逻辑卷建立后可以动态扩展和缩小空间。
命令范例:

lvs -a -o lv_full_name,parent,lv_size,modules,devices

lvcreate --type raid0 --name data --extents 100%FREE --stripesize 256k hybrid /dev/sdb1 /dev/sdc1

lvcreate --type thin-pool --extents 100%FREE --name data pve /dev/sda3

lvextend -rl +100%FREE /dev/pve/data

lvconvert --type cache-pool --poolmetadata hybrid/meta_cachepool --chunksize 256 hybrid/cache

lvreduce lvremove, lvmraid, lvmthin, lvmcache

  • PE(physical extent):
    物理块,是物理卷中可用于分配的最小存储单元(本文采用默认值4MiB),物理块大小在建立卷组时指定,一旦确定不能更改,同一卷组所有物理卷的物理块大小需一致,新的PV加入到VG后,PE的大小自动更改为VG中定义的PE大小。

  • LE(logical extent):
    逻辑块,是逻辑卷中可用于分配的最小存储单元,逻辑块的大小取决于逻辑卷所在卷组中的物理块的大小。

  • 常用的LVM部署命令:
功能/命令 物理卷管理 卷组管理 逻辑卷管理
扫描 pvscan vgscan lvscan
建立 pvcreate vgcreate lvcreate
显示 pvdisplay vgdisplay lvdisplay
删除 pvremove vgremove lvremove
扩展 vgextend lvextend
缩小 vgreduce lvreduce

操作范例

  • 没有逻辑卷时新加硬盘
#fdisk /dev/sdb //输入g, n, w
#pvcreate /dev/sdb1 //创建物理卷
#vgcreate hdd /dev/sdb1 //创建名为hdd的卷组

//(没有逻辑卷时用)用hdd卷组创建名为data的逻辑卷并分配全部空间
#lvcreate --name data -l 100%FREE hdd /dev/sdb1


  • 以目录方式挂载新盘
#mkfs.ext4 /dev/pve/data
mkdir /mnt/data
mount /dev/hdd/data /mnt/data

#添加系统启动挂载
nano /etc/fstab
/dev/hdd/data /mnt/data ext4 defaults 0 0
  • 已有逻辑卷时新加硬盘
#fdisk /dev/sdb //输入g, n, w
#pvcreate /dev/sdb1 //创建物理卷
#vgextend hdd /dev/sdb1 //将硬盘附加给卷组

//(已有逻辑卷时用)将卷组中所有剩余空间都分配给逻辑卷
#lvextend -rl +100%FREE /dev/hdd/data

//ext3、ext4专用
#resize2fs /dev/hdd/data

//xfs专用(xfs只能增加不能减少!!!不能减少!!!不能减少!!!)
#xfs_growfs /dev/hdd/data

//检查文件系统是否有错误
#e2fsck -f /dev/hdd/data
  • 减少逻辑卷容量
lvreduce -L 80G /dev/hdd/data //将容量缩少到80G
  • 从卷组中移除硬盘
# umount 目录 //如果有挂载过,需先卸载
# lvremove pve/data //先把逻辑组删掉
# vgreduce pve /dev/sdb1 //删掉卷组中的硬盘
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容