vdo:
vdo虚拟数据管理器。
作用:
kvdo 压缩数据
uds 优化重复数据
vdo的建立:
vdo create --name=vdo设备名 --device=/dev/设备名(硬盘)
vdo status --name=vdo设备名 | less
Deduplication: enabled %vdo检测并删除重复数据的功能时开启的
Compression: enabled %vdo数据压缩功能开启
vdo设备的使用:
mkfs.xfs -K /dev/mapper/vdo设备名 %格式化vdo设备的文件系统为xfs
mkdir /指定目录 %创建一个目录用于挂载vdo设备
mount /dev/mapper/vdo设备名 /指定目录 %挂载vdo设备到指定目录
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
vdo设备的自动挂载:
修改/etc/fstab
vdo设备的删除:
vdo stop --name westos_vdo1 停止vdo设备的使用
vdo remove --name=vdo设备名 %删除vdo设备
LVM:
基本概念:
pv | 物理卷 ,被处理过的物理分区 |
---|---|
pe | 物理扩展,设定存储最小单元 |
vg | vg 物理卷组,捆绑pv到一个组中 |
lv | 逻辑卷,分配最终的使用设备 |
建立步骤:
(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 /指定挂载目录/ %挂载
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 /指定挂载目录/ %拉伸文件系统
LVM缩减:
xfs 文件系统不支持缩减,但 ext 文件系统可以
mkfs.ext4 / dev / westosvg / westoslv 对建立好的lvm格式化为ext4文件系统
ext4 文件系统拉伸 :
resize2fs / dev / mapper / westosvg - westoslv
xfs文件系统无法缩减lvm,所以要转为使用ext文件系统,这里用ext4文件系统。
LVM的快照:
lvm逻辑卷支持快照功能,快照可以保存原始lvm设备里的内容,读取设备时是从母盘读取,但写数据时是写入快照。通过挂载设备的快照,保护母盘数据的完整性。
LVM的删除:
要删除lvm只需要依次输入下面的命令即可:
umount / dev / mapper / westosvg - westoslv 取消挂载
lvremove / dev / westosvg / westoslv 删除lvm
vgremove westosvg 删除vg
pvremove / dev / sda2 删除pv