linux下的stratis高级存储(代码片段)

author author     2023-03-14     644

关键词:

(Linux下的stratis高级存储)

一、stratis存储介绍

1.stratis存储简介

2.stratis的架构图

3.stratis存储的高级特性

4.stratis的专业术语

blockdev:这是一个块设备,例如磁盘或磁盘分区
Pool池:一个池由一个或多个具有固定总大小的块设备组成,其大小等于块设备的总大小。
filesystem文件系统:每个池可以包含一个或多个文件系统,用于存储文件。
文件系统没有固定的总大小,如果数据的大小接近文件系统的虚拟大小,分层就会自动增加卷和文件系统空间大小,只要池的物理空间充够大,就不用担心文件系统空间会爆掉

5.stratis支持的设备

iSCSI
LVM逻辑卷
Device Mapper Multipath设备多路径
硬盘驱动器
LUKS
SSDs
NVMe存储设备
mdraid软件Raid

二、配置stratis精简池

1.系统版本

[root@node2 ~]# cat /etc/os-release 
NAME="Red Hat Enterprise Linux"
VERSION="8.0 (Ootpa)"
ID="rhel"
ID_LIKE="fedora"
VERSION_ID="8.0"
PLATFORM_ID="platform:el8"
PRETTY_NAME="Red Hat Enterprise Linux 8.0 (Ootpa)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:redhat:enterprise_linux:8.0:GA"
HOME_URL="https://www.redhat.com/"
BUG_REPORT_URL="https://bugzilla.redhat.com/"

REDHAT_BUGZILLA_PRODUCT="Red Hat Enterprise Linux 8"
REDHAT_BUGZILLA_PRODUCT_VERSION=8.0
REDHAT_SUPPORT_PRODUCT="Red Hat Enterprise Linux"
REDHAT_SUPPORT_PRODUCT_VERSION="8.0"

2.安装stratis包

[root@node2 ~]# yum -y install stratis-cli.noarch stratisd

3.开启服务

[root@node2 ~]# systemctl enable --now stratisd

4.创建精简池

[root@node2 ~]# stratis pool create pool01 /dev/sda /dev/sdb

5.查看所有精简池信息

[root@node2 ~]# stratis pool list
Name      Total Physical Size  Total Physical Used
pool01                 40 GiB               72 MiB

6.查看单个精简池详细信息

[root@node2 ~]# stratis  blockdev list pool01
Pool Name  Device Node    Physical Size   State  Tier
pool01     /dev/sda              20 GiB  In-use  Data
pool01     /dev/sdb              20 GiB  In-use  Data

三、配置stratis文件系统

1.创建文件系统

[root@node2 ~]# stratis filesystem create pool01 fs01

2.查看文件系统

[root@node2 ~]# stratis filesystem list 
Pool Name  Name  Used     Created            Device                UUID                              
pool01     fs01  546 MiB  Jun 22 2022 15:14  /stratis/pool01/fs01  3f5b31456c4348e29a11a628ec08dc2a 

四、挂载stratis文件系统

1.查看uuid

[root@node2 ~]# lsblk --output=UUID /stratis/pool01/fs01
UUID
3f5b3145-6c43-48e2-9a11-a628ec08dc2a

2.配置自动挂载

[root@node2 ~]# cat /etc/fstab 

#
# /etc/fstab
# Created by anaconda on Fri Mar 19 22:38:50 2021
#
# Accessible filesystems, by reference, are maintained under /dev/disk/.
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info.
#
# After editing this file, run systemctl daemon-reload to update systemd
# units generated from this file.
#
UUID=87963a70-7bf1-415a-90dc-952c441fb8a9 /                       xfs     defaults        0 0
UUID=67c8633f-d3f0-4901-9677-c5bdf032d810 /boot                   xfs     defaults        0 0
UUID=86cc5bb5-f6fa-45de-9d97-efef926f6549 swap                    swap    defaults        0 0
UUID=3f5b3145-6c43-48e2-9a11-a628ec08dc2a /data/stratis xfs defaults,x-systemd.requires=stratisd.service 0 0 

3.挂载目录

[root@node2 ~]# 
[root@node2 ~]# mount -a

4.查看磁盘

