存储配额 - fsX for Lustre
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

存储配额

您可以在 FSx for Lustre 文件系统上为用户、组和项目创建存储配额。借助存储配额,您可以限制用户、组或项目可以使用的磁盘空间量和文件数量。存储配额会自动跟踪用户级、组级和项目级别的使用情况,因此无论您是否选择设置存储限制,您都可以监控使用情况。

Amazon FSx 强制执行配额,并阻止超过配额的用户写入存储空间。当用户超过配额时,他们必须删除足够的文件以低于配额限制,这样他们才能再次写入文件系统。

配额执行

在所有 FSx for Lustre 文件系统上自动启用用户、组和项目配额强制执行。您无法禁用配额强制执行。

配额的类型

系统管理员使用Amazon账户 root 用户凭证可以创建以下类型的配额:

  • 一个用户配额适用于个人用户。特定用户的用户配额可以与其他用户的配额不同。

  • 一个群组配额适用于属于特定群组的所有用户。

  • 一个项目配额适用于与项目关联的所有文件或目录。一个项目可以包含位于文件系统中不同目录中的多个目录或单个文件。

  • 一个区块配额限制用户、组或项目可以消耗的磁盘空间量。您可以以千字节为单位配置存储大小。

  • 一个索引节点配额限制用户、群组或项目可以创建的文件或目录的数量。您可以将最大索引节点数配置为整数。

注意

不支持默认配额。

如果您为特定用户和群组设置了配额,并且该用户是该群组的成员,则该用户的数据使用量适用于这两个配额。它还受到两个配额的限制。如果达到任一配额限制,则会阻止用户写入文件系统。

注意

不强制执行为 root 用户设置的配额。同样,以 root 用户身份写入数据sudo命令绕过了配额的强制执行。

配额限制和宽限期

Amazon FSx 将用户、群组和项目配额作为硬限制或具有可配置宽限期的软限制强制执行。

硬限制是绝对限制。如果用户超过其硬限制,则区块或 inode 分配将失败,并显示已超出磁盘配额消息。已达到配额硬限制的用户必须删除足够的文件或目录以低于配额限制,然后才能再次写入文件系统。设置宽限期后,如果宽限期低于硬限制,则用户可以在宽限期内超过软限制。

对于软限制,您可以配置宽限期(以秒为单位)。软限制必须小于硬限制。

您可以为 inode 和区块配额设置不同的宽限期。您还可以为用户配额、群组配额和项目配额设置不同的宽限期。当用户、组和项目配额具有不同的宽限期时,在这些配额的宽限期过后,软限制将转换为硬限制。

当用户超过软限制时,Amazon FSx 允许他们继续超过配额,直到宽限期过后或达到硬限制。宽限期结束后,软限制将转换为硬限制,并且用户将被禁止进行任何进一步的写入操作,直到他们的存储使用量恢复到定义的区块配额或 inode 配额限制以下。宽限期开始时,用户不会收到通知或警告。

设置和查看配额

您可以使用 Lustre 文件系统设置存储配额lfs你的 Linux 终端中的命令。的lfs setquota命令设置配额限制,以及lfs quota命令显示配额信息。

有关 Lustre 配额命令的更多信息,请参阅Lustre 操作手册Lustre 文档网站

设置用户、群组和项目配额

的语法setquota用于设置用户、组或项目配额的命令如下所示。

lfs setquota {-u|--user|-g|--group|-p|--project} username|groupname|projectid [-b block_softlimit] [-B block_hardlimit] [-i inode_softlimit] [-I inode_hardlimit] /mount_point

其中:

  • -u要么--user指定要为其设置配额的用户。

  • -g要么--group指定要为其设置配额的群组。

  • -p要么--project指定要为其设置配额的项目。

  • -b使用软限制设置区块配额。-B设置具有硬限制的区块配额。两者都区块软限制区块_硬限制以千字节表示,最小值为 1024 KB。

  • -i设置带软限制的 inode 配额。-I设置具有硬限制的 inode 配额。两者都inde_softlimitinode_hardlimit以索引节点的数量表示,最小值为 1024 个 inode。

  • 挂载点是挂载文件系统的目录。

用户配额示例:以下命令设置了 5,000 KB 的软块限制、8,000 KB 的硬块限制、2,000 个软索引节点限制和 3,000 个硬索引节点限制配额user1在挂载到的文件系统上/mnt/fsx

sudo lfs setquota -u user1 -b 5000 -B 8000 -i 2000 -I 3000 /mnt/fsx

团体配额示例:以下命令为名为的组设置 100,000 KB 的硬块限制group1在挂载到的文件系统上/mnt/fsx

sudo lfs setquota -g group1 -B 100000 /mnt/fsx

