linux高级存储管理
一、逻辑卷
pv ##物理卷 被处理过的物理分区
pe ##物理扩展 设定存储最小单元
vg ##物理卷组 捆绑pv到一个组中
lv ##逻辑卷 分配最终的使用设备
1.监控建立过程
watch -n 1 “pvs;echo ===;vgs;echo ====;lvs;echo =====;df -h /weixindata”
2.lvm设备建立
建立物理分区并设定分区type为lvm
pvcreate /dev/sda2 ##创建pv
vgcreate westosvg -s 2M /dev/sda2 ##创建vg -s设定pe大小位2M
fdisk /dev/vdb
mkdir /weixindata
fdisk /dev/vdb
mkfs.xfs /dev/vdb1
udevadm settle
pvcreate /dev/vdb1
vgcreate westosvg /dev/vdb1 -s 2M
vgdisplay westosvg
lvcreate -L 100M -n westoslv westosvg ##创建lvm -L指定大小 -n指定名称
mkfs.xfs /dev/mapper/westosvg-westoslv ##格式化
mount /dev/westosvg/westoslv /weixindata/ ##挂载
lvcreate -l 50 -n westoslv1 westosvg
lvremove /dev/westosvg/westoslv1
lvcreate -L 50M -n westoslv1 westosvg
mkfs.xfs /dev/westosvg/westoslv1
mount /dev/westosvg/westoslv1 /weixindata/
df -H
3.lvm拉伸
当vg中的容量充足
lvextend -L 200M /dev/mapper/westosvg-westoslv ##拉伸设备
xfs_growfs /weixindata/ ##拉伸文件系统,在rhel7中可以用设备或挂载点 ##在rhel8.0中只能用挂载点
resize2fs /dev/mapper/westosvg-westoslv ##当文件系统为ext时使用此命令
lvextend -L 100M /dev/westosvg/westoslv1
xfs_growfs /dev/westosvg/westoslv1
lvextend -r -L 150M /dev/westosvg/westoslv1
当vg中的容量不足
划分分区
lvextend -r -L 1500M /dev/westosvg/westoslv1
fdisk /dev/vdb #新建分区
pvcreate /dev/vdb2
vgextend westosvg /dev/vdb2
lvextend -r -L 1500M /dev/westosvg/westoslv1
4.lvm缩减
xfs文件系统不支持缩减ext文件系统可以
mkfs.ext4 /dev/westosvg/westoslv
ext4文件系统拉伸:
resize2fs /dev/mapper/westosvg-westoslv
缩减步骤:
umount /weixindata
mkfs.ext4 /dev/westosvg/westoslv1
resize2fs /dev/westosvg/westoslv1 500M
mount /dev/westosvg/westoslv1 /weixindata/
lvreduce -L 500M /dev/westosvg/westoslv1
pvremove /dev/vdb1 /dev/vdb2
pvmove /dev/vdb1 /dev/vdb2
vgreduce westosvg /dev/vdb1
pvremove /dev/vdb1
5.lvm删除:
umount /dev/mapper/westosvg-westoslv
lvremove /dev/westosvg/westoslv
vgremove westosvg
pvremove /dev/sda2
vgremove westosvg
umount /mnt
df
lvremove /dev/westosvg/westoslv1
vgremove westosvg
vgs #显示vg
pvremove /dev/vdb2
pvs #显示pv
fdisk /dev/vdb
6.lvm快照
df
umount /mnt/ #取消挂载
ls /mnt #查看/mnt目录
lvcreate -L 50M -n westoslv1-backup -s /dev/westosvg/westoslv1 #快照设备/dev/westosvg/westoslv1
mount /dev/westosvg/westoslv1-backup /mnt/ #挂载快照好的设备到/mnt目录
ls /mnt/
rm -rf /mnt/* #删除/mnt目录下所有
ls -l /mnt/
umount /mnt
lvremove /dev/westosvg/westoslv1-backup #删除快照
lvcreate -L 50M -n westoslv1-backup -s /dev/westosvg/westoslv1 #快照
mount /dev/westosvg/westoslv1-backup /mnt/ #挂载快照好的设备到/mnt目录
ls /mnt/
二、vdo(Virtual Data Optimize)
虚拟数据优化器
kvdo ##压缩数据
uds ##优化重复数据
1.vdo建立#
dnf install vdo -y
vdo create --name=westos_vdo1 --device=/dev/vdb
vdo status --name=westos_vdo1 | less
Deduplication: enabled ##vdo检测并删除重复数据的功能时开启的
Compression: enabled ##vdo数据压缩功能开启
2.使用vdo设备#
mkfs.xfs -K /dev/mapper/westos_vdo1 #格式化为xfs格式
mount /dev/mapper/westos_vdo1 /mnt/ #挂载在/mnt目录下
3.测试vdo性能#
vdostats --human-readable
Device Size Used Available Use% Space saving%
/dev/mapper/westos_vdo1 20.0G 4.0G 16.0G 20% 98%
cp /westos/images/install.img /mnt
vdostats --human-readable
Device Size Used Available Use% Space saving%
/dev/mapper/westos_vdo1 20.0G 4.4G 15.6G 22% 2%
cp /westos/images/install.img /mnt/installl.img
vdostats --human-readable
Device Size Used Available Use% Space saving%
/dev/mapper/westos_vdo1 20.0G 4.5G 15.5G 22% 50%
du -sh /mnt/*
4.vdo device mount onboot#
vim /etc/fstab #修改文件,开启自动挂载
/dev/mapper/westso_vdo1 /mnt xfs defaults,x-systemd.requires=vdo.service 0 0
5.vdo设备的删除#
vdostats #查询
vdo remove --name=westos_vdo1 #删除