【linux进阶2】linux的高级存储管理(lvm卷的扩展和缩减)

一、逻辑卷

(1)、逻辑卷基本概念

一般将磁盘挂载到目录上,当目录不断写入数据后,超过磁盘大小后,会超出内存范围。这时我们可以引入LVM(Logical Volume Manager) 即逻辑卷来解决分区空间不够用的情况。为了便于大家理解LVM的工作原理,我们引入下面这个通俗易懂的示例进行说明。
在这里插入图片描述
PV(物理卷)相当于水果,水果条PE物理扩展是水果具体切的大小,把许多水果条榨汁进入到大水杯VG(物理卷组),这个大水杯是不能直接使用的,需要用最小的小水杯LV(逻辑卷)才能使用。
使用方法:当小水杯LV(逻辑卷)使用满了后,从大水杯VG(物理卷组)中取用即可,当大杯VG(物理卷组)不够时,加入更多的水果PV(物理卷)进行榨汁填充即可。

(2)、基本命令

pvcreate /dev/vdb1                                              创建pv物理卷
vgcreate westosvg -s 2M /dev/vdb1                               创建VG物理卷westosvg,设定pv大小为2M
lvcreat -L 100M -n westoslv westosvg                            以westosvg为物理卷创建100M的逻辑卷westoslv
mkfs.xfs /dev/westosvg/westoslv                                 xfs格式化逻辑卷westoslv
mount /dev/westosvg/westoslv /westosdir                         将逻辑卷/westoslv进行挂载            

二、创建、拉伸磁盘

(1)、创建PV、VG、LV卷,挂载

1、创建可拉伸的磁盘
新建了一块1G大小的磁盘
在这里插入图片描述
查看LVM类型的代码
在这里插入图片描述
更改为LVM类型的磁盘
在这里插入图片描述
2、建立挂载目录和监控方便查看

mkdir /westosdir
watch -n 1 "pvs;echo ====;vgs;echo =====;lvs;echo ====;df -h /westosdir" 

3、创建PV

pvcreate /dev/vdb1

将磁盘/dev/vdb1设为PV(相当于水果)
在这里插入图片描述
4、创建VG

vgcreate westosvg /dev/vdb1 -s 2M  其中-s 是指定PE(水果条)的大小最小为2M

在这里插入图片描述
查看当前PE(水果条的大小)

vgdisplay

最小的sizie为2M
在这里插入图片描述
删除vg,重新创建vg,使用最小存储单元大小为4M的默认设定
在这里插入图片描述
5、创建lvm(-L指定lv逻辑卷,即小水杯大小,-n指定逻辑卷名称)

lvcreate -L 100M -n westoslv0 westosvg   通过westosvg物理卷组建立逻辑卷 westoslv0

在这里插入图片描述
6、xfs格式化lvm

mkfs.xfs /dev/westosvg/westoslv0 

在这里插入图片描述
7、挂载

mount /dev/westosvg/westoslv0 /westosdir/

在这里插入图片描述

(2)、lvm设备的拉伸

1、当vg里面的内存足够时进行拉伸
除了对lv逻辑卷进行拉伸外,还需要对挂载的文件进行拉伸
注意: 在rhel7中可以使用设备或挂载点来拉伸文件系统xfs_growfs 设备/挂载点;在rhel8中只能使用挂载点来拉伸文件系统xfs_growfs 挂载点

lvextend -L 200M /dev/westosvg/westoslv0                拉伸到200M
xfs_growfs /westosdir/

之前
在这里插入图片描述
现在
在这里插入图片描述
2、当vg的容量不足时
例如我们现在需要两个G的LV,但是扩展的VG不够就会出现以下的情况
在这里插入图片描述
此时我们需要fdisk交互式在/dev/vdb中建立另一物理设备/dev/vdb2,将其标签更改为Linux LVM
在这里插入图片描述
对新建物理设备/dev/vdb2进行pv格式化即创建pv,使用新的物理卷扩大vg物理卷组,此时可以成功对lvm进行拉伸

