我有大约 200 个计算节点,用于运行我的程序。当这些程序运行时,这些节点将需要访问存储我数据的共享位置。我需要一个可以容纳大约 3TB 数据的存储,但从所有节点同时访问时应该非常快速。
使用模式是,每个运行的程序读取和写入约 10 个文件,每个文件约 2MB。每个节点将运行此类程序的 8 个实例。因此,我有 1600 个相同程序的实例在运行并尝试访问数据。
不存在对同一文件的并发写入。
我应该使用什么存储系统?
目前,我正在考虑购买几台运行 Linux + 1 个 4U RAID 机箱的戴尔服务器。戴尔服务器将从机箱中提供文件。我还不知道什么软件可以让我进行负载平衡文件服务。
答案1
这其中最重要的问题是您的 200 个节点已经具有哪些现有 I/O?
我这样说的原因是许多计算密集型设备都使用无限带宽,如果您已经拥有该基础设施,我强烈建议您直接购买 FC-to-IB 网关并“利用”您现有的投资 - 它将快速且具有弹性。
在没有 IB 的情况下,下一个性能最佳的 SAN 将是 8/4Gbps FC 网络 - 这将非常快,但对于 200 个节点来说成本非常高,因为 FC HBA/SFP+s/FC 交换机等在这种数量下并不便宜。话虽如此,这是一个让您晚上睡个好觉的好解决方案。哦,我同意上面 Adrian 的观点,HP EVA 非常容易设置。
如果您的节点只有 1 或 10GB 以太网,那么我会倾向于选择这些类似 NAS 的分布式文件系统,例如 gluster,或者只是普通的中高端 NAS,例如 NetApp(较小的 NAS 真的很难承受负载)。这会起作用,但您可能会在高峰负载时看到问题,当然这意味着您的成本将远低于其他解决方案。如果您走“大型 NAS”路线,我会倾向于将它们与 10Gbps NIC 连接起来,因为它们的价格已经下降了很多,而且它们比许多成组的 1Gbps NIC 更容易处理。
我绝对不会使用 iSCSI,原因是如果您希望拥有任何共享存储,即使只有两个节点看到相同的卷,您也需要一个集群文件系统 - 这些对于几个节点来说很好,但对于 200 个节点来说效果不佳 - 如果有的话 - 仅仲裁就会破坏环境。顺便说一句,这对于 FC 来说不是什么问题,因为仲裁更多地设计在 FC 中。
希望这能有所帮助,欢迎随时回来提出后续问题。哦,顺便说一句,这个问题问得好 :)
答案2
如果您想自己动手,这个问题已在之前的帖子/问题中提出过,而且看起来非常有趣...
答案3
嗯,好的,如果您对戴尔产品感兴趣,您可以询问有关戴尔 Equallogic 的信息。它是一种 SAN iSCSI 解决方案。它可以提供 4 (端口)*10Gb(我认为是 equallogic 允许的最快端口配置)带宽。
您也可以选择光纤通道解决方案..HP MSA 或 EVA...