当前位置: 首页 > news >正文

15.vdo管理

vdo管理

文章目录

  • vdo管理
    • 一、VDO基本概念
    • 二、常用操作
    • 三、验证VDO卷

一、VDO基本概念

  1. VDO(Virtual Data Optimize虚拟数据优化)
    通过压缩或删除存储设备上的数据来优化存储空间。VDO层放置在现有块存储设备例如RAID设备或本地磁盘的顶部。这些块设备也可以是加密设备。存储层(如LVM logic卷和文件系统)放置在VDO层的顶部。
  2. VDO按以下顺序将三个阶段应用于数据,减少存储设备上的占用空间
  • 零区块的排除:在初始化阶段,整块为0的会被元数据记录下来,这个可以用水杯里面的水和沙子混合的例子来解释,使用滤纸(零块排除),把沙子(非零空间)给过滤出来,然后就是下一个阶段的处理
  • 重复数据删除:在第二阶段,输入的数据会判断是不是冗余数据(在写入之前就判断),这个部分的数据通过UDS内核模块来判断(U niversal D eduplication S ervice),被判断为重复数据的部分不会被写入,然后对元数据进行更新,直接指向原始已经存储的数据块即可
  • 压缩:一旦消零和重删完成,LZ4压缩会对每个单独的数据块进行处理,然后压缩好的数据块会以固定大小4KB的数据块存储在介质上,由于一个物理块可以包含很多的压缩块,这个也可以加速读取的性能

二、常用操作

1.检查软件包是否安装

[root@localhost ~]# rpm -qa vdo
vdo-6.2.0.293-10.el8.x86_64
[root@localhost ~]# rpm -qa kmod-kvdo
kmod-kvdo-6.2.0.293-50.el8.x86_64

2.安装软件包

[root@localhost ~]# yum -y install vdo kmod-kvdo

3.添加一块新磁盘。

[root@localhost ~]# fdisk -l /dev/sdb
Disk /dev/sdb:20 GiB,21474836480 字节,41943040 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理)512 字节 / 512 字节
I/O 大小(最小/最佳)512 字节 / 512 字节

4.创建vdo卷

[root@localhost ~]# vdo create --name=vdodisk1 --device=/dev/sdb  --vdoLogicalSize=5G

5.查看vdo卷状态(主要查看重删压缩功能状态是否打开deduplication重复删除数据 compression压缩)

[root@localhost ~]# fdisk -l /dev/mapper/vdodisk1 
Disk /dev/mapper/vdodisk1:5 GiB,5368709120 字节,1310720 个扇区
单元:扇区 / 1 * 4096 = 4096 字节
扇区大小(逻辑/物理)4096 字节 / 4096 字节
I/O 大小(最小/最佳)4096 字节 / 4096 字节
[root@localhost ~]# vdo  status   --name=vdodisk1
[root@localhost ~]# vdo  status   --name=vdodisk1 |grep -E "Deduplication|Compression"Compression: enabled
Deduplication: enabled

扩展:如果状态异常可以使用启动关闭vdo:

[root@localhost images]# vdo stop -n vdodisk1
Stopping VDO vdodisk1
[root@localhost images]# vdo start  -n vdodisk1
Starting VDO vdodisk1
Starting compression on VDO vdodisk1
VDO instance 1 volume is ready at /dev/mapper/vdodisk1

6.格式化挂载

[root@localhost ~]# mkfs.xfs -K /dev/mapper/vdodisk1
-K选项可防止立即丢弃文件系统中未使用的块,从而使命令返回更快(硬盘较大的时候使用)。
[root@localhost by-id]# udevadm settle        ---刷新设备,向udev注册新设备。
[root@localhost /]# mkdir /vdotest 
[root@localhost /]# mount /dev/mapper/vdodisk1 /vdotest/
[root@localhost /]# df -h 
文件系统              容量  已用  可用 已用% 挂载点
devtmpfs              1.9G     0  1.9G    0% /dev
tmpfs                 2.0G     0  2.0G    0% /dev/shm
tmpfs                 2.0G   10M  2.0G    1% /run
tmpfs                 2.0G     0  2.0G    0% /sys/fs/cgroup
/dev/sda3              12G  3.9G  8.2G   32% /
/dev/sda1             195M  122M   73M   63% /boot
tmpfs                 392M   16K  392M    1% /run/user/42
tmpfs                 392M  3.5M  389M    1% /run/user/0
/dev/sr0              6.7G  6.7G     0  100% /mnt
/dev/mapper/vdodisk1  5.0G   69M  5.0G    2% /vdotest

三、验证VDO卷

