虚拟机磁盘管理最佳实践

虚拟机磁盘管理最佳实践

我正在用一台新的服务器替换两台旧机架服务器,新服务器有足够的能力接管当前服务器的功能。该服务器是 4U 机架式服务器,配有 16 个 3.5 英寸 SAS 驱动器托架、两个 2.5 英寸托架、一个 Xeon E3-1230v2 CPU 和 32GB ECC RAM。

我的问题如下。我想要一个带有 ZFS 管理磁盘的 FreeBSD 文件服务器。但是,我需要其他虚拟机,例如 shell/git 服务器、邮件服务器等。我想知道如何处理以下问题:

  1. 我希望 ZFS 完全管理磁盘,因此我不使用任何硬件 RAID。我是否应该将 SAS 控制器作为直通 PCI 直接传递给 FreeBSD 系统?也许只需逐个传递磁盘?

  2. 我想最大限度地提高设置的可靠性。我应该在哪些磁盘上安装虚拟机管理程序?VM 系统映像应该放在哪里?

对于 (2),我可以选择在 SAS 控制器上设置 RAID,并将其用作系统磁盘来存储虚拟机管理程序以及 VM 映像。但是,这使得 PCI 直通到文件服务器变得不可能。另一个选择是使用两个 2.5 英寸托架。

有什么建议吗?我还没有选择使用哪个虚拟化平台,但这应该不会有太大影响。

答案1

不必在这种单服务器虚拟机管理程序设置中使用 ZFS。这不会有任何好处……在可支持性和灵活性方面会损失很多。

这并不是说做不到。我已经建立并管理了以下解决方案:

看:将 ZFS 服务器作为虚拟客户机托管

关键是使用小型硬件 RAID 来保护 ZFS 主机 VM 的小占用空间,然后运行直通 PCIe 适配器到该 VM 以容纳数据磁盘。通过 NFS 将所有内容共享回主机。

为什么您认为在这种情况下需要 ZFS?使用带有电池或闪存缓存的适当硬件 RAID 控制器、RAID 1+0 并从那里开始...(假设使用 VMware ESXi)...

如果你正在查看 Linux + KVM 虚拟机管理程序 +,你的选项会略有改变虚拟文件系统... 但即便如此,仅仅使用 ZFS 并不意味着您将拥有快速或精心设计的设置。缓存和池布局设计这需要考虑...

编辑:

ZFS 在添加磁盘方面并不像您想象的那么灵活。硬件 RAID 控制器可以执行相同的操作,并会为您重新平衡数据。对于 ZFS,添加磁盘并不意味着现有数据会分布在阵列中。此外,某些 ZFS RAID 级别无法扩展。例如,RAIDZ1、Z2、Z3 无法通过向 RAIDZ 集添加磁盘来扩展。它们通过添加类似大小的 RAIDZ 集来扩展。

虽然 ZFS 很棒,而且神奇的独角兽对于许多解决方案来说,运行虚拟机管理程序并不是最佳用例。

相关内容