• RHCE-VDO


    VDO(Virtual Data Optimize虚拟数据优化):通过压缩或删除存储设备上的数据来优化存储空间

    1、压缩和去重是为了能够更好的提供存储空间的利用率

    2、需要加载两个内核模块 kvdo: 用于压缩 uds: 用于去重的

    3、vdo设备位于现有的存储的顶部: 比如块设备:/dev/nvme0n5,也可以构建在LV上。 但是能够在stratis管理分层存储上使用VDO吗?不能。 在什么样的场景下,重复数据率高 比如: 虚拟化场景或者云场景: 10VM 全是RHEL8系统.....

    4、实现的过程就3个步骤 1: 消除0块 2: 去重 3: 压缩

    案例:

    1. 1、安装VDO模块,需要的软件包是kmod-kvdo vdo
    2. [root@kongd ~]# dnf install -y vdo kmod-kvdo
    3. 2、创建VDO卷
    4. [root@kongd ~]# vdo create --name=vdo1 --device=/dev/nvme0n2 --vdoLogicalSize=5G
    5. Creating VDO vdo1
    6. Starting VDO vdo1
    7. Starting compression on VDO vdo1
    8. VDO instance 0 volume is ready at /dev/mapper/vdo1
    9. 3、分析一个VDO卷(deduplication重复删除数据 compression压缩)
    10. [root@kongd ~]# vdo list
    11. vdo1
    12. [root@kongd ~]# vdo status --name vdo1
    13. VDO status:
    14. Date: '2020-01-08 01:08:30+08:00'
    15. Node: kongd.com
    16. Kernel module:
    17. Loaded: true
    18. Name: kvdo
    19. Version information:
    20.   kvdo version: 6.2.0.293
    21. Configuration:
    22. File: /etc/vdoconf.yml
    23. Last modified: '2020-01-08 01:06:34'
    24. ...
    25. 4、给vdo1一个xfs文件系统,之后挂载到/mnt/vdo1
    26. -K选项可防止立即丢弃文件系统中未使用的块,从而使命令返回更快
    27. [root@kongd ~]# mkfs.xfs -K /dev/mapper/vdo1
    28. meta-data=/dev/mapper/vdo1       isize=512    agcount=4, agsize=327680 blks
    29.         =                       sectsz=4096  attr=2, projid32bit=1
    30.         =                       crc=1        finobt=1, sparse=1, rmapbt=0
    31.         =                       reflink=1
    32. data     =                       bsize=4096   blocks=1310720, imaxpct=25
    33.         =                       sunit=0      swidth=0 blks
    34. naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
    35. log      =internal log           bsize=4096   blocks=2560, version=2
    36.         =                       sectsz=4096  sunit=1 blks, lazy-count=1
    37. realtime =none                   extsz=4096   blocks=0, rtextents=0
    38. 刷新存储设备
    39. [root@kongd ~]# udevadm settle
    40. [root@kongd ~]# mkdir /mnt/vdo1
    41. [root@kongd ~]# mount /dev/mapper/vdo1 /mnt/vdo1
    42. 5、使用vdostats命令查看卷的初始统计信息和状态
    43. [root@kongd ~]# vdostats   --human-readable
    44. Device                   Size     Used Available Use% Space saving%
    45. /dev/mapper/vdo1          5.0G      3.0G      2.0G  60%           98%
    46. 6、查看去重功能是否开启
    47. [root@kongd ~]# vdo status --name=vdo1 | grep Deduplication
    48.   Deduplication: enabled
    49. 7、复制文件到挂载点查看
    50. [root@kongd ~]# cp /media/cdrom/images/install.img /mnt/vdo1/
    51. [root@kongd ~]# vdostats   --human-readable
    52. Device                   Size     Used Available Use% Space saving%
    53. /dev/mapper/vdo1          5.0G      3.4G      1.6G  68%            2%
    54. 8、再次复制两个相同文件查看
    55. [root@kongd ~]# cp /media/cdrom/images/install.img /mnt/vdo1/install.img1
    56. [root@kongd ~]# cp /media/cdrom/images/install.img /mnt/vdo1/install.img2
    57. [root@kongd ~]# vdostats   --human-readable
    58. Device                   Size     Used Available Use% Space saving%
    59. /dev/mapper/vdo1          5.0G      3.4G      1.6G  68%           64%
    60. [root@kongd ~]# du -sh /mnt/vdo1/
    61. 1.4G /mnt/vdo1/
    ​
    总结:会发现传一个相同的文件,但是空间并不会发生变化。
  • 相关阅读:
    windows下快速进入指定目录下的dos窗口
    滑动窗口算法(C语言描述)
    计算机网络笔记4 网络层
    Ae:内容识别填充面板
    封装微信小程序隐私信息授权
    python字符串相关
    工作之外看点书籍的一点体会
    Linux部署Jmeter
    【git】gitlab常用命令
    金仓数据库KingbaseES数据库管理员指南--15.1. 管理视图
  • 原文地址:https://blog.csdn.net/weixin_56094492/article/details/127752654