[root@node2 ~]# df -hT |grep stratis
/dev/mapper/stratis-1-2b0561ccf26a47ae96f08e0ff198654c-thin-fs-3f5b31456c4348e29a11a628ec08dc2a xfs       1.0T  7.2G 1017G   1% /data/stratis

五、向精简池添加设备

[root@node2 ~]# stratis pool add-data pool01 /dev/sdd

六、stratis的快照设置

1.创建快照

[root@node2 ~]# stratis filesystem snapshot pool01 fs01 snap01

2.恢复快照

①删除文件系统

[root@node2 ~]# umount /stratis/pool01/fs01
[root@node2 ~]# stratis  filesystem destroy pool01 fs

②还原文件系统

[root@node2 ~]# stratis filesystem snapshot pool01 snap01 fs01
Execution failure caused by:
ALREADY EXISTS: fs01

③查看文件系统

[root@node2 ~]# stratis filesystem list
Pool Name  Name    Used     Created            Device                  UUID                              
pool01     fs01    546 MiB  Jun 22 2022 15:14  /stratis/pool01/fs01    3f5b31456c4348e29a11a628ec08dc2a  
pool01     snap01  546 MiB  Jun 22 2022 15:26  /stratis/pool01/snap01  958fe41bcd3342a79bb95709f97c40c2 

七、startis的基本管理

1.查看文件系统

[root@node2 ~]# stratis filesystem list
Pool Name  Name    Used     Created            Device                  UUID                              
pool01     fs01    546 MiB  Jun 22 2022 15:14  /stratis/pool01/fs01    3f5b31456c4348e29a11a628ec08dc2a  
pool01     snap01  546 MiB  Jun 22 2022 15:26  /stratis/pool01/snap01  958fe41bcd3342a79bb95709f97c40c2 

2.查看精简池

[root@node2 ~]#  stratis  blockdev list pool01
Pool Name  Device Node    Physical Size   State  Tier
pool01     /dev/sda              20 GiB  In-use  Data
pool01     /dev/sdb              20 GiB  In-use  Data

3.删除文件系统

[root@node2 ~]# stratis  filesystem destroy pool01 fs

4.删除精简池

[root@node2 ~]# stratis pool destroy pool01 

5.关于快照相关命令

[root@node2 ~]# stratis filesystem snapshot --help
usage: stratis filesystem snapshot [-h] pool_name origin_name snapshot_name

positional arguments:
  pool_name      pool name
  origin_name    origin name
  snapshot_name  snapshot name

optional arguments:
  -h, --help     show this help message and exit

6.关于文件系统相关命令

[root@node2 ~]# stratis filesystem --help
usage: stratis filesystem [-h] create,snapshot,list,destroy,rename ...

optional arguments:
  -h, --help            show this help message and exit

subcommands:
  create,snapshot,list,destroy,rename
    create              Create filesystems in a pool
    snapshot            Snapshot the named filesystem in a pool
    list                List filesystems
    destroy             Destroy filesystems in a pool
    rename              Rename a filesystem

mysql高级----linux下的mysql的安装与初始化配置(代码片段)

MySql高级部分Linux下安装mysql的步骤首先查看当前linux系统是否安装过mysql的rpm包去mysql官网下载对应版本的rpm包将下载的mysql文件,上传到linux的/opt目录下面安装rpm包检验mysql是否安装成功启动和停止mysql服务mysql启动后,进... 查看详情

mysql高级-day01(代码片段)

Mysql高级-day01MySQL高级课程简介序号Day01Day02Day03Day041Linux系统安装MySQL体系结构应用优化MySQL常用工具2索引存储引擎查询缓存优化MySQL日志3视图优化SQL步骤内存管理及优化MySQL主从复制4存储过程和函数索引使用MySQL锁问题综合案例5... 查看详情

linux中的高级存储管理之逻辑卷管理器lvm(代码片段)

本文主要内容前言1.什么是LVM?2.LVM实验1.LVM各组件实现流程表2.创建LVM及挂载3.LVM的拉伸1.VG容量充足时2.当VG不足时4.LVM的缩减5.LVM的LV磁盘快照6.LVM的删除7.如何移除正在使用的PV3.LVM相关命令集合前言在linux提升五中,我们... 查看详情

linux环境下的静态链接库和动态链接库(代码片段)