[root@localhost /]# vdostats   --human-readable 
Device                    Size      Used Available Use% Space saving%
/dev/mapper/vdodisk1     20.0G      4.0G     16.0G  20%           98%
[root@localhost /]# cp /mnt/images/install.img  /vdotest/
[root@localhost /]# vdostats   --human-readable 
Device                    Size      Used Available Use% Space saving%
/dev/mapper/vdodisk1     20.0G      4.3G     15.7G  21%            3%
[root@localhost /]# cp /mnt/images/install.img  /vdotest/install.img-2
[root@localhost /]# vdostats   --human-readable 
Device                    Size      Used Available Use% Space saving%
/dev/mapper/vdodisk1     20.0G      4.4G     15.6G  22%           38%
[root@localhost /]# cp /mnt/images/install.img  /vdotest/install.img-3
[root@localhost /]# vdostats   --human-readable 
Device                    Size      Used Available Use% Space saving%
/dev/mapper/vdodisk1     20.0G      4.5G     15.5G  22%           61%
[root@localhost /]# cp /mnt/images/install.img  /vdotest/install.img-4
[root@localhost /]# vdostats   --human-readable 
Device                    Size      Used Available Use% Space saving%
/dev/mapper/vdodisk1     20.0G      4.5G     15.5G  22%           70%
[root@localhost /]# cp /mnt/images/install.img  /vdotest/install.img-5
[root@localhost /]# vdostats   --human-readable 
Device                    Size      Used Available Use% Space saving%
/dev/mapper/vdodisk1     20.0G      4.5G     15.5G  22%           77%# 扩展:扩容vdo卷
[root@localhost images]# lsof /vdotest/
[root@localhost images]# kill -9 xxxxx
bash: kill: xxxxx: 参数必须是进程或任务 ID
[root@localhost images]# umount /vdotest 
[root@localhost images]# vdo growLogical --name=vdodisk1 --vdoLogicalSize=10G
[root@localhost images]# lsblk 
NAME       MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda          8:0    0   40G  0 disk 
├─sda1       8:1    0  200M  0 part /boot
├─sda2       8:2    0    4G  0 part [SWAP]
└─sda3       8:3    0   12G  0 part /
sdb          8:16   0   20G  0 disk 
└─vdodisk1 253:0    0   10G  0 vdo  
sdc          8:32   0   20G  0 disk 
sdd          8:48   0   20G  0 disk 
sde          8:64   0   20G  0 disk 
sr0         11:0    1  6.6G  0 rom  /mnt
[root@localhost images]# xfs_growfs /dev/mapper/vdodisk1
[root@localhost images]# df -h 
文件系统              容量  已用  可用 已用% 挂载点
devtmpfs              1.9G     0  1.9G    0% /dev
tmpfs                 2.0G     0  2.0G    0% /dev/shm
tmpfs                 2.0G   10M  2.0G    1% /run
tmpfs                 2.0G     0  2.0G    0% /sys/fs/cgroup
/dev/sda3              12G  3.9G  8.2G   33% /
/dev/sda1             195M  122M   73M   63% /boot
tmpfs                 392M   16K  392M    1% /run/user/42
tmpfs                 392M  3.5M  389M    1% /run/user/0
/dev/sr0              6.7G  6.7G     0  100% /mnt
/dev/mapper/vdodisk1   10G  3.2G  6.9G   32% /vdotest# 扩展:删除vdo卷
[root@localhost images]# umount /vdotest
[root@localhost images]# vdo remove --name vdodisk1
Removing VDO vdodisk1
Stopping VDO vdodisk1
[root@localhost images]# lsblk 
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0   40G  0 disk 
├─sda1   8:1    0  200M  0 part /boot
├─sda2   8:2    0    4G  0 part [SWAP]
└─sda3   8:3    0   12G  0 part /
sdb      8:16   0   20G  0 disk 
sdc      8:32   0   20G  0 disk 
sdd      8:48   0   20G  0 disk 
sde      8:64   0   20G  0 disk 
sr0     11:0    1  6.6G  0 rom  /mnt8:16   0   20G  0 disk 
sdc      8:32   0   20G  0 disk 
sdd      8:48   0   20G  0 disk 
sde      8:64   0   20G  0 disk 
sr0     11:0    1  6.6G  0 rom  /mnt
http://www.lryc.cn/news/278068.html

相关文章:

  • 安全漏洞周报(2024.01.01-2023.01.08)
  • msckf-vio 跑Euroc数据集,并用evo进行评估
  • 大模型LLM在 Text2SQL 上的应用实践
  • 数据库:园林题库软件(《城市绿地设计规范》答题卷一 )
  • MySQL之视图外连接、内连接和子查询的使用
  • MoE模型性能还能更上一层楼?一次QLoRA微调实践
  • Java线程学习笔记
  • 平面光波导_三层均匀平面光波导_射线分析法
  • IPV6学习记录
  • 使用proteus进行主从JK触发器仿真失败原因的分析
  • Golang基础入门及Gin入门教程(2024完整版)
  • 202312 青少年软件编程(C/C++)等级考试试卷(四级)电子学会真题
  • leetcode-合并两个有序数组
  • 网站怎么做google搜索引擎优化?
  • TDengine 签约西电电力
  • 赛门铁克OV代码签名证书一年多少钱?
  • Dockerfile详解
  • 零基础小白如何自学sql?
  • 【刷题笔记2】
  • Kafka之集群搭建
  • Linux备忘手册
  • Qt中QGraphicsView总体架构学习
  • STL-list的使用简介
  • MySQL:索引失效场景总结
  • LNMP平台对接redis服务
  • 5G之味,在烟火长沙
  • 【MYSQL】MYSQL 的学习教程(十一)之 MySQL 不同隔离级别,都使用了哪些锁
  • LORA的基本原理
  • Vue2x的自定义指令和render函数使用自定义指令
  • Linux学习(2):文件目录指令