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

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

存储配额

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

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

实施配额

对于 Lustre 文件系统,所有 FSx 都会自动启用用户和组配额强制。您无法禁用配额强制实施。

配额的类型

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

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

  • 一个组配额适用于作为特定组成员的所有用户。

  • 一个区块配额限制用户或组可以使用的磁盘空间量。您配置存储大小(以 KB 为单位)。

  • 网络 ACL 和安全组都允许 (因此可到达您的实例) 的发起 ping 的没有节点配额限制用户或组可以创建的文件或目录的数量。您可以将最大 inode 数配置为整数。

注意

不支持默认配额和项目配额。

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

注意

不强制执行为 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} username|groupname [-b block_softlimit] [-B block_hardlimit] [-i inode_softlimit] [-I inode_hardlimit] /mount_point

其中:

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

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

  • -b用软限制设置区块配额。-B设置带有硬性限制的区块配额。二者block _softlimitblock _hard限制以千字节表示,最小值为 1024 KB。

  • -i用软限制设置 inode 配额。-I设置带有硬性限制的 inode 配额。二者inode_softlimitinode_hardlimit以 inode 的数量表示,最小值为 1024 个 inode。

  • mount_point挂载文件系统的目录。

以下命令设置了 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

设置宽限期

默认宽限期为一周。您可以使用以下语法调整用户和组的默认宽限期。

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

其中:

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

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

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

  • -b为区块配额设置宽限期。-i为 inode 配额设置宽限期。二者block _graceinode_grace以整数秒表示或以XXwXXdXXhXXmXXs格式的日期和时间。

  • mount_point挂载文件系统的目录。

以下命令将用户阻止配额的宽限期设置为 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 -t -u /mount_point

用户配额的阻止和 inode 宽限时间。

lfs quota -t -g /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 的配额。同样,当用户使用hsm_release命令时,数据将从拥有该文件的用户或组的阻止配额中释放出来。

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

同样,启用了自动导入的文件系统将为添加到 S3 的对象自动创建新的 inode。这些新的 inode 是通过 root 访问权限创建的,并在创建时绕过配额强制执行。这些新的 inode 将计入用户和组,具体取决于 S3 中对象的拥有者。如果这些用户和组超出了基于自动导入活动的 inode 配额,他们必须删除文件才能释放额外容量并降低配额限制。

配额和还原备份

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