RHCSA-B6. 创建VDO虚拟卷并自动挂载
Posted 白-胖-子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RHCSA-B6. 创建VDO虚拟卷并自动挂载相关的知识,希望对你有一定的参考价值。
红帽RHCE考试上午-RHCSA(RH134)
serverb.example.com 任务
6. 创建VDO 卷
- 根据如下要求,创建新的VDO 卷:
任务要求
- 使用未分区的磁盘
- 该卷的名称为vdotest
- 该卷的逻辑大小是50G
- 该卷使用xfs 文件系统格式化
- 该卷在系统启动时挂载到/mnt/vdotest 下
完成步骤
- 考试的时候vdo应该已经安装过了,可以先确认一下
yum install vdo -y # 安装vdo
- 查看磁盘分区情况,找个空余盘来做vdo
df -Th
lsblk
- 按题目要求创建vdo
vdo create --name=vdotest --device=/dev/vdc --vdoLogicalSize=50G # 创建vdo
- 说明:
--name ##后面跟vdo卷的名称,随便写,好认即可
--device ##后面跟真实的物理磁盘
--vdoLogicalSize ##后面跟vdo卷的容量,这里按真实物理空间的1.5倍
- 使用xfs格式新建vdo 格式化的时候会卡好半天呢,稍安勿躁哦
mkfs.xfs -K /dev/mapper/vdotest # 创建文件系统,俗称格式化
注意:这里和普通的创建文件系统一样,注意要加-K,类似windows格式中的快速格式化,否则会花很多时间 - 编写fstab实现开机自动挂载,因为dov可能被认为是从网络上来的卷,所以写fstab的时候要加上_netdev
vim /etc/fstab
/dev/mapper/vdotest /mnt/vdotest xfs defaults,_netdev 0 0
- 检查分区是否已挂载并重启
df -Th
init 6
- 以下作为参考
yum install vdo -y # 安装vdo
man vdo # 搜索EXAMPLE 和x-systemd或man systemd.mount 搜索x-systemd 记不住查帮助
vdo create --name=vdotest --device=/dev/vdc --vdoLogicalSize=50G # 创建vdo
mkfs.xfs -K /dev/mapper/vdotest # 创建文件系统,俗称格式化
udevadm settle ## 刷新存储设备
vdostats --human-readable ## 查看设备使用情况
mkdir /mnt/vdotest #新建目录作为挂载点
#注挂载参数不好记的,使用man vdo 搜索fstab,附近有相关挂载参数
man vdo
echo "/dev/mapper/vdotest /mnt/vdotest xfs defaults,x-systemd.requires=vdo.service 0 0" >> /etc/fstab ## 设置开机自动挂载
mount -a # 查看挂在情况
df -h # 检查分区
考察的知识点
- 使用 VDO 卷优化正在使用的存储空间。
vdo虚拟磁盘
- VDO(Virtual Data Optimize)是RHEL8/Centos8上新推出的一个存储相关技术(最早在7.5测试版中开始测试),是Redhat收购的Permabit公司的技术。
- VDO的主要作用是节省磁盘空间,比如让1T的磁盘能装下1.5T的数据,从而降低数据中心的成本。
- VDO层放置在现有块存储设备例如RAID设备或本地磁盘的顶部。这些块设备也可以是加密设备。存储层(如LVM logic卷和文件系统)放置在VDO层的顶部。
vdo优化存储的原理
- VDO按以下顺序将三个阶段应用于数据,减少存储设备上的占用空间
- 零区块的排除:
在初始化阶段,整块为0的会被元数据记录下来,这个可以用水杯里面的水和沙子混合的例子来解释,使用滤纸(零块排除),把沙子(非零空间)给过滤出来,然后就是下一个阶段的处理; - 重复数据删除:
在第二阶段,输入的数据会判断是不是冗余数据(在写入之前就判断),这个部分的数据通过UDS内核模块来判断(U niversal D eduplication S ervice),被判断为重复数据的部分不会被写入,然后对元数据进行更新,直接指向原始已经存储的数据块即可; - 压缩数据:
一旦消零和重删完成,LZ4压缩会对每个单独的数据块进行处理,然后压缩好的数据块会以固定大小4KB的数据块存储在介质上,由于一个物理块可以包含很多的压缩块,这个也可以加速读取的性能。-
安装vdo
- rhel7.5及以后版本才支持vdo
[root@rhel7u5a ~]# yum install vdo kmod-kvdo
创建vdo卷
- 你被允许在一个10G的块设备上创建100G的vdo虚拟磁盘
[root@rhel7u5a ~]# vdo create --name=vdoasync --device=/dev/sdc --vdoLogicalSize=100G --writePolicy=async
Creating VDO vdoasync
Starting VDO vdoasync
Starting compression on VDO vdoasync
VDO instance 0 volume is ready at /dev/mapper/vdoasync
[root@rhel7u5a ~]#
使用vdo卷
- 你可以像使用普通磁盘分区一样挂载vdo卷到一个目录上
mkfs.xfs -K /dev/mapper/vdoasync
mount /dev/mapper/vdoasync /mnt/vdoasync
- 你甚至可以将vdo卷初始化成lvs逻辑卷的pv
要设置我的容量优化 NFS 服务器,我首先需要在我的服务器上配置 VDO 逻辑卷。
然后,我将使用逻辑逻辑卷管理器 (LVM) 配置一个配置瘦的存储池,以便在 VDO 卷之上提供快速可扩展的快照功能。
最后,我将把该池创建单独的文件系统,通过 NFS 进行共享。
- 先创建vdo虚拟卷
vdo create --device=/dev/md0 --sparseIndex=enabled --indexMem=2 --name=vdo0
- 在vdo虚拟卷上创建lvs逻辑卷
pvcreate /dev/mapper/vdo0
vgcreate vg00 /dev/mapper/vdo0
lvcreate --discards=passdown -L 40T -T vg00/lvpool0 -V 10T -n lvol0
lvcreate -V 10T --discards=passdown -T vg00/lvpool0 -n lvol1
lvcreate -V 10T --discards=passdown -T vg00/lvpool0 -n lvol2
lvcreate -V 10T --discards=passdown -T vg00/lvpool0 -n lvol3
- 格式化逻辑卷
mkfs.xfs -K /dev/vg00/lvol0
mkfs.xfs -K /dev/vg00/lvol1
mkfs.xfs -K /dev/vg00/lvol2
mkfs.xfs -K /dev/vg00/lvol3
- 创建目录并编写fstab实现自动挂载
mkdir -p /shares/fs0; chmod 755 /shares/fs0
mkdir -p /shares/fs1; chmod 755 /shares/fs1
mkdir -p /shares/fs2; chmod 755 /shares/fs2
mkdir -p /shares/fs3; chmod 755 /shares/fs3
vim /etc/fstab
/dev/vg00/lvol0 /shares/fs0 xfs defaults,discard,x-systemd.requires=vdo.service 0 0
/dev/vg00/lvol1 /shares/fs1 xfs defaults,discard,x-systemd.requires=vdo.service 0 0
/dev/vg00/lvol2 /shares/fs2 xfs defaults,discard,x-systemd.requires=vdo.service 0 0
/dev/vg00/lvol3 /shares/fs3 xfs defaults,discard,x-systemd.requires=vdo.service 0 0
- 确认效果
mount -a
df -Th
删除vdo设备
- umount /westosdir:取消挂载
- vim /etc/fstab:删除vdo开机自动挂载
- vdo stop --name westos_vdo1:停止vdo
- vdo remove --name westos_vdo1:删除vdo
- vdostats --human-readable:查看设备使用情况
以上是关于RHCSA-B6. 创建VDO虚拟卷并自动挂载的主要内容,如果未能解决你的问题,请参考以下文章