我们这里有一台戴尔的 PowerVault NX3100。我必须在这个系统上安装 Linux 服务器,但不知道应该使用哪个文件系统,也不知道哪个分区布局适用于 2x8 2TB 磁盘的 RAID(实际上是 14TB,RAID 5)。
我知道当使用默认块大小时,ext3 会出现 fss > 2TB 的问题。
我倾向于使用带有两个 8TB 分区的 XFS。您认为这是一个不错的选择吗?是否可以(或建议)为该系统使用 LVM?我应该只使用一个还是多个 fss?我想尽量减少 fsck 或 check_xfs 的时间。
答案1
绝对是 XFS。XFS 初始化速度更快,性能出色,而且 XFS 已经用于多 TB 卷很长时间了。我目前支持 230 台机器,这些机器的 XFS 卷大小为 8 到 76 TB。数十台机器通过 LVM 聚合两个或更多 RAID 卷,没有任何问题,所以这足够安全。
xfs_check 的速度主要取决于文件数量。对于典型的大卷(30 TB),如果系统有足够的内存(旧版 xfs_repair 往往会占用大量 RAM),例如 8 GB 或更多,xfs_repair 需要的时间不到 15 分钟。
答案2
我们的备份服务器包括 8-12TB 的空间,第一台(10TB)运行 ext3 没有任何问题,其他运行 ext4。
ext4 似乎在大分区和大量文件的情况下速度更快。我们只使用单个非常大的分区来存储数据,因为它更加灵活。当然,根文件系统也有单独的分区。我们使用硬件 RAID5 和 LVM。
为了尽量减少 fsck 的时间,第一个建议是尽可能以正确的方式关闭服务器。
如果您可以以合理的方式轻松地将文件系统拆分为多个较小的分区,我会选择 LVM 和您选择的文件系统(ext3 已经成熟,XFS 也是如此。许多人都在使用 ext4,没有任何问题)。如果您有较小的分区,则 fsck 会更快,假设您不必每次都 fsck 所有分区。
当然,您也可以首先仅在强制分区上运行 fsck(以使最重要的东西启动并运行),然后在安装其他分区之前继续在其他分区上运行 fsck。
答案3
答案取决于许多因素。
1) 可支持性。谁将支持该系统?如果您与外部实体签订了系统支持合同,那么您必须遵守他们支持的配置。他们可能会对您可以使用的文件系统施加一些限制。
2) 布局(文件系统的数量和类型)取决于您的需要。如果两个 8TB 分区适合您,那么这很可能是正确的选择。我假设我们谈论的是两个数据分区,并且您有用于操作系统本身的单独文件系统(/、/boot、/usr/、/tmp、/var)。
3) 文件大小和数据访问模式。使用默认选项 (data=ordered) 删除 ext3 上的大文件痛苦。如果您预计需要经常删除大型(数百 GB)文件,那么要么使用 ext3 转到 data=writeback,要么选择 xfs/ext4。如果您有同步大量数据的写入器,同时有其他 I/O 进入 FS,则会出现同样的问题。
3)fsck 时间
o) 我没有关于 xfs fsck 时间和要求的经验。
o) 由于内存要求,对 2x8TB 的 ext3 fsck 会存在问题。您需要 RAM(肯定超过 2 GB)才能完成,最好是 64 位系统和大量时间(我认为 fsck 完成前需要几天时间)。
o) RHEL 5.6 支持 ext4,因此 CentOS 也应该支持。与 ext3 相比,这将大大减少 fsck 时间,并且还应能提高性能。我个人会选择这个文件系统,但这是因为
4) 舒适区。从可完成工作的文件系统中选择一个您最熟悉的文件系统。如果您有多年使用文件系统 Z 的经验,并且它对您有用,那么这可能是适合您的文件系统。
我的个人选择?使用 ext3 格式化的单独 /boot 分区。其余存储制成 LVM 物理卷。LVM 具有两个卷组 - 一个用于操作系统,一个用于数据。在卷组中留出一些未使用的空间,以便可以对文件系统进行 LVM 快照以对其进行 fsck,而无需关闭整个系统(对于这种大型文件系统,可能会出现静默位腐烂,请在等待 btrfs 成熟时检查它)。ext4 用于操作系统和数据分区 - 因为它速度很快,我喜欢它并信任它。