pvcreate /dev/vdb2
vgextend westosvg /dev/vdb2    将刚刚定义为pv的物理卷/dev/vdb2加入物理卷组westosvg

这下物理卷组westosvg有两个pv物理卷了,可以再进行lv的扩展了
在这里插入图片描述

(3)、lvm设备的缩减(lv的缩减)

xfs格式不支持lvm的缩减,我们需要卸载数据目录下的lvm设备,将其格式化为支持lvm缩减的ext4文件系统,既可以增加也可以缩减。

umount /westosdir/
mkfs.ext4 /dev/westosvg/westoslv0 

在这里插入图片描述
挂载lvm设备到数据目录中,blkid可以查看到此时lvm的文件系统类型为ext4

mount /dev/westosvg/westoslv0 /westosdir/
blkid 

在这里插入图片描述
在ext4文件系统下对lvm设备进行拉伸,与xfs文件系统不同,在对文件系统进行拉伸时使用的是resize2fs lvm设备命令。具体缩减步奏如下

1、umount /westosdir                                       取消挂载
2、e2fsck -f /dev/westosvg/westoslv0                       进行缩减
3、resize2fs /dev/mapper/westosvg-westoslv0   150M         缩减到150M

在这里插入图片描述

(4)、lvm设备的快照

lvm逻辑卷可以支持快照功能,快照可以保存原始lvm设备里的内容,读取设备时是从母盘读取,但写数据时是写入快照。这样一来,我们可以将lvm设备的快照挂载到指定数据目录中,避免在数据目录中执行操作时对原lvm设备的数据造成损坏。
实验步骤:
1、建立实验素材,在挂载目录建立文件
在这里插入图片描述
2、卸载挂载建立快照
卸载lvm设备,为lvm设备创建快照(-L指定快照设备大小,-n指定快照名称,-s指定快照源)并将快照挂载到数据目录 /westosdir中
在这里插入图片描述
3、在复制的快照中可以查看到创建的文件,然后将快照里面的文件进行删除
在这里插入图片描述
4、卸载并删除该快照,重新为lvm创建一个快照westoslv0-backup1,并挂载新创建的快照到数据目录中,查看该数据目录内容可以再次看到文件。
在这里插入图片描述
在这里插入图片描述
说明快照是一种很好的备份方式

(5)、lvm设备的缩减(pv的缩减和转移)

1、在对lvm缩减完成后,我们可以看到物理卷组vg中的物理卷/dev/vdb2是未被使用的,此时我们可以使用vgreduce命令缩减vg,将闲置的物理卷/dev/vdb2移出vg
在这里插入图片描述
2、如果想要将正在被lvm使用的物理卷/dev/vdb1移出vg,我们需要使用pvmove命令将/dev/vdb1中的数据移动到物理卷组vg内的另一物理卷/dev/vdb2中,数据移动完成后即可成功将物理卷/dev/vdb1移出vg,缩减vg

vgreduce westosvg /dev/vdb2

只有一个PV提供了,移除了/dev/vdb1
在这里插入图片描述
3、如果想要将正在被lvm使用的物理卷/dev/vdb1移出vg,我们需要使用pvmove命令将/dev/vdb1中的数据移动到物理卷组vg内的另一物理卷/dev/vdb2中,数据移动完成后即可成功将物理卷/dev/vdb1移出vg,缩减vg

pvmove /dev/vdb1 /dev/vdb2

在这里插入图片描述
发现/dev/vdb1的存储空间恢复正常,转移到/dev/vdb2/去了
在这里插入图片描述

(6)、lvm设备的删除

执行lvremove设备命令删除lvm设备及为lvm设备创建的快照,vgremove删除物理卷组vg,pvremove删除物理卷pv,fdisk交互式在/dev/vdb中删除建立的所有物理设备
在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值