这是一个很难回答的问题,因为它取决于许多假设。但让我们假设我们有 100 个工作站需要连接到网络附加存储设备。如果每个工作站都有 1Gb/秒的连接,NAS 可以为这些工作站提供的最大吞吐量是多少?我正在尝试为 100 个工作站和一些科学设备(例如,相当于 20 个工作站)安装 NAS。供应商说,“你告诉我你需要什么。”我需要将 100 个工作站连接到某个系统,该系统将为工作站提供主目录,一些服务器将运行虚拟机,用于许可证和 Web 服务器等应用程序——但让我们关注 NAS 设备在 1 Gb/秒连接的情况下可能提供什么。如果 NAS 提供 20gb/秒,那么我想最多 20 个工作站在任何时候都会以最大速率传输文件。
相关问题是,在科学计算环境中,工作站的典型文件 I/O 要求是什么?
答案1
您需要进行一些数据收集。这基本上可以采用我能想到的 4 种形式。它们的组合可能是最好的,但我将逐一列出我认为从最差到最好的形式。
- 询问供应商(或一组供应商)并根据他们告诉你的内容进行判断。他们应该都有计算器来猜测这种负载。他们甚至可能有人可以借给你一个 SAN 来试用(但你可能需要向他们花费大量资金才能做到这一点)。这类似于在 Server Fault 上询问,但供应商应该拥有比我们几个用户所得到的样本集更重要的样本集。
- 信封背面:弄清楚人们在您的环境中使用主目录中的文件执行哪些类型的任务。他们是否加载大型数据集、电子表格,实际上是否加载存储在其主目录中的程序?在此基础上,为典型的计算机提出假设的配置文件(他们加载的数据量,假设它是突发的,并将其乘以计算机数量,并使用类似泊松分布的分布在工作日中)。
- 全天从几个人的工作站收集一些样本数据。这取决于操作系统,但您可以
sar
在 Linux 环境中使用工具,在 Windows 环境中使用 Perfmon。然后获取此配置文件并使用与上述类似的方法进行推断。 - 收集所有工作站的数据。这当然是最好的。
答案2
存储性能并不总是与吞吐量有关......
所以对于现实来说...
今天,我可能会为您的客户端组构建一个 NAS 解决方案,该解决方案使用双绑定 10GbE 连接到一对交叉堆叠交换机(或机箱交换机)。您没有那么多选择……
NAS --- 2 x 10GbE ---> switch --- 1GbE ---> computing workstations
这是基于以下因素:
- NAS 领域通常有哪些可用资源(在商业解决方案中,通常不会看到大于 1 x 10GbE 的资源)
- 大多数组织都能负担得起的价格(10GbE 端口在当今的交换机产品中很常见)
- 会出现一定程度的超额认购。(需要根据最坏情况进行调整)
- 您没有在工作站上运行 10GbE。
在 NAS 级别,您应该关注:
- 典型数据工作集的大小。
- 后端所需的存储 IOPS。
- 容量和增长/扩展空间。
- 分层/缓存。
- 弹性(RAID 等)
- 备份。