ZFS 在硬件镜像之上,还是只是在 ZFS 中镜像?

Pau*_*lan 9 freebsd raid zfs

我有一个带有双 3.2Ghz Xeon 和 2x36GB 15k SCSI 磁盘的 IBM x346。我正在运行完全基于 ZFS 的 FreeBSD 8.1 安装。

我可以配置 bios 来镜像两个磁盘,然后将 ZFS 放在那个“单个”驱动器上,或者我可以使用 ZFS 镜像驱动器,然后安装到那个驱动器上。

如果我走全 ZFS 路线,我想我在如何使用设备方面有更多的自由(例如,除了我的镜像系统安装之外,我可以设置一个快速的非冗余条纹区域)。就纠错而言,我有什么收获吗?重建性能/易用性/时间?

我知道这两种配置在蚊子的睫毛内可能是相同的,但我想要第二个意见。

Sco*_*ing 18

不知道速度,但我认为在 RAID 上运行 ZFS 意味着:

  • 您失去了原子写入的好处,因为现在 RAID 控制器对磁盘何时发生写入拥有最后决定权。这意味着您依赖于 RAID 控制器 NVRAM。

  • 如果数据写入不当,ZFS 也可能会被欺骗。ZFS 将不得不接受 RAID 控制器的话。

  • 您还会丢失修复文件,因为从 ZFS 的角度来看,您只有一个磁盘,如果数据的完整性不好,ZFS 将无法修复它,因为没有第二个副本。(假设你没有设置副本=2)

  • 如果 RAID 驱动器不同步,则 RAID 驱动器可能需要一些时间来同步,具体取决于日志记录能力。ZFS 将重新同步它发现的坏数据,并且至少某些操作系统可能会定期运行重新同步以确保完整性。同样,因为 RAID 只会向 ZFS 显示一个驱动器,ZFS 无法帮助修复/重建。

  • 您将能够扩展 RAID(如果 RAID 具有此功能)并可能在更多驱动器上重建 ZFS 数据。(考虑到目前的负面影响,对我来说并不是一个很大的优势。)

  • 当然,ZFS 的所有快照功能都不会受到影响(假设数据不会被悄悄损坏)。

硬件 RAID 几乎会抵消 ZFS 所具有的任何优势。就个人而言,我不建议在 ZFS 下使用任何东西,我会在裸机上运行 ZFS。

但是,如果有我没有考虑过的优势,我愿意听。


dis*_*man 6

ZFS 镜像会好很多。

镜像是一个非常简单的配置,需要几乎为零的 CPU 资源,但此外,与硬件或伪硬件突袭相比,您可以获得更好的池控制。

在我自己的实践中,在现代系统中,即使使用 raidz 也比硬件 raid5 好,性能仅慢 5-10%,但 ZFS 的好处完全涵盖了这一点(当然,您可以省钱,因为您不需要卡有硬件 raid5 支持)。