LVM-VDO使用(官方手册,针对centos8或redhat8)

官方参考文档
参考官方文档之后,整理了一下几个注意的点
 

一、LVM的 VDO 介绍

VDO 池 LV
这是用于 VDO LV 存储、重复数据删除和压缩的后端物理设备。VDO 池 LV 设置 VDO 卷的物理大小,即 VDO 可保存到磁盘中的数据量。目前,每个 VDO 池 LV 只能有一个 VDO LV。因此,VDO 会单独压缩每个 VDO LV。换句话说,VDO 无法重复数据删除或压缩一些 VDO LV 共享的数据。

二、 LVM-VDO 要求

2.1 内存要求

VDO 需要固定的 38 MB RAM 和几个变化的量:
  • 配置的每 1 MB 的块映射缓存需要 1.15 MB 的 RAM。块映射缓存至少需要 150MB RAM。
  • 每 1 TB 的逻辑空间需要 1.6 MB 的 RAM。
  • 卷管理的每 1 TB 的物理存储需要 268 MB 的 RAM。
UDS 索引
通用去除重复数据服务(UDS)至少需要 250 MB 的 RAM,这也是去除重复数据所使用的默认数量。您可以在格式化 VDO 卷时配置值,因为该值也会影响索引所需的存储量。
UDS 索引所需的内存由索引类型和重复数据删除窗口所需大小决定:
 
0

2.2  VDO 中的 Lab 大小

VDO 卷的物理存储被分成几个 slab。每个 slab 都是物理空间的连续区域。给定卷的所有 slab 的大小相同,可以是基于 128 MB 的 2 的指数的任何值,最大值为 32 GB。
默认的 slab 大小为 2 GB,以便于在较小的测试系统上评估 VDO。单个 VDO 卷最多可有 8192 个 slabs。因此,在使用 2GB slab 的默认配置中,允许的最大物理存储为 16 TB。当使用 32GB 的 slab 时,允许的最大物理存储为 256 TB。VDO 总是保留至少一个整个 slab 来保存元数据,因此预留 slab 无法用于存储用户数据。
slab 大小不影响 VDO 卷的性能。

三、部署LVM-VDO

3.1 、安装相关软件

yum install lvm2 kmod-kvdo vdo
检查lvm版本信息 lvm version

 

 

可以看到centos8/redhat8 的lvm中已包含vdo相关组件

3.2 创建LVM-VDO

lvcreate --type vdo \ --name lv-vdo \ --size 9G \ --virtualsize 100G \ vg-vdo
  • 使用您要放置 VDO LV 的现有 LVM 卷组的名称替换 lv-vdo。
  • 使用 VDO LV 存在的逻辑存储数量替换 9G(大小或者数量)。
  • 如果物理大小大于 16TiB,请添加以下选项以将卷的 slab 大小增加到 32GiB:
    --config 'allocation/vdo_slab_size_mb=32768
创建成功后会出现两个卷
lv-vdo 是上层LVM-VDO卷。挂载、格式化文件系统都是用他它
vpool0 是底层LVM卷,空间为实际物理空间

3.3 在 VDO LV 上创建文件系统:

  • 对于 XFS 文件系统:
mkfs.xfs -K /dev/vg-vdo/lv-vdo
  • 对于 ext4 文件系统:
mkfs.ext4 -E nodiscard /dev/vg-vdo/lv-vdo

3.4 挂载 LVM-VDO 卷

  • 要手动将文件系统挂载到 LVM-VDO 卷中,请使用
mount /dev/vg-vdo/lv-vdo mount-point
  • 要将文件系统配置为在引导时自动挂载,请在
 /etc/fstab 文件中添加行:
  • 对于 XFS 文件系统:
/dev/vg-vdo/lv-vdo mount-point xfs defaults 0 0
  • 对于 ext4 文件系统:
/dev/vg-vdo/lv-vdo mount-point ext4 defaults 0 0

四、扩容LVM-VDO

4.1 LVM-VDO空间使用监控分为两部分:实际物理空间,VDO卷逻辑空间

查看vdo卷物理空间的使用情况
vdostats vg--vdo-vpool0-vpool
查看VDO逻辑空间使用情况

 

 

可以看到上图中物理空间已经使用完,逻辑空间还有很多剩余,对LVM-VDO物理空间扩容

4.2 扩容

物理空间 (扩容/dev/vg-vdo/vpool0)
添加磁盘物理设备,分区
扩容vg
pvcreate /dev/sdb1 
vgextend vg-vdo /dev/sdb1 
umount /vdo 
lvextend -l +100%FREE /dev/vg-vdo/vpool0 \\注意这里用的是vpool0 
mount /dev/vg-vdo/lv-vdo /vdo
扩容逻辑空间(扩容/dev/vg-vdo/lv-vdo)
umount /vdo 
lvextend -L +100G /dev/vg-vdo/lv-vdo 
resize2fs -f /dev/vg-vdo/lv-vdo 
mount /dev/vg-vdo/lv-vdo /vdo

 

 
posted @ 2022-12-10 16:12  slena  阅读(722)  评论(0编辑  收藏  举报
/*鼠标跟随效果*/