Linux实施高级存储功能

13 篇文章 0 订阅

目录

一、Stratis 分层存储

1、配置yum源,安装软件包

2、启动stratisd服务

3、创建池

4、构建文件系统

5、挂载

6、扩容

7、快照

8、一个池中可以构建多个文件系统

9、文件系统删除

10、删除池

二、VDO压缩存储和删除重复数据

1、安装vdo软件包

2、创建vdo卷(可直接对硬盘处理也可以对标准分区处理)

3、分析vdo卷是否创立成功,是否具有压缩与去重的功能

4、指定vdo卷的文件系统类型,并进行挂载到/mnt/vdo1

5、对vdo卷进行查看

6、查看去重功能是否开启

7、复制文件到挂载点查看

8、再次复制两个相同文件查看

三、tuned优化系统

优化系统配置文件:

1、 安装调优软件包

2、查看该系统调优服务是否启动

3、重新启动系统调优服务并再次查看

4、查看当前系统正在使用的调优配置文件

5、查看系统推荐使用的调优配置文件

6、列出所有可用的调整配置文件

 7、调整我们的系统以实现最大吞吐量:

8、要查看配置文件详细信息

9、关闭已调优的调整活动


一、Stratis 分层存储

         Stratis 是一个卷管理文件系统 volume-managing filesystem ( VMF ),类似于 ZFS 和 Btrfs 。它使用了 存储“ 池 ” 的核心思想,该思想被各种 VMF 和 形如 LVM 的独立卷管理器采用。使用一个或多个硬盘(或 分区)创建存储池,然后在存储池中创建卷volume 。与使用 fdisk 或 GParted 执行的传统硬盘分区不 同,存储池中的卷分布无需用户指定,比lvm逻辑卷更加的灵活与动态
          将磁盘或者(标准分区)创立为池,只有一层虚拟层,并且内存是动态的 存储的数据大小就是所分的文件系统的大小,上限为硬盘的总内存,创建的卷就是为一个文件系统,且不用指定文件系统格式,默认为系统所使用的文件系统格式

 

1、配置yum源,安装软件包

[root@localhost ~]# umount /logical/lv1/
[root@localhost ~]# e2fsck -f /dev/vg1/lv1 #检测文件系统,resize2fs之前会提示先要检
测文件系统
[root@localhost ~]# resize2fs /dev/vg1/lv1 3G #重置文件系统大小
[root@localhost ~]# lvreduce -L 3G /dev/vg1/lv1 或者[root@localhost ~]# lvresize
-L 3G /dev/vg1/lv1
[root@localhost ~]# mount -a
[root@localhost ~]# df -h
[root@kongd ~]# dnf install -y stratisd stratis-cli

2、启动stratisd服务

[root@kongd ~]# systemctl enable --now stratisd.service
[root@kongd ~]# systemctl is-enabled stratisd.service
enabled

3、创建池

[root@kongd ~]# stratis --version
1.0.0
[root@kongd ~]# stratis pool --help
usage: stratis pool [-h] {create,list,destroy,rename,add-data,add-cache} ...
optional arguments:
-h, --help show this help message and exit
subcommands:
{create,list,destroy,rename,add-data,add-cache}
create Create a pool #创建一个池
list List pools #列出池
destroy Destroy a pool #销毁一个池
rename Rename a pool #重命名
add-data Add one or more blockdevs to an existing pool for use
as data storage #增加物理设备
add-cache Add one or more blockdevs to an existing pool for use
as cache #增加缓
[root@kongd ~]# stratis pool create redhat /dev/nvme0n2 #池的名字redhat,在池中
加入设备/dev/nvme0n2
[root@kongd ~]# stratis pool list
Name Total Physical Size Total Physical Used
redhat 5 GiB 52 MiB

4、构建文件系统

对于stratis管理的存储分层而言,文件系统是构建在池中的

[root@kongd ~]# stratis filesystem create redhat rhce
[root@kongd ~]# stratis filesystem list
Pool Name Name Used Created Device UUID
redhat rhce 546 MiB Jan 08 2020 00:15 /stratis/redhat/rhce
fe32e43bafa046d8b82210bcd7616ac1

5、挂载

[root@kongd ~]# mkdir /mnt/stratis
[root@kongd ~]# mount /stratis/redhat/rhce /mnt/stratis
[root@kongd ~]# df -hT | grep /mnt/stratis
#永久挂载
[root@kongd ~]# tail -1 /etc/fstab
/stratis/redhat/rhce /mnt/stratis xfs defaults,xsystemd.requires=stratisd.service 0 0

