VDO卷的配置

简介: 在CentOS 7环境下,VDO通过重删和压缩技术节省磁盘空间,使1T磁盘可存储1.5T数据,降低成本。创建VDO步骤包括:添加64GB新硬盘,安装vdo和kmod-kvdo软件,使用`vdo create`命令创建VDO卷,如`vdo create --name=myvdo --device=/dev/sdb --vdoLogicalSize=200G`。之后,可通过`vdo list`、`vdo status`和`vdostats`检查状态和空间使用。最后,格式化VDO卷,创建挂载点并挂载,完成设置。

实验环境:
centos 7

vdo的作用
VDO的主要作用是节省磁盘空间,比如让1T的磁盘能装下1.5T的数据,从而降低数据中心的成本。

vdo原理主要是重删和压缩,重删就是硬盘里拷贝来相同的数据,以前要占多份空间,现在只需要1份空间就可以了。类似我们在百度网盘中上传一个大型软件安装包,能实现秒传,其实是之前就有,所以无需再传一遍,也无需再占百度一份空间。另一方面是数据压缩,类似于压缩软件的算法,也可以更加节省磁盘空间。

步骤:
先添加一块64GB的硬盘上去 (未分区的新磁盘)

[root@localhost ~]# lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0   300G  0 disk 
├─sda1   8:1    0   300M  0 part /boot
├─sda2   8:2    0   5.2G  0 part [SWAP]
└─sda3   8:3    0 294.5G  0 part /
sdb      8:16   0    64G  0 disk     //此处我已经添加好了
sr0     11:0    1  1024M  0 rom  
[root@localhost ~]#

安装vdo软件和模块

[root@localhost ~]#  yum -y install vdo kmod-kvdo
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.bfsu.edu.cn
 * extras: mirrors.bfsu.edu.cn
 * updates: mirrors.bfsu.edu.cn
base                                                                                                                                                                                                                                | 3.6 kB  00:00:00     
extras                                                                                                                                                                                                                              | 2.9 kB  00:00:00     
updates                                                                                                                                                                                                                             | 2.9 kB  00:00:00     
(1/2): extras/7/x86_64/primary_db                                                                                                                                                                                                   | 254 kB  00:00:00     
(2/2): updates/7/x86_64/primary_db                                                                                                                                                                                                  |  26 MB  00:00:55     
Package vdo-6.1.3.23-5.el7.x86_64 already installed and latest version
Package kmod-kvdo-6.1.3.23-5.el7.x86_64 already installed and latest version
Nothing to do

创建一个VDO卷
--name=myvdo //名字

--device=/dev/sdb //磁盘路径

--vdoLogicalSize=200G //vdo大小 逻辑⼤⼩⼀般采⽤物理容量的1.5 - 3倍,这⾥选物理容量的3倍左右


vdo create  --name=myvdo  --device=/dev/sdb --vdoLogicalSize=200G
Creating VDO myvdo
Starting VDO myvdo
Starting compression on VDO myvdo
VDO instance 1 volume is ready at /dev/mapper/myvdo
[root@localhost ~]#

查看刚刚创建好的卷

[root@localhost ~]# lsblk
NAME    MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda       8:0    0   300G  0 disk 
├─sda1    8:1    0   300M  0 part /boot
├─sda2    8:2    0   5.2G  0 part [SWAP]
└─sda3    8:3    0 294.5G  0 part /
sdb       8:16   0    64G  0 disk 
└─myvdo 253:0    0   200G  0 vdo  
sr0      11:0    1  1024M  0 rom  
[root@localhost ~]# 

[root@localhost ~]# fdisk  -l /dev/mapper/myvdo

Disk /dev/mapper/myvdo: 214.7 GB, 214748364800 bytes, 52428800 sectors
Units = sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes

[root@localhost ~]#

关闭vdo

[root@localhost ~]# vdo stop -n myvdo
Stopping VDO myvdo

开启vdo

[root@localhost ~]# vdo start -n myvdo
Starting VDO myvdo
Starting compression on VDO myvdo
VDO instance 2 volume is ready at /dev/mapper/myvdo
[root@localhost ~]#

