Stratis是RHEL发行版附带的新功能之一。Stratis是一种本地存储管理解决方案,专注于简单性和提高可用性,同时提供对高级存储功能的访问。它使用 XFS 文件系统并授予您访问高级存储功能的权限,例如:精简配置、文件系统快照、分层、基于池的管理、监控。

基本上,Stratis是一个由一个或多个本地磁盘或磁盘分区创建的存储池。Stratis 可帮助系统管理员设置和管理复杂的存储配置。

在我们继续之前,让我们先来看看您在学习过程中必然会遇到的一些技术术语:

pool:pool由一个或多个块设备组成。pool的总大小等于块设备的总和。

blockdev:您可能已经猜到了,这指的是块设备,例如磁盘分区。

文件系统:文件系统是一个精简配置层,其总大小并不固定。文件系统的实际大小会随着数据的增加而增长。当数据大小接近文件系统的虚拟大小时,Stratis 会自动增加文件系统的大小。

可以与 Stratis 一起使用的块设备包括:

LVM 逻辑卷

LUKS

SSD(固态硬盘

设备映射器多路径

互联网SCSI

HDD(硬盘驱动器)

mdraid

NVMe 存储设备

Stratis 的软件组件

Stratis 提供 2 个软件实用程序:

Stratis-cli:这是 Stratis 附带的命令行工具。

Stratisd 守护进程:这是一个创建和管理块设备的守护进程,并起到提供DBUS API的作用。

如何在 RHEL 9/8 上安装 Stratis

了解了Stratis是什么并定义了一些术语后,我们现在在RHEL 9/8发行版(也适用于CentOS 8 )上安装和配置Stratis。

在 RHEL 9/8 上安装 Stratis

让我们看看如何在RHEL 9/8系统上安装Stratis,以 root 用户身份登录并运行命令。

# dnf install stratisd stratis-cli

如何在RHEL9/8上安装Stratis以管理分层本地存储

要查找有关已安装软件包的更多信息,请运行该命令。

# rpm -qi stratisd stratis-cli

如何在RHEL9/8上安装Stratis以管理分层本地存储

Stratis安装成功后,运行命令启动服务。

# systemctl enable --now stratisd

要检查Stratis的状态,请运行命令。

# systemctl status stratisd

如何在RHEL9/8上安装Stratis以管理分层本地存储

创建 Stratis 池

要创建Stratis池,您需要未使用或未安装的块设备。此外,假设Stratisd服务已启动并正在运行。此外,您要使用的块设备大小至少需要为1 GB 。

在我们的 RHEL 9/8 系统上,我们有四个额外的块设备:/dev/xvdb、/dev/xvdc、/dev/xvdd 和 /dev/xvde。要显示块设备,请运行 lsblk 命令。

# lsblk

如何在RHEL9/8上安装Stratis以管理分层本地存储

这些块设备都不应该有分区表。您可以使用命令来确认这一点。

# blkid -p /dev/xvdb

如何在RHEL9/8上安装Stratis以管理分层本地存储

如果没有输出,则表示块设备上没有任何分区表。但是,如果存在分区表,则可以使用以下命令将其擦除:

# wipefs -a /<device-path>

从一个块设备创建Stratis池

您可以使用语法从单个块设备创建Stratis池。

# stratis pool create <pool-name> <block-device>

例如,要从 /dev/xvdb 创建一个池,请运行以下命令。

# stratis pool create my_pool_1 /dev/xvdb

确认创建的池运行。

# stratis pool list

如何在RHEL9/8上安装Stratis以管理分层本地存储

从多个块设备创建 Stratis 池

要从多个设备创建池,请使用以下语法在一行上列出所有设备。

# stratis pool create <pool_name> device-1 device-2 device-n

要从 /dev/xvdc、/dev/xvdd 和 /dev/xvde 创建一个池,请运行以下命令。

# stratis pool create my_pool_2 /dev/xvdc /dev/xvdd/ /dev/xvde

再次使用命令列出可用的池。

# stratis pool list

此时,您应该有 2 个池:my_pool_1和my_pool_2。

如何在RHEL9/8上安装Stratis以管理分层本地存储

从上图可以看出,池 my_pool_2 占用的硬盘空间是我们仅从一个具有 10GB 内存的块设备创建的第一个池的三倍。

从池中创建文件系统

创建文件系统后,您可以使用语法从其中一个池中创建文件系统。

# stratis fs create <poolname> <filesystemname>

例如,要分别从my_pool_1和my_pool_2创建filesystem-1和filesystem-2,请运行命令:

# stratis fs create my_pool_1 filesystem-1
# stratis fs create my_pool_2 filesystem-2

如何在RHEL9/8上安装Stratis以管理分层本地存储

要查看新创建的文件系统,请运行该命令。

# stratis fs list

如何在RHEL9/8上安装Stratis以管理分层本地存储

要将文件系统的结果缩小到一个池,请运行以下命令:

# stratis fs list <poolname>

例如,要检查my_pool_2中的文件系统,请运行该命令。

# stratis fs list my_pool_2

如何在RHEL9/8上安装Stratis以管理分层本地存储

现在,如果您运行lsblk 命令,输出应该与下面的示例输出有些类似。

# lsblk

如何在RHEL9/8上安装Stratis以管理分层本地存储

挂载 Stratis 文件系统

我们现在要挂载现有的文件系统以便访问它们。首先,创建挂载点。

对于第一个池中的文件系统,运行以下命令:

# mkdir /data
# mount /stratis/my_pool_1/filesystem-1 /data

对于第二个池中的第二个文件系统,运行该命令。

# mkdir /block
# mount /stratis/my_pool_2/filesystem-2 /block

如何在RHEL9/8上安装Stratis以管理分层本地存储

要验证当前挂载点是否存在,请运行df 命令:

# df -Th | grep  stratis

如何在RHEL9/8上安装Stratis以管理分层本地存储

完美!我们可以清楚地看到我们的挂载点已经存在。

持久挂载 Stratis 文件系统

我们刚刚创建的挂载点在重启后无法继续存在。要使它们持久存在,首先获取每个文件系统的UUID :

# blkid -p /stratis/my_pool_1/filesystem-1
# blkid -p /stratis/my_pool_2/filesystem-2

如何在RHEL9/8上安装Stratis以管理分层本地存储

现在继续并将 UUID 和挂载点选项复制到/etc/fstab,如图所示。

# echo "UUID=c632dcf5-3e23-46c8-82b6-b06a4cc9d6a7 /data xfs defaults 0 0" | sudo tee -a /etc/fstab
# echo "UUID=b485ce80-be18-4a06-8631-925132bbfd78 /block xfs defaults 0 0" | sudo tee -a /etc/fstab

如何在RHEL9/8上安装Stratis以管理分层本地存储

为了使系统注册新配置,请运行以下命令:

# systemctl daemon-reload

要验证配置是否按预期工作,请挂载文件系统。

# mount /data
# mount /block

删除 Stratis 文件系统

要删除文件系统,首先需要卸载文件系统,如下所示。

# umount /mount-point

在这种情况下,我们应该这样做。

# umount /data

要销毁文件系统,请使用以下语法:

# stratis filesystem destroy <poolname> <filesystem-name>

因此,我们将有:

# stratis filesystem destroy my_pool_1 filesystem-1

如何在RHEL9/8上安装Stratis以管理分层本地存储

要确认删除文件系统,请发出命令。

# stratis filesystem list my_pool_1

如何在RHEL9/8上安装Stratis以管理分层本地存储

从输出中,我们可以清楚地看到与my_pool_1关联的文件系统已被删除。

将磁盘添加到现有 Stratis 池

您可以使用以下命令将磁盘添加到现有池:

# stratis pool add-data <poolname> /<devicepath>

例如,要向 my_pool_1 添加附加磁盘/dev/xvdf,请运行以下命令:

# stratis pool add-data my_pool_1 /dev/xvdf

如何在RHEL9/8上安装Stratis以管理分层本地存储

请注意,添加额外的卷后, my_pool_1的大小增加了一倍。

创建 Stratis 快照

快照是在给定时间点以精简配置的方式读取和写入文件系统的副本。

要创建快照,请运行以下命令:

# stratis fs snapshot <poolname> <fsname> <snapshotname>

在这种情况下,命令将是:

# stratis fs snapshot my_pool_2 filesystem-2 mysnapshot

您可以将数据属性附加-$(date +%Y-%m-%d)到快照并添加日期标签,如下面的截图所示。

要验证快照的创建,请运行以下命令:

# stratis filesystem list <poolname>

在这种情况下,命令将是:

# stratis filesystem list my_pool_2

如何在RHEL9/8上安装Stratis以管理分层本地存储

使用文件系统恢复到上一个​​快照

要将 Stratis 文件系统恢复到以前创建的快照,首先,卸载并销毁原始文件系统。

# umount /stratis/<poolname>/filesystem

在我们的场景中,情况确实如此。

# umount /stratis/my_pool_2/filesystem-2

然后使用原始文件系统创建快照的副本:

# stratis filesystem snapshot <poolname> filesystem-snapshot filesystem

命令如下:

# stratis filesystem snapshot my_pool_2 mysnapshot-2019-10-24 block

最后,挂载快照。

# mount /stratis/my-pool/my-fs mount-point

删除 Stratis 快照

要删除快照,首先要卸载快照。

# unmount /stratis/my_pool_2/mysnapshot-2019-10-24

接下来继续,继续销毁快照:

# stratis filesystem destroy my_pool_2 mysnapshot-2019-10-24

删除 Stratis 池

要删除 Stratis 池,请按照以下简单步骤操作。

1.列出池中存在的文件系统。

# stratis filesystem list <poolname>

2.接下来,卸载池中的所有文件系统。

# umount /stratis//filesystem-1
# umount /stratis//filesystem-2
# umount /stratis//filesystem-3

3.销毁文件系统。

# stratis filesystem destroy <poolname> fs-1 fs-2

4.然后,删除该池。

# stratis pool destroy poolname

在这种情况下,语法将是。

# stratis pool destroy my_pool_2

您可以再次验证池列表。

# stratis pool list

最后,删除文件系统的/etc/fstab中的条目。

在本教程中,我们将介绍如何安装和使用 Stratis 来管理 RHEL 上的分层本地存储。我们希望您觉得它有用。试一试,然后告诉我们效果如何。

相关推荐
人工智能训练如何影响计算资源的需求?
近年来,人工智能的格局发生了显著变化,计算资源在这一转变中起到了至关重要的作用。随着我们从小规模模型向大规模训练转变,对计算能力的需求急剧上…
头像
技术指南 2024-10-27
866
如何搭建《方舟:生存升级》的独立服务器?
当您的游戏环境成功启动后,吸引玩家的关键在于有效的推广策略。随着《方舟:生存升级》在游戏界的热潮,许多玩家希望搭建自己的独立服务器,以获得个…
头像
技术指南 2024-10-27
387
独立IP地址为您的网站带来的优势是什么?
如果您在使用共享IP服务器时遇到问题,例如网站因攻击而停机,那么可能是时候考虑升级到独立IP了。本文将引导您完成从共享IP到独立IP的转换,…
头像
技术指南 2024-10-27
547
如何解决在联想服务器上运行CentOS时的驱动冲突问题?
许多系统管理员和服务器租赁提供商在联想服务器上运行CentOS时会遇到兼容性问题。本文将深入探讨这些问题的根源,并提供切实可行的解决方案,以…
头像
技术指南 2024-10-26
245
为什么服务器租用提供商会将服务器禁ping?
在服务器租赁和管理领域,您可能会发现服务器会阻止Ping请求。这种现象被称为“Ping阻止”或“ICMP过滤”,在服务器租赁提供商和管理员中…
头像
技术指南 2024-10-26
939
如何选择合适的视频聊天服务器租赁方案?
在挑选合适的视频聊天服务器租赁方案时,有几个重要因素需要考虑。视频聊天应用程序需要稳定且强大的服务器解决方案,以确保用户享受到流畅的交流体验…
头像
技术指南 2024-10-26
891