项目配额示例:首先,请确保您已经使用了project命令将所需的文件和目录与项目相关联。例如,以下命令关联的所有文件和子目录/mnt/fsxfs/dir1包含项目 ID 为的项目的目录100

sudo lfs project -p 100 -r -s /mnt/fsxfs/dir1

然后使用setquota命令来设置项目配额。以下命令为项目设置 307,200 KB 的软块限制、309,200 KB 的硬块限制、10,000 个软索引节点限制和 11,000 个硬索引节点限制配额250在挂载到的文件系统上/mnt/fsx

sudo lfs setquota -p 250 -b 307200 -B 309200 -i 10000 -I 11000 /mnt/fsx

设置宽限期

默认宽限期为一周。您可以使用以下语法调整用户、群组或项目的默认宽限期。

lfs setquota -t {-u|-g|-p} [-b block_grace] [-i inode_grace] /mount_point

其中:

  • -t表示将设置宽限期。

  • -u为所有用户设置宽限期。

  • -g为所有组设置宽限期。

  • -p为所有项目设置宽限期。

  • -b为区块配额设置宽限期。-i为 inode 配额设置宽限期。两者都block_grinode_grace以整数秒或以XXwXXdXXhXXmXXs格式。

  • 挂载点是挂载文件系统的目录。

以下命令将用户封禁配额的宽限期设置为 1,000 秒,将用户 inode 配额的宽限期设置为 1 周零 4 天。

sudo lfs setquota -t -u -b 1000 -i 1w4d /mnt/fsx

查看配额

quota命令显示有关用户配额、组配额、项目配额和宽限期的信息。

查看配额命令 显示的配额信息

lfs quota /mount_point

运行命令的用户和用户的主组的一般配额信息(磁盘使用情况和限制)。

lfs quota -u username /mount_point

特定用户的一般配额信息。有以下内容的用户Amazon账户 root 用户凭证可以为任何用户运行此命令,但非 root 用户无法运行此命令来获取有关其他用户的配额信息。

lfs quota -u username -v /mount_point

特定用户的一般配额信息以及每个对象存储目标 (OST) 和元数据目标 (MDT) 的详细配额统计信息。有以下内容的用户Amazon账户 root 用户凭证可以为任何用户运行此命令,但非 root 用户无法运行此命令来获取有关其他用户的配额信息。

lfs quota -g groupname /mount_point

特定群组的一般配额信息。

lfs quota -p projectid /mount_point

特定项目的一般配额信息。

lfs quota -t -u /mount_point

用户配额的封禁和 inode 宽限时间。

lfs quota -t -g /mount_point

群组配额的区块和 inode 宽限时间。

lfs quota -t -p /mount_point

项目配额的区块和 inode 宽限时间。

配额和 Amazon S3 关联存储桶

您可以将 FSx for Lustre 文件系统链接到 Amazon S3 数据存储库。有关更多信息,请参阅将您的文件系统关联到 S3 存储桶

您可以选择在链接的 S3 存储桶内选择特定的文件夹或前缀作为文件系统的导入路径。在指定 Amazon S3 中的文件夹并将其从 S3 导入到您的文件系统时,只有该文件夹中的数据才会应用于配额。整个存储桶的数据不计入配额限制。

链接的 S3 存储桶中的文件元数据将导入到结构与 Amazon S3 导入的文件夹相匹配的文件夹。这些文件计入拥有这些文件的用户和群组的 inode 配额。

当用户执行hsm_restore或者延迟加载文件,则该文件的完整大小计入与文件所有者关联的区块配额。例如,如果用户 A 延迟加载用户 B 拥有的文件,则存储量和 inode 使用量将计入用户 B 的配额。同样,当用户使用 Amazon FSx API 发布文件时,数据将从拥有该文件的用户或群组的区块配额中释放出来。

由于 HSM 恢复和延迟加载是通过 root 访问权限执行的,因此它们绕过了配额强制执行。导入数据后,将根据在 S3 中设置的所有权计入用户或群组,这可能会导致用户或群组超出其屏蔽限制。如果发生这种情况,他们需要释放文件才能再次写入文件系统。

同样,启用自动导入功能的文件系统将自动为添加到 S3 中的对象创建新的 inode。这些新 inode 是使用根访问权限创建的,在创建时会绕过配额强制执行。根据谁拥有 S3 中的对象,这些新 inode 将计入用户和群组。如果这些用户和群组因自动导入活动而超出其 inode 配额,则他们必须删除文件以释放更多容量并低于配额限制。

配额和恢复备份

恢复备份时,原始文件系统的配额设置将在还原的文件系统中实现。例如,如果在文件系统 A 中设置了配额,而文件系统 B 是通过文件系统 A 的备份创建的,则文件系统 A 的配额将在文件系统 B 中强制执行。