更大的文件服务器还是 SAN?

更大的文件服务器还是 SAN?

我们目前有两台使用了 6 年的 Linux 文件服务器(HP DL320 和 DL380),它们开始变得很差劲。DL320 只使用 RAID1 中设置的 10K IDE 驱动器,360 有 6 个驱动器,设置了 RAID10。文件服务通过 Samba 提供,而 DL320 目前遇到的问题更多。

我们打算迁移到 Windows Server 2003(2008 不支持我们旧的 Win98 工作站 - 在我们的旧软件转换完成之后的 3 年内,我们无法摆脱它们)。但是,我想知道购买 SAN 是否比购买具有更快驱动器的新机器更有意义?

我们的规格

  • 40 个用户
  • 基于 Linux 的服务器,迁移到 Windows Server 2003
  • Linux‘top’显示 samba 经常处于等待状态(高负载)
  • Linux“sar”命令显示许多小传输,但只有中等字节/秒(因此不是网络带宽问题)
  • 所有用户都直接使用老式的 DOS 客户端应用程序(而非客户端/服务器)连接到文件服务器,这会导致每分钟进行数千次微小的传输

有什么想法吗?

答案1

您的问题可能出在旧机器的 IDE 驱动器上。我自己在大型服务器(15 个驱动器“SATA I”阵列)上也遇到过这种情况。根据负载情况,您可能可以升级到具有新 SATA 驱动器的服务器,或者如果您有钱,可以升级到 SAS。例如,当我从 15 个驱动器 RAID5 的 SATA 驱动器(在 3ware 9000 控制器上)升级到 15 个驱动器 RAID5 的 SATA II 驱动器(使用 NCQ,在 3Ware 9550 上)时,我的性能提高了一倍多。正如 James 所说...iostat 会向您显示磁盘的实际负载情况...因此您可以确认驱动器是瓶颈,而不是 CPU。

为您的环境规模部署全功能 SAN 并不划算。您最好购买容量更大、驱动器速度更快的新型服务器。

答案2

使用“iostat -x”命令检查磁盘利用率。该await列是平均等待时间(以毫秒为单位)。如果存储卷上的等待时间一直很高(超过几百),则肯定是 I/O 受限。

假设情况确实如此,那么只要服务器或 SAN 解决方案的大小符合您的需求,它们都可以满足您的需求。一般来说,通过迁移到具有更快磁盘和更多磁盘的设备,您将提高性能。更多的磁盘轴意味着更多的同时读写。

在不了解你的操作的情况下,我认为 SAN 可能有点过头了。在我工作的地方,当你需要多台计算机在块级别共享同一个存储时,或者当你需要真的快速磁盘 I/O(想想数据库或工程应用程序)。如果您知道需要继续添加磁盘空间,SAN 也是更好的选择。它们通常设计为大规模扩展。

不过,就您的目的而言,我认为升级服务器和外部磁盘阵列可能就足够了。例如,较新的 DL380 G5(或 G6)将容纳 8 个(或 16 个)SAS 驱动器,其速度与光纤通道或 SSD 之外的速度差不多。您可以在其背面挂一个 MSA70 以获得另外 25 个 SAS 驱动器插槽。使用 64 位并为其提供足够的 RAM。Linux 会在 RAM 中缓存文件,我想 Windows 也会这样做,如果您的用户经常访问同一组文件,这有助于提高性能。

答案3

另一个人说,SAN 可能有点过头了。同样,请确保在 Windows 机器上使用 x64。

至于 Windows 98 - 为什么说 WS2008 不支持 Win9x 客户端?您只需要缩减一些默认安全设置。

谢谢,Brian Desmond Active Directory MVP

答案4

我遇到过一些这样的应用程序。我理解你的痛苦。当有很多人这样做时,Samba 并不擅长处理大量微小的传输。迁移到 Windows,即使在相同的硬件上,也可能会因此给你带来一些 CPU 开销。

IDE/SATA 不太适合处理大量微小的随机 I/O,这就是为什么我支持 MediaManNJ 的建议,建议如果您能负担得起,就使用 SAS 驱动器。迁移到较新的硬件还将增加位于服务器和磁盘盘片之间的缓存大小,这可能有助于处理微小的 I/O;如果操作正确,写入重新排序可以发挥很大作用。

使用 64 位将会大大增加您的缓存大小,而 32 位 Linux 内核在这方面也并不是特别出色。

要想以低成本实现真正的极速,双通道 RAID 卡和 MSA70 之一将真正有助于减少 I/O 瓶颈。HP RAID 卡允许 RAID 组跨越通道,以进一步减少 I/O 争用。

相关内容