Linux中的高级存储管理


前言

当系统中数据量超过单块硬盘的存储容量,仅仅通过添加存储硬件是无法解决该问题的,因为当另一个硬件设备挂载到系统中时,原来的将会被卸载,因此达不到扩展存储空间的目的,这时候就需要采用LVM程序来解决这个问题,它能够将不同硬件设备的存储空间连接到一起从而能被系统正常使用,就如同将两个橘子榨成汁融合在一起,两个橘子就相当于两块不同的硬盘,而LVM程序就相当于是榨汁机,两个橘子本身是不能融合在一起的,而经过榨汁机的加工成功融合在了一起。

一、LVM(逻辑卷管理)

1、基本概念

这里所说的逻辑卷可以理解为上面提到的榨汁机,下面介绍几个相关的概念:

pv 物理卷 ,被处理过的物理分区
pe 物理扩展,设定存储最小单元
vg 物理卷组,捆绑pv到一个组中
lv 逻辑卷,分配最终的使用设备

2、LVM建立步骤

1)建立物理分区并设定分区type为lvm(具体如何设定上篇文章中已有说明,这里不再详细说)
(2)pvcreate  /dev/设备名				        %创建pv
(3)vgcreate  westosvg -s 2M /dev/设备名		%创建vg,-s设定pe大小位2M
(4)lvcreate  -L 100M -n westoslv westosvg		%创建lvm,-L指定大小 -n指定名称
(5)mkfs.xfs  /dev/mapper/westosvg-westoslv	    %格式化
(6)mount /dev/westosvg/westoslv  /指定挂载目录/	%挂载

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、LVM拉伸

1)当vg中的容量充足
lvextend  -L 200M /dev/mapper/westosvg-westoslv  %拉伸设备
xfs_growfs  /指定挂载目录/				         %拉伸文件系统
resize2fs  /dev/mapper/westosvg-westoslv		 %当文件系统为ext时使用此命令

(2)当vg中的容量不足
划分分区
pvcreate /dev/设备名
vgextend  westosvg /dev/设备名
lvextend  -L 2500M  /dev/westosvg/westoslv       %指定扩展大小
xfs_growfs  /指定挂载目录/                         %拉伸文件系统

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4、快照建立步骤

类似虚拟机快照,这里建立的快照可以用于恢复设备信息,快照建立后读文件在快照上执行,写在硬盘上执行。

cd /westos (LVM设备挂载状态下切换)
ls
touch file{
    
    1..5}
ls
[root@localhost westos]# cd
[root@localhost ~]# lvcreate -L 50M -n westoslv-bak -s /dev/westosvg/westoslv
[root@localhost ~]# mount /dev/westosvg/westoslv-bak /westos
[root@localhost ~]# cd /westos
[root@localhost westos]# ls
[root@localhost westos]# rm -rf *
[root@localhost westos]# ls
[root@localhost westos]# cd
[root@localhost ~]# umount /westos 
[root@localhost ~]# lvremove /dev/westosvg/westoslv-bak 
[root@localhost ~]# lvcreate -L 50M -n westoslv-bak -s /dev/westosvg/westoslv
[root@localhost ~]# mount /dev/westosvg/westoslv-bak /westos/
[root@localhost ~]# cd /westos
[root@localhost westos]# ls
file

在这里插入图片描述
在这里插入图片描述

5、LVM缩减

mkfs.ext4	/dev/westosvg/westoslv  %xfs文件系统不支持缩减ext文件系统可以,因此需要先将其文件系统格式化为ext4格式
resize2fs  /dev/mapper/westosvg-westoslv %ext4文件系统拉伸
缩减步骤:
umount /指定挂载目录  %卸载
e2fsck -f /dev/westosvg/westoslv   %扫描文件
resize2fs  /dev/westosvg/westoslv 1500M   %文件系统拉伸
lvreduce  -L 1500M /dev/westosvg/westoslv %LV缩减
mount /dev/westosvg/westoslv  /指定挂载目录/ %挂载
vgreduce  westosvg /dev/设备名 %vg缩减

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6、LVM删除

umount /dev/mapper/westosvg-westoslv   %卸载
lvremove  /dev/westosvg/westoslv    %删除lv
vgremove  westosvg    %删除vg
pvremove /dev/设备名   %删除pv

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、Vdo(虚拟数据优化器)

1、vdo设备的建立

vdo create --name=vdo设备名 --device=/dev/设备名(硬盘)
vdo status --name=vdo设备名  | less
Deduplication:	enabled		%vdo检测并删除重复数据的功能时开启的
Compression:    enabled		%vdo数据压缩功能开启

在这里插入图片描述

2、vdo设备的使用

mkfs.xfs  -K /dev/mapper/vdo设备名   %格式化vdo设备的文件系统为xfs
mkdir /指定目录                      %创建一个目录用于挂载vdo设备
mount /dev/mapper/vdo设备名 /指定目录 %挂载vdo设备到指定目录

3、测试vdo设备

1)vdostats --human-readable     %查看vdo设备信息如下所示
Device                    Size      Used Available Use% Space saving%
/dev/mapper/vdo设备名     20.0G      4.0G     16.0G  20%           98%2)多次复制同一文件到vdo设备中,发现从第二次往后复制时间明显缩短,并且vdo设备中的所占内存基本不增加
cp /xxxx /xxxx /xxxx  /vdo设备名/
vdostats --human-readable
Device                    Size      Used Available Use% Space saving%
/dev/mapper/vdo设备名    20.0G      4.4G     15.6G  22%            2%

cp /xxxx /xxxx /xxxx  /vdo设备名/
vdostats --human-readable
Device                    Size      Used Available Use% Space saving%
/dev/mapper/vdo设备名     20.0G      4.5G     15.5G  22%           50

在这里插入图片描述

4、vdo设备的删除

vdo remove --name=vdo设备名      %删除vdo设备

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/nk298120/article/details/109782963
今日推荐