目录
一 逻辑卷
二 lvm逻辑管理器
lvm建立:
lvm拉伸:
lvm缩减:
lvm删除:
lvm快照:
三 vdo虚拟数据优化器
vdo建立:
使用vdo设备:
测试vdo性能:
设置vdo开机自启动:
vdo设备的删除:
一 逻辑卷
pv
物理卷 被处理过的物理分区
pe
物理扩展 设定存储最小单元
vg
物理卷组 捆绑
pv
到一个组中
lv
逻辑卷 分配最终的使用设备
二 lvm逻辑管理器
lvm建立:
监控过程:
watch
-
n
1
"pvs;echo
====
;vgs;echo
=====
;lvs;echo
=====
;df
-
h
/
westosdata"
建立物理分区并设定分区
type
为
lvm
创建pv:pvcreate
/
dev
/
sda1
创建
vg
-
s
设定
pe
大小为
2M(默认为4M):vgcreate westosvg
-
s 2M
/
dev
/
sda1
创建lvm
-
L
指定大小
-
n指定名称:lvcreate
-
L 100M
-
n westoslv westosvg
格式化:mkfs.xfs
/
dev
/
mapper
/
westosvg
-
westoslv
挂载:mount
/
dev
/
westosvg
/
westoslv
/
westosdata
/
lvm拉伸:
1.
当
vg
中的容量充足
拉伸设备:lvextend
-
L 200M
/
dev
/
mapper
/
westosvg
-
westoslv
拉伸xfs文件系统:xfs_growfs
/
weixindata
/
(在
rhel7
中可以用设备或挂载点,在rhel8.0
中只能用挂载点)
当文件系统为
ext
时使用此命令拉伸文件系统:resize2fs
/
dev
/
mapper
/
westosvg
-
westoslv
2.
当
vg
中的容量不足
新划分分区
/
dev
/
sda2
pvcreate
/
dev
/
sda2
vgextend westosvg2
/
dev
/
sda2
lvextend
-
L 1500M
/
dev
/
westosvg2
/
westoslv2
xfs_growfs
/
westosdata
/
lvm缩减:
xfs
文件系统不支持缩减
ext
文件系统可以,并且由于文件系统格式化后原有数据会被清空,因此在设计之初就要确定要使用的文件系统类型
缩减步骤
:
卸载:umount
/
westosdata
扫描:e2fsck
-
f
/
dev
/
westosvg
/
westoslv(缩减可能对数据造成损坏,因此要先进行扫描)
缩减文件系统:resize2fs
/
dev
/
westosvg
/
westoslv 1500M
缩减设备:lvreduce
-
L 1500M
/
dev
/
westosvg
/
westoslv
重新挂载:mount
/
dev
/
westosvg
/
westoslv
/
weixindata
/
如果要将数据从sda2转移到sda1,并删除sda2:
转移sda2数据到sda1:pvremove
/
dev
/
sda2
/
dev
/
sda1
将sda2从vg中取出:vgreduce westosvg
/
dev
/
sda2 (此时sda2仍在pv中)
将sda2从pv中彻底删除:
pvremove
/
dev
/
sda2
lvm删除:
卸载:umount
/
dev
/
mapper
/
westosvg
-
westoslv
删除lv(如果有快照先删快照再删lv):lvremove
/
dev
/
westosvg
/
westoslv
删除vg:vgremove westosvg
删除pv:pvremove
/
dev
/
sda1
lvm快照:
快照可以对设备中的内容进行保护
lvcreate
-
L 50M
-
n backup
-
s
/
dev
/
westosvg
/
westoslv(拍摄快照)
mount
/
dev
/
westosvg
/
backup
/
westosdata(快照不需要格式化,直接挂载)
测试:
ls
/
westosdata(内容正常)
rm -rf
/
westosdata
/
*
ls
/
westosdata
(文件损坏)
umount
/
westosdata(卸载)
lvremove
/
dev
/
westosvg
/
westos_lvbackup(删除旧快照)
lvcreate
-
L 50M
-
n westos_lvbackup
-
s
/
dev
/
westosvg
/
westoslv(重新拍摄快照)
mount
/
dev
/
westosvg
/
westos_lvbackup
/
westosdata(重新挂载)
ls
/
westosdata(内容正常)
三 vdo虚拟数据优化器
Virtual Data Optimize
两个功能:
kvdo ##
压缩数据
uds ##
优化重复数据
vdo建立:
必须使用独立的、未被使用的硬盘建立vdo
安装vdo:dnf install vdo
-
y(需要用到vdo.service)
建立vdo:vdo create
--
name
=
vdo1
--
device
=/
dev
/
sdb
查看vdo的两个功能是否开启:
vdo status
--
name
=
vdo1
|
less
Deduplication
:
enabled ##vdo
检测并删除重复数据的功能是开启的
Compression
:
enabled ##vdo
数据压缩功能开启
使用vdo设备:
格式化:mkfs.xfs
-
K
/
dev
/
mapper
/
vdo1
创建挂载点:mkdir
/
westos_vdo
挂载:mount
/
dev
/
mapper
/
vdo1
/
vdo
测试vdo性能:
监控vdo状态:watch
-
n 1 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
/
westos_vdo
/
=================================================================
Device Size Used Available Use
% Space saving%
/
dev
/
mapper
/
westos_vdo1
20.
0G
4.
4G
15.
6G
22
% 2%
=================================================================
cp
/
westos
/
images
/
install.img
/
westos_vdo
/
install.img
.1
=================================================================
Device Size Used Available Use
% Space saving%
/
dev
/
mapper
/
westos_vdo1
20.
0G
4.
5G
15.
5G
22
% 50%
=================================================================
install.img和install.img.1内容一样,只占用了一份空间
设置vdo开机自启动:
vim
/
etc
/
fstab
/
dev
/
mapper
/
westos_vdo1
/
westos_vdo xfs defaults,x
-systemd.requires=
vdo.service
0 0
系统是8.6版本之前的版本必须写参数,否则重启无效
vdo设备的删除:
卸载:umount
/
westos_vdo
停用vdo:vdo stop
--
name
=
westos_vdo1(停用不等于删除,可以start再打开vdo)
删除vdo:vdo remove
--
name
=
westos_vdo1