什么是链接库计算机中,有些文件专门用于存储可以重复使用的代码块,例如功能实用的函数或者类,我们通常将它们称为库文件,简称“库”(Library)。以C语言为例,如下为大家展示的就是一个函数库://myMath.cintadd(inta,intb)r... 查看详情

sh更新基目录下的所有git存储库(代码片段)

查看详情

sh更新基目录下的所有git存储库(代码片段)

查看详情

linux系统目录结构介绍(代码片段)

...在不同的设备(磁盘)上。在逻辑上所有目录(包括目录下的子目录)都在最高级别的目录“/”下,根(“/”)目录是linux系统中所有目录的起始点(丁点),根下面的目录及目录的子目录是一个有层次的树状结... 查看详情

php特定user_id下的数据存储功能(代码片段)

查看详情

linux删除指定目录下的指定文件(代码片段)

Linux删除指定目录下的指定文件删除lib目录下的所有与rabbitmq相关的文件和目录find/usr/lib/-name"rabbitmq"|xargsrm-rf删除根目录下的所有与rabbitmq相关的文件和目录find/-name"rabbitmq"|xargsrm-rf 查看详情

mysql高级(代码片段)

一、MySQL存储过程和函数1.存储过程和函数的概念存储过程和函数是事先经过编译并存储在数据库中的一段SQL语句的集合2.存储过程和函数的好处存储过程和函数可以重复使用,减轻开发人员的工作量。类似于java中方法可以多次... 查看详情

linux下的目录结构(代码片段)

文章目录Linux系统的目录结构Linux下主要目录介绍相对路径和绝对路径Linux命令提示符解析Linux系统的目录结构Linux系统的目录结构是一个倒立的树状结构,根目录用/表示,对比windows目录结构理解linux的目录结构。Linux下主要目... 查看详情

linux下的目录结构(代码片段)

文章目录Linux系统的目录结构Linux下主要目录介绍相对路径和绝对路径Linux命令提示符解析Linux系统的目录结构Linux系统的目录结构是一个倒立的树状结构,根目录用/表示,对比windows目录结构理解linux的目录结构。Linux下主要目... 查看详情

linux基础补充——存储结构与管理硬盘(代码片段)

...量配额VDO链接简介Linux的学习步骤:Linux基础操作Linux高级应用Linux内核入门Linux内核进阶前两部分可以看《Linux就该这么学》和《鸟哥的Linux私房菜》Linux内核入门可以看《奔跑吧Linux内核》及其他经典书籍后续基础都以补充的... 查看详情

linux高级io(代码片段)

文章目录五种IO模型高级IO重要概念同步通信vs异步通信阻塞vs非阻塞其他高级IO非阻塞IOI/O多路转接之select初识selectselect函数理解select执行过程socket就绪条件select的特点select缺点select使用示例I/O多路转接之pollpoll函数接口socket就绪... 查看详情

linux高级io(代码片段)

文章目录五种IO模型高级IO重要概念同步通信vs异步通信阻塞vs非阻塞其他高级IO非阻塞IOI/O多路转接之select初识selectselect函数理解select执行过程socket就绪条件select的特点select缺点select使用示例I/O多路转接之pollpoll函数接口socket就绪... 查看详情

linux下的内置命令(代码片段)

    谈到linux下的内置命令,说实话,在学习shell脚本之前本没有听说过,更不知道它和linux下一般的命令有何不同!解释内置命令之前,先来看一个例子:建立一个shell脚本,内容如下:#!/bin/bashls... 查看详情

13linux下的基础io(代码片段)

不同操作系统所暴露出的接口是不同的,因此Linux下的一些系统调用接口是无法移植到Windows下的。文章目录一、C语言中的文件接口二、系统文件I/O2.1.系统调用接口open2.2.文件描述符fd(filedescriptor)2.3.补充内容--函数... 查看详情

linux下的文件系统(代码片段)

Linux下的文件系统一、tar的用法二、文件的归档1.对目录文件进行归档2.查看归档包内容三、文件的解压缩1.压缩和解压缩工具介绍2.使用gzip解压缩①gzip压缩②gzip解压3.使用bizp2解压缩1.bzip2压缩2.bzip解压3.查看压缩包内容四、目录... 查看详情