查看vdo、查看状态、以及查看物理空间

[root@localhost ~]# vdo list
myvdo
[root@localhost ~]# vdo status -n myvdo
VDO status:
  Date: '2024-03-25 01:12:42-07:00'
  Node: localhost.localdomain
Kernel module:
  Loaded: true
  Name: kvdo
  Version information:
    kvdo version: 6.1.3.23
Configuration:
  File: /etc/vdoconf.yml
  Last modified: '2024-03-25 01:03:55'
省略。。。。。

[root@localhost ~]# vdostats  --human-readable
Device                    Size      Used Available Use% Space saving%
/dev/mapper/myvdo        64.0G      4.0G     60.0G   6%           N/A
[root@localhost ~]#

格式化创建的vdo
一定要加 -K(大写) 选项这里和普通的创建文件系统一样,注意要加-K,类似windows格式中的快速格式化,否则会花很多时间

[root@localhost ~]# mkfs.xfs  -K /dev/mapper/myvdo 
meta-data=/dev/mapper/myvdo      isize=512    agcount=4, agsize=13107200 blks
         =                       sectsz=4096  attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=52428800, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=25600, version=2
         =                       sectsz=4096  sunit=1 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
[root@localhost ~]#

创建挂载目录,并挂载

[root@localhost ~]# mkdir  /123vdo
[root@localhost ~]# cd /
[root@localhost /]# mou
mount            mount.cifs       mount.fuse       mount.glusterfs  mount.nfs        mount.nfs4       mountpoint       mountstats       mousetweaks      
[root@localhost /]# mou
mount            mount.cifs       mount.fuse       mount.glusterfs  mount.nfs        mount.nfs4       mountpoint       mountstats       mousetweaks      
[root@localhost /]# mount /dev/mapper/myvdo  /123vdo/
[root@localhost /]# df -Th
Filesystem        Type      Size  Used Avail Use% Mounted on
devtmpfs          devtmpfs  5.1G     0  5.1G   0% /dev
tmpfs             tmpfs     5.1G     0  5.1G   0% /dev/shm
tmpfs             tmpfs     5.1G   13M  5.1G   1% /run
tmpfs             tmpfs     5.1G     0  5.1G   0% /sys/fs/cgroup
/dev/sda3         xfs       295G  4.7G  290G   2% /
/dev/sda1         xfs       297M  163M  134M  55% /boot
tmpfs             tmpfs     1.1G   24K  1.1G   1% /run/user/0
/dev/mapper/myvdo xfs       200G   33M  200G   1% /123vdo   //这里为刚刚创建的vdo
[root@localhost /]#

到这里vdo 就创建完成了

目录
相关文章
|
23天前
|
缓存 Java 数据库连接
常见配置
常见配置
25 1
|
4月前
wslconfig 配置
wslconfig 配置
68 0
|
7月前
|
域名解析 网络协议
静态网络配置
静态网络配置
|
7月前
|
Ubuntu 安全 算法
UbuntuSSH配置
UbuntuSSH配置
91 0
springdatasource:全部配置
springdatasource:全部配置
74 0
|
NoSQL Java Redis
springbootAsyncConfig配置的处理
springbootAsyncConfig配置的处理
341 0
springbootAsyncConfig配置的处理
|
Shell Linux 程序员
vs2015配置vcpkg
vs2015配置vcpkg
408 0
|
运维
一个配置引发的血案
一个配置引发的血案一个配置引发的血案,记一次线上事故的复盘。 一天晚上的业务高峰期,出现了超时(数据加载不出来的情况)。 联想到前一天有发版的工作,第一功能上并没有太大的调整,此次发版内容更多的是新增的功能,用户使用量也较少,基本可以排除因功能导致的问题;第二是否中间件出现问题,因数据的交互,有80%是和redis交互,从慢日志查询中未发现有异常情况;第三隐约有人说过用于负载的服务,昨天发版关闭掉了一台。
1308 0
|
Ubuntu Java Linux
|
SQL 存储 关系型数据库