提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
当系统中数据量超过单块硬盘的存储容量,仅仅通过添加存储硬件是无法解决该问题的,因为当另一个硬件设备挂载到系统中时,原来的将会被卸载,因此达不到扩展存储空间的目的,这时候就需要采用LVM程序来解决这个问题,它能够将不同硬件设备的存储空间连接到一起从而能被系统正常使用,就如同将两个橘子榨成汁融合在一起,两个橘子就相当于两块不同的硬盘,而LVM程序就相当于是榨汁机,两个橘子本身是不能融合在一起的,而经过榨汁机的加工成功融合在了一起。
一、LVM(逻辑卷管理)
实验环境:虚拟机nodea磁盘vda20GB挂载系统,vdb是新建的10GB磁盘,用来实现LVM。ip为172.25.254.100/24
前5行是实验环境,第6、7行是监视命令
实验原理:
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,westosvg是vg的名称
(4)lvcreate -L 100M -n westoslv westosvg %创建lvm,-L指定大小 -n指定名称
(5)mkfs.xfs /dev/mapper/westosvg-westoslv %格式化
(6)mount /dev/westosvg/westoslv /指定挂载目录/ %挂载
history:
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 /指定挂载目录/ %拉伸文件系统
(1)当容量充足时拉伸:
(2)当容量不足时:
和上面相同步骤新建分区vdb2,大小为1G,模式是LVM,作为第二个pv:
fdisk /dev/vdb #在磁盘vdb中新建分区vdb2,大小为1G,模式是LVM
udevadm settle
pvcreate /dev/vdb2
vgextend vg0 /dev/vdb2
lvextend -L 1500M /dev/vg0/lv0#增大lv0大小
resize2fs /dev/vg0/lv0#拉伸文件系统
4、LVM缩减
xfs文件系统不支持缩减ext支持
缩减步骤:
umount /data#卸载挂载
mkfs.ext4 /dev/vg0/lv0#更改格式为ext4
mount /dev/vg0/lv0 /data/
mount#查看挂载信息lv0是ext4格式
上面步骤是更改格式为ext4
umount /data #卸载挂载
e2fsck -f /dev/vg0/lv0#查看lv0占用情况,确定缩减为多少
resize2fs /dev/vg0/lv0 200M#先缩减文件系统,当格式为ext时使用
lvreduce -L 200M /dev/vg0/lv0#再缩减lv0
mount /dev/vg0/lv0 /data/#重新挂载
vgreduce vg0 /dev/vdb1
#执行上面命令时显示vdb1 still in use,vdb2没有使用,
pvmove /dev/vdb1 /dev/vdb2
vgreduce vg0 /dev/vdb1#去掉vg里面的vdb1
pvremove /dev/vdb1#删除pv:vdb1
5、LVM 删除:
umount /data/
lvremove /dev/vg0/lv0
vgremove vg0
pvremove /dev/vdb1
pvremove /dev/vdb2
二、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设备
总结
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。