在 IOPS 方面,我正在为我们的 1RU Dell R320 服务器寻找更高性能的构建。
现在我相当确定:
- 4 个 600 GB 3.5" 15K RPM SAS
- RAID 1+0 阵列
这应该会提供良好的性能,但如果可能的话,我还想在组合中添加一个 SSD 缓存,但我不确定是否有足够的空间?
根据技术规格,总共只有 4 个 3.5" 驱动器托架可用。
有没有办法在 4x3.5" 驱动器旁边安装至少一个 SSD 驱动器?我希望有一个特殊的位置来放置高速缓存 SSD 驱动器(尽管从内存中,我怀疑会有空间)。或者我是否认为缓存驱动器只是像任何其他驱动器一样“正常”插入的驱动器,但在 PERC 控制器中被指定为 CacheCade 驱动器?
有 4x600GB RAID 10 阵列和 SSD 缓存驱动器的任何选项吗?
根据技术规格(最多 8x2.5" 驱动器),也许我需要使用 2.5" SAS 驱动器,另外留出 4 个托架,为 SSD 缓存驱动器留出足够的空间。
有没有人以某种方式使用 3.5" 驱动器实现了这一点?
编辑:有关要求的更多信息
给出此硬件的用途/要求的图片:
我们目前有几个“内部”虚拟机,在 VMWare ESXi 5.x 主机上运行。但我们目前只有少数主机,这是一个基本设置。
我们最近开始推出 Dell R320s 作为共享 ESXi 主机的标准硬件。我更愿意继续使用 R320,以尽量保持我们的硬件(因此我们需要备件、升级、监控支持等)尽可能标准化。必须保留一组不同的驱动器作为备用,比必须将整个备用机箱保留在我们已有的机箱之上要好。
这些虚拟机主要负责我们的内部工具(例如监控、呼叫计费、内联网网站)。或共享基础设施;如:DNS、SMTP Relay/Filtering、一小部分共享网站;共享 VOIP PBX。
根据需要,这些角色中的每一个都被分成相对较小的 VM。几乎所有这些都是Linux机器。其中一些确实有数据库负载,但我认为它们非常小(我可以在适当的情况下将单个 MySQL 实例放在每个 VM 上进行隔离)。
一般来说,性能很好。具有讽刺意味的是,这种新硬件的主要催化剂是 SMTP 中继。每当我们收到来自客户的大量邮件时,都会导致我们的过滤器大量积压。我已经确认这是由于磁盘 IO 造成的。
考虑到在该主机上运行的其他 VM 的性质,尽管存在明显的磁盘 IO 争用,但除了邮件积压之外没有发现任何实际影响——VOIP 主要都在内存中;所有内部网站的流量都很低,页面加载仍然是合理的;我们没有收到任何关于此特定主机上面向客户的虚拟机问题的报告。
该硬件的目标
可耻的是,就我想要实现的 IOPS 类型而言,我真的没有任何可靠的数字。考虑到我想放在那里的虚拟机的不同性质,我觉得很难测试——这并不是说我有一个单一的应用程序可以针对一个严格的目标进行基准测试。
我想我最好的选择是使用最严重的违规者(例如,由数据库支持的网站和 SMTP 中继)进行测试并模拟一些高负载。这可能是我下周要做的事情。
坦率地说,我的动机很简单,因为我知道磁盘 IO 几乎总是一个瓶颈,所以对于我们的基础架构,我更喜欢这样,我们拥有尽可能多的 IO,因为我们可以合理地负担得起。
在任何情况下,我都会尝试让您大致了解目标:
为了在大客户发起邮件发送期间合理地承受性能损失(他们不应该这样做!)。当然,我理解这变成了“一根绳子有多长?” 因为您无法真正预测任何给定的邮件输出可能有多大。但基本上,我知道这是一个磁盘 IO 问题,所以我试图在这组特定的主机上增加一些额外的 IOPS,以便能够处理突然爆发的邮件。
我的想法是,随着大量小型电子邮件的爆发,这通常主要是随机 IO,这似乎最适合 SSD。尽管我确信在可预见的未来没有他们我们可以做得很好。
**如前所述,以上内容确实是促成这一点的催化剂。我意识到我可以把 SMTP 中继放到他们自己的物理硬件上,基本上就可以完成了。但我的目标是一个更通用的解决方案,以便我们所有的内部虚拟机在需要时都可以使用 IO)。
将一组内部虚拟机与当前位于同一主机上的一些面向客户的虚拟机隔离开来。避免上述客户虚拟机上的资源峰值导致性能问题。
我的计划是至少有两台主机(目前)具有相同的虚拟机,并为每对配置主动/被动冗余(不会使用 vCenter,而是使用特定于应用程序的故障转移)。
将来我可能会在这台主机上部署更多的虚拟机。我期待的一件事是一对共享的 MySQL 和 MS SQL VM。如果我这样做,我肯定会关注 SSD,这样我们就可以拥有一对冗余和高性能的中央数据库服务器。但这还很遥远,在这种情况下,我可能会为每个节点配备专用硬件。
Dell PowerEdge R320是一款低端 1U 机架式服务器。该机箱内的存储选项是 8 x 2.5" 小型磁盘或 4 x 3.5" 大型驱动器。由于该服务器的价格点,它通常被指定为 4 x 3.5" 磁盘组合......
旁注:最近在服务器存储中发生的一件事是内部磁盘角色的反转。
因此,上述组合会影响服务器设计(反之亦然)。Dell R320 通常配置更大的 3.5" 驱动器,因为该平台通常不用于更多 I/O 密集型应用程序或需要更多可扩展性的地方。高端戴尔(和 HP ProLiants)通常配置小型-因子 2.5" 磁盘。这是为了支持机箱内的更多 I/O 功能。
对于您的情况:
对于 CacheCade 和您的 IOPS 目标,您是否衡量过您现有的 IOPS 需求?您了解您的应用程序 I/O 要求和读/写模式吗?理想情况下,您的设计应该能够支持旋转磁盘上的非缓存/可缓存工作负载。因此,如果您需要 6 个磁盘来获得所需的 IOPS,则应该指定 6 个磁盘。如果4个磁盘可以支持它,那么你很好。但由于这种方法需要使用 2.5" 磁盘,因此您可以更灵活地调整应用程序。
另请参阅:LSI CacheCade SSD 存储分层的效果如何?
如果您想使用 3.5" 磁盘,我不相信您想要的空间 - 您是否考虑过使用 2.5" 磁盘?如果你这样做了,你可以很容易地将你想要的东西放入机器中,通常 2.5" 10krpm 磁盘的性能与 3.5" 15krpm 磁盘大致相当 - 特别是当你希望前面有一个很好的 SSD 缓存时。我使用 HP 套件(包括他们的 SmartCache,这是同一件事)使用此解决方案,我对它们非常满意。
我会做的其他事情:
使用六个磁盘,因此 RAID1 中始终有三个磁盘。
这样做的好处是,当一个磁盘发生故障时,您不会立即失去冗余(因此您打赌另一个镜像没有单个损坏的扇区),并且,如果您的控制器支持它,您可以在两个磁盘上运行定期一致性检查,然后保持第三个正常运行,这样 I/O 速率就不会下降太多。
如果是数据库负载,请为索引使用专用磁盘或 SSD。
这是迄今为止您可以获得的最大速度提升——前提是您有一个知道如何使用它的 DBA。
如前所述,正确的 SSD 缓存设置会导致使用 8x2,5" 磁盘背板。您的帖子暗示戴尔 R320 服务器已在使用中。如果是这样:
您准备好升级 R320 背板了吗?这里真的需要SSD缓存吗?
SSD 缓存主要用于随机读/写性能。
借助 SAS 15K 上的 RAID10 和由硬件控制器驱动的 NVRAM 回写缓存,您已经拥有良好的随机写入性能。即使 CacheCade 可以利用完美的 SSD iops,如何保护数据免受 SSD 故障的影响?
对于随机读取,您可以考虑只升级内存(R320 支持高达 192GB)。
或者另一种解决方案:只需在 SSD 上使用 RAID10。