6、扩容

[root@kongd ~]# stratis pool add-data redhat /dev/nvme0n3
[root@kongd ~]# stratis pool list
Name Total Physical Size Total Physical Used
redhat 10 GiB 602 MiB
写入数据
[root@kongd ~]# dd if=/dev/zero of=/mnt/stratis/file bs=1G count=5
5368709120 bytes (5.4 GB, 5.0 GiB) copied, 13.4471 s, 399 MB/s

7、快照

[root@kongd ~]# stratis filesystem snapshot redhat rhce snap01
[root@kongd ~]# stratis filesystem list
Pool Name Name Used Created Device UUID
redhat rhce 5.53 GiB Jan 08 2020 00:15 /stratis/redhat/rhce
fe32e43bafa046d8b82210bcd7616ac1
redhat snap01 5.53 GiB Jan 08 2020 00:23 /stratis/redhat/snap01
66e1027fcb41476786b88155593374ac
#挂载快照读取数据
[root@kongd ~]# mkdir /mnt/snap
[root@kongd ~]# mount /stratis/redhat/snap01 /mnt/snap/
[root@kongd ~]# du -sh /mnt/snap/file
5.0G /mnt/snap/file

8、一个池中可以构建多个文件系统

[root@kongd ~]# stratis filesystem create redhat rhce1
[root@kongd ~]# stratis filesystem list redhat
Pool Name Name Used Created Device UUID
redhat rhce 5.53 GiB Jan 08 2020 00:15 /stratis/redhat/rhce
fe32e43bafa046d8b82210bcd7616ac1
redhat snap01 5.53 GiB Jan 08 2020 00:23 /stratis/redhat/snap01
66e1027fcb41476786b88155593374ac
redhat rhce1 546 MiB Jan 08 2020 00:26 /stratis/redhat/rhce1
ec549c4e3bb84fa18f432109f435c520

9、文件系统删除

[root@kongd ~]# stratis filesystem destroy redhat rhce1
[root@kongd ~]# stratis filesystem destroy redhat snap01
Execution failure caused by:
ERROR: low-level ioctl error due to nix error: EBUSY: Device or resource busy
#注意:文件系统需要先卸载才能删除
[root@kongd ~]# umount /mnt/snap
[root@kongd ~]# stratis filesystem destroy redhat snap01

10、删除池

[root@kongd ~]# umount /mnt/snap
[root@kongd ~]# stratis filesystem destroy redhat snap01
[root@kongd ~]# stratis filesystem destroy redhat rhce
[root@kongd ~]# stratis pool destroy redhat

二、VDO压缩存储和删除重复数据

      (Virtual data optimize)虚拟数据优化,对存储空间的优化处理技术,主要核心是使用VDO对设备上数据空间进行压缩,并对重复数据进行删除,以此来优化存储空间的使用

        VDO层位于现有块存储设备(如硬盘)的顶部,可直接对硬件进行驱动,也可以在存储层上面的lvm和标准分区(文件系统上),于是优化可对硬件和文件系统进行优化

1、安装vdo软件包

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

2、创建vdo卷(可直接对硬盘处理也可以对标准分区处理)

[root@server ~]# vdo create --name vdo1 --device=/dev/nvme0n2 --vdoLogicalSize 10g
 
###指定vdo卷名称 和对那个进行磁盘(或标准分区)进行vdo   并指定逻辑大小 也可以不指定 压缩的是所指定文件系统的剩余空间 并且其本身程序占用3g左右,主要用于重复使用率较高的磁盘

3、分析vdo卷是否创立成功,是否具有压缩与去重的功能

​
[root@kongd ~]# vdo list
vdo1
[root@kongd ~]# vdo status --name vdo1
VDO status:
Date: '2020-01-08 01:08:30+08:00'
Node: kongd.com
Kernel module:
Loaded: true
Name: kvdo
Version information:
kvdo version: 6.2.0.293
Configuration:
File: /etc/vdoconf.yml
Last modified: '2020-01-08 01:06:34'
...

​

4、指定vdo卷的文件系统类型,并进行挂载到/mnt/vdo1

