文件服务器 - 存储配置:RAID 与 LVM 与 ZFS 其他什么……?

文件服务器 - 存储配置:RAID 与 LVM 与 ZFS 其他什么……?

我们是一家从事视频编辑等业务的小公司,需要一个地方来保存大型媒体文件的备份并轻松共享它们。

我有一个装有 Ubuntu Server 和 4 个 500 GB 驱动器的盒子。它们目前使用 Samba 设置为四个共享文件夹,Mac/Windows 工作站可以正常查看,但我想要一个更好的解决方案。这有两个主要原因:

  1. 500 GB 确实不够大(有些项目更大)
  2. 管理当前设置很麻烦,因为各个硬盘驱动器的可用空间和重复数据(用于备份)的数量不同。这很令人困惑现在一旦有多个服务器,情况只会变得更糟。(“该项目位于 share4 中的 sever2 上”等)

因此,我需要一种组合硬盘的方法,这样可以避免单个硬盘发生故障导致数据完全丢失,并且用户在每台服务器上只能看到一个共享。我曾经使用过 Linux 软件 RAID5,但体验并不好,但我会再次尝试。LVM 看起来不错,但似乎没人使用它。ZFS 似乎很有趣,但它相对“新”。

对我的用户来说最有效且风险最小的硬盘组合方法是什么?


编辑:此处的目标基本上是创建包含任意数量硬盘但从最终用户角度限制复杂性的服务器。(即,他们在每个服务器上看到一个“文件夹”)备份数据不是这里的问题,但每个解决方案如何响应硬件故障是一个严重的问题。这就是为什么我将 RAID、LVM、ZFS 和谁知道什么放在一起。

我之前使用 RAID5 的经验也是在 Ubuntu Server 上,当时发生了一些棘手且不太可能的情况,导致数据完全丢失。我可以避免但我感觉我正在给系统添加一个不必要的额外故障点。

我没有使用过 RAID10,但我们使用的是商用硬件,每个盒子中最多有 6 个数据驱动器。我们有很多 500 GB 的驱动器,而 1.5 TB 的驱动器相当小。(不过,至少对于一台服务器来说,这仍然是一种选择)

我没有使用过 LVM,而且看过关于它如何处理驱动器故障的相互矛盾的报告。如果(非条带化)LVM 设置可以处理单个驱动器故障,并且只丢失部分存储在该驱动器上的文件(并且大多数文件只存储在单个驱动器上),我们甚至可以忍受这种情况。

但只要我必须学习一些全新的东西,我可能也会一直使用 ZFS。不过,与 LVM 不同的是,我还必须更改我的操作系统 (?),这样就增加了我现在所处的位置和我想要的位置之间的距离。不过,我在大学时使用过一个版本的 solaris,对此并不介意。

在 IT 领域的另一端,我想我也可以探索 FreeNAS 和/或 Openfiler,但这并不能真正解决如何组合驱动器的问题。

答案1

LVM 实际上使用得相当频繁。基本上,LVM 位于硬件(驱动程序)层之上。它不会增加任何冗余或提高可靠性(它依赖于底层存储系统来处理可靠性)。相反,它提供了很多额外的灵活性和附加功能。LVM 永远不会看到磁盘消失或发生故障,因为磁盘故障应该由 RAID(无论是软件还是硬件)处理。如果您丢失了磁盘并且无法继续操作(重建 RAID 等),那么您应该进行备份。尝试从不完整的阵列中恢复数据是没有必要的(如果是,您需要重新评估整个设计)。

LVM 的优点包括:能够轻松扩大和缩小分区/文件系统、能够动态分配新分区、能够对现有分区进行快照,以及将快照挂载为只读或可写分区。快照非常有用,特别是对于备份之类的操作。

就我个人而言,我对自己构建的每个盒子上的每个分区(/boot 除外)都使用 LVM,过去 4 年来我一直这样做。当您想要添加或修改磁盘布局时,处理非 LVM 的盒子是一件非常麻烦的事情。如果您使用的是 Linux,那么您肯定想要使用 LVM。 [注意:以上有关 LVM 的内容已更新,以便更好地解释它是什么以及它如何适应存储方程。]

至于 RAID,我不会使用没有 RAID 的服务器。磁盘价格如此便宜,我会选择 RAID1 或 RAID10。更快、更简单、更强大。

说实话,除非你对 Ubuntu 情有独钟(我通常会推荐它),或者这个盒子正在执行其他任务,否则你可能需要研究一下开放文件管理器。它将你的盒子变成一个带有 Web 界面的存储设备,并将为你处理所有的 RAID/LVM/等,并允许你将存储导出为 SMB、NFS、iSCSI 等。简洁的小设置。

答案2

ZFS 确实非常可靠,它确实让您的存储管理变得轻松很多。另外还有一个好处:smb 与 OpenSolaris 中的 ZFS 集成在一起,并且能够很好地处理 Raid。等上几天,下载当时发布的 2009.6 版本并在测试机上试用。我相信您会喜欢 ZFS。

关于您的评论 ZFS 是新的:已经不再是新的了!

答案3

核心问题是:“这些数据有多重要?”

如果答案是“我可以轻松地重新创建它”,那么您需要 RAID5,并且可能在其之上使用 LVM 以简化管理。

如果答案是“我可以重新创建它,但这需要一段时间并且人们会抱怨”,那么您需要 RAID 6 或更可能是 RAID 1/10。

如果答案是“在我重新创建它并确保它位完美时没有人做任何工作”,那么你需要 ZFS/Raid-Z

请注意,您始终可以重新创建它。RAID 不是备份。

答案4

RAID 不同于 LVM。您可以使用 RAID 来创建容错分区,但 LVM 用于简化磁盘分区和文件系统编辑。您可以在 LVM 或 ZFS 上使用 RAID(ZFS 可以同时使用 RAID 和 LVM)。在我看来,ZFS 比 LVM 更好,但是:

  • 仅在 Solaris 10/11/OpenSOlaris 上,您无法在 Linux 上使用它
  • ZFS 是磁盘管理和文件系统,LVM 允许使用您需要的任何文件系统

在 Ubuntu 上,我更喜欢使用带有 LVM 的 RAID5 MD。

相关内容