在单个 zpool 中使用离散 ZFS 数据集/文件系统有什么优势吗?

在单个 zpool 中使用离散 ZFS 数据集/文件系统有什么优势吗?

我有一台在 Linux 上使用 ZFS 的 Centos 服务器。磁盘位于单个 zpool 中。当您输入时,zfs list它会显示单个文件系统(?)(数据集?) tank1,。

NAME         USED  AVAIL     REFER  MOUNTPOINT
tank1       18.4T  25.1T     18.4T  /tank1

里面tank1有几个目录。我们把它们称为myFilesimagesusers

有优势吗以这种方式进行设置,而不是zfs create为每个目录创建独立的文件系统,从而为每个目录提供自己的共享,并控制每个文件系统的共享方式?

因此当我输入时zfs list我会看到:

NAME           USED  AVAIL     REFER  MOUNTPOINT
tank1          18.4T  25.1T     18.4T  /tank1
tank1/myFiles  55.0K  25.1T     55.0K  /tank1/myFiles
tank1/images   55.0K  25.1T     55.0K  /tank1/images
tank1/users    55.0K  25.1T     55.0K  /tank1/users

答案1

您可以为每个数据集设置配额、压缩和许多其他设置。假设您有一些程序或应用程序,并且您不希望它使用超过 20GB 的空间,您可以将其设置为数据集的配额。

如果您使用 zfs send 进行备份或复制,则需要针对每个数据集进行备份或复制。因此,您可能希望复制某个应用程序的数据,并将其限制在特定的数据集中,但又不想复制其他应用程序的庞大缓存或日志。因此,您需要将要复制的部分与您不想复制的部分分开,放在不同的数据集中。

如果您使用内置的 NFS 共享或 SMB 共享管理,那么也会按数据集进行配置。

所以,答案是,这完全取决于你需要什么。如果你需要为池中的不同数据组设置不同的 zfs 设置,那么你就需要数据集。

相关内容