-K选项可防止立即丢弃文件系统中未使用的块,只对未使用的块进行优化,从而使命令返回更快
[root@kongd ~]# mkfs.xfs -K /dev/mapper/vdo1
meta-data=/dev/mapper/vdo1 isize=512 agcount=4, agsize=327680 blks
= sectsz=4096 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=1, rmapbt=0
= reflink=1
data = bsize=4096 blocks=1310720, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=4096 sunit=1 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
#刷新存储设备
[root@kongd ~]# udevadm settle
[root@kongd ~]# mkdir /mnt/vdo1
[root@kongd ~]# mount /dev/mapper/vdo1 /mnt/vdo1

5、对vdo卷进行查看

5、使用vdostats命令查看卷的初始统计信息和状态
[root@kongd ~]# vdostats --human-readable
Device Size Used Available Use% Space saving%
/dev/mapper/vdo1 5.0G 3.0G 2.0G 60% 98%
可以看到我们还没有写任何数据,但是已经有3GB,60%的空间正在使用中了!这是因为“通用重复数据删除索
引”已被写入磁盘。这基本上是一个数据库,用于记录slab指纹及其位置。这就是使重复数据删除成为可能的
原因。

6、查看去重功能是否开启

[root@kongd ~]# vdo status --name=vdo1 | grep Deduplication
Deduplication: enabled

7、复制文件到挂载点查看

[root@kongd ~]# cp /media/cdrom/images/install.img /mnt/vdo1/
[root@kongd ~]# vdostats --human-readable
Device Size Used Available Use% Space saving%
/dev/mapper/vdo1 5.0G 3.4G 1.6G 68% 2%

8、再次复制两个相同文件查看

[root@kongd ~]# cp /media/cdrom/images/install.img /mnt/vdo1/install.img1
[root@kongd ~]# cp /media/cdrom/images/install.img /mnt/vdo1/install.img2
[root@kongd ~]# vdostats --human-readable
Device Size Used Available Use% Space saving%
/dev/mapper/vdo1 5.0G 3.4G 1.6G 68% 64%
[root@kongd ~]# du -sh /mnt/vdo1/
1.4G /mnt/vdo1/

总结:会发现传一个相同的文件,但是占用磁盘空间并不会发生变化。

三、tuned优化系统

       系统管理员可以利用tuned来优化系统性能,tuned守护进程会利用 当前系统工作的特性来决定采取怎样的调优配置文件,以静态与动态两种方式进行调优调整,根据主机应用选择相应的配置

优化系统配置文件:

调优配置文件

用途

balanced(均衡)  适用在节能和性能之间折中的系统
desktop从balanced配置文件衍生而来,加快交互式响应速度
throughput-performance调优系统,获得最大吞吐量
latency-performance适合牺牲性能来获取低延迟的服务器系统
network-latency源自延迟性能配置文件,它启用其他网络调整参数以提供较低的网络延迟
network-throughput从吞吐量性能概要文件得出,附加的网络调整参数适用于最大的网络吞吐量
Oracle 基于throughput-performance配置文件中,针对Oracle数据库负载进行优化
Virtual-quest 当系统在虚拟机上运行时,使系统以获得最高性能
Virtual-host当系统充当虚拟机的主机时,调优系统以获得最高性能
powersave

调整系统以最大程度地节省电力

1、 安装调优软件包

[root@localhost ~]# yum install tuned -y

2、查看该系统调优服务是否启动

[root@localhost ~]# systemctl is-active tuned
inactive

3、重新启动系统调优服务并再次查看

[root@localhost ~]# systemctl restart tuned
[root@localhost ~]# systemctl is-active tuned
active

4、查看当前系统正在使用的调优配置文件

[root@localhost ~]# tuned-adm active 
Current active profile: virtual-guest

5、查看系统推荐使用的调优配置文件

[root@localhost ~]# tuned-adm recommend 
virtual-guest

6、列出所有可用的调整配置文件

[root@localhost ~]# tuned-adm list

 7、调整我们的系统以实现最大吞吐量:

[root@localhost ~]# tuned-adm profile throughput-performance 
[root@localhost ~]# tuned-adm active 
Current active profile: throughput-performance

8、要查看配置文件详细信息

root@localhost ~]# tuned-adm profile_info virtual-guest

9、关闭已调优的调整活动

 [root@localhost ~]# tuned-adm off

[root@localhost ~]# tuned-adm active 
No current active profile.


    
    
    
   
   
   
    
   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值