Supermicro 云数据中心基准测试
我们刚刚完成了对来自我们 SuperMicro 朋友的一些新潮机箱的广泛测试。在 Supermicro 圣何塞实验室,在 Muru Ramanathan、Ravi Chintala 和 Siva Yarramaneni 的帮助下,我们非常享受 Cloud DC 的性能测试。
我们非常喜欢 Supermicro 的工作。他们在性能、可靠性、精确的工艺和订购/配置过程中的卓越灵活性之间取得了平衡。虽然我们在这里推荐了机箱,但事实是,我们本可以轻松地列出相当于产品目录的选项。
我们在 Supermicro 的 Cloud DC (SYS-620C-TN12R) 机箱上进行了测试。这些 2U 系统是超融合存储的绝佳平台,最多可配备 12 个 3.5 英寸热插拔 NVMe/SATA/SAS 驱动器托架,最多 16 个 DIMM 插槽,最多可容纳 6TB DDR4-3200 内存,支持英特尔®傲腾™持久内存,双路第三代英特尔®至强®可扩展处理器,最高 TDP 为 270W,或单路第三代 AMD EPYC™ 处理器,最高 TDP 为 280W,以及双 AIOM(Superset OCP 3.0 网卡),网络速度最高可达 200 Gbps。
测试产生了出色的结果。我们运行了一个由四个 Cloud DC 服务器组成的集群。与 MinIO 经常出现的情况一样,网络成为了瓶颈——即使它是 100 Gbps。
我们运行了WARP S3 基准测试,以衡量 MinIO 在 Supermicro Cloud DC 集群上的读取/获取和写入/放置性能。WARP 是一款由 MinIO 开发和维护的开源 S3 性能基准测试工具。
在我们的测试中,我们看到了 42.57 GB/s 的平均读取(获取)吞吐量和 24.69 GB/s 的平均写入(放置)吞吐量。
这是一流的性能,也是 MinIO 用于交付资源密集型工作负载(例如高级分析、AI/ML 和其他现代云原生应用程序)的原因。对于运行 VSAN Direct 的 VMware 数据持久性平台、替换 HDFS 数据湖、在 Red Hat Openshift 上构建内部对象存储即服务以支持 DevOps 团队或提高 Splunk SmartStore 性能,这将是一个绝佳的硬件选择。
让我们深入了解细节。
架构
我们在四个 Supermicro Cloud DC 服务器上安装并运行了 MinIO,每个服务器都配备了双 CPU、512 GB 内存和十个 3.84TB NVMe 驱动器。然后,我们在四个工作站上运行 WARP。所有这些都通过 100 Gbps 以太网连接。

测量单个驱动器性能
为了充分描述存储性能,我们首先评估了各个驱动器的性能。我们在几乎所有基准测试中都这样做,因为经验告诉我们,存在差异。
为了实现这一点,我们运行了dd 来执行从一个文件到另一个文件的逐位数据复制,以便我们可以测量读写性能。dd 转换和复制文件,输出有关数据传输的统计信息。
为了评估写入性能,我们运行了
dd if=/dev/zero of=/mnt/drive/test bs=16M count=10240 oflag=direct conv=fdatasync
为了评估读取性能,我们运行了
dd of=/dev/null if=/mnt/drive/test bs=16M count=10240 iflag=direct
dd 实用程序报告了 NVMe 驱动器的平均 3.3GB/秒写入和 4.6GB/秒读取性能。符合预期。
测量 JBOD 性能
下一步是测量 JBOD 性能。我们使用IOzone 完成了此操作。IOzone 是一种文件系统基准测试工具,它生成并测量文件系统的读取和写入等操作的性能。以下是使用 160 个并行线程、4MB 块大小和 O_DIRECT 选项运行的 IOzone 命令示例。
iozone -s 1g -r 4m -i 0 -i 1 -i 2 -I -t 160 -b 'hostname'-iozone.out -F /mnt/drive1/tmpfile.{1..16} /mnt/drive2/tmpfile.{1..16} /mnt/drive3/tmpfile.{1..16} /mnt/drive4/tmpfile.{1..16} /mnt/drive5/tmpfile.{1..16} /mnt/drive5/tmpfile.{1..16} /mnt/drive6/tmpfile.{1..16} /mnt/drive7/tmpfile.{1..16} /mnt/drive8/tmpfile.{1..16} /mnt/drive9/tmpfile.{1..16} /mnt/drive10/tmpfile.{1..16}
我们在单个节点上看到了 56.1 GB/秒的读取吞吐量和 30.2 GB/秒的写入吞吐量。符合硬件规格。
网络性能
这些节点上的网络硬件允许最大 100 Gbit/秒。100 Gbit/秒相当于 12.5 Gbyte/秒(1 Gbyte = 8 Gbit)。
因此,每个节点可以预期的最大吞吐量为 12.5 Gbyte/秒。
正在测试四个节点,这使得我们的集群可能表现出的最大吞吐量为 50 GB/秒。但是,没有 TCP/IP 交换式以太网网络能够达到 100% 的效率,因此我们预计在测试期间将看到 40 GB/秒到 45 GB/秒之间的吞吐量。
结果
我们以多种配置运行 WARP,包括启用和禁用加密和 TLS,以测量读取/获取和写入/放置性能。总结如下面的结果令人印象深刻。
在测试期间,网络几乎完全被利用。正如预期的那样,100 Gbps 网络被证明是瓶颈。在此测试中,我们在单独的网络上运行客户端和节点间流量。MinIO 充分利用了可用的底层硬件——瓶颈几乎总是网络。当 MinIO 在更高带宽的网络上运行时,性能会提高。
特别值得注意的是加密对结果的影响有多小。这对我们的团队来说是一个非常自豪的时刻,我们在这篇 HackerNews 热门文章中写过关于无摩擦加密的内容。对于敏锐的观察者,您可能会注意到在平均写入吞吐量的情况下性能实际上有所提高。WARP 结果有时包含零星的差异,并且在测试运行之间变化微不足道——但这些数字讲述了一个强大的故事。
重要的是,您不会看到在启用加密时写入/放置吞吐量下降三分之一或二分之一,就像您在其他对象存储解决方案中看到的那样。启用加密和 TLS 后,读取的整体速度保持不变,而与最大可用网络带宽相比,写入速度仍然非常高。**因此,我们强烈建议为所有外部公开的产品设置启用 TLS 和加密。 **
Supermicro 速度超快
性能是对象存储实施成功的重要要求。MinIO 是全球速度最快的对象存储。将我们高度可扩展且高性能的软件与 Supermicro 高密度、灵活且高性能的硬件相结合,您将获得最快、最易于操作的对象存储环境之一。
这样的性能结果清楚地表明,对象存储的速度足以支持流分析、机器学习和数据湖分析等苛刻的用例。
完整报告包含了我们Supermicro Cloud DC 基准测试的详细信息,包括您在自己的硬件或云实例上复制这些测试的具体步骤。
如果您想详细讨论结果或询问有关环境基准测试的问题,请加入我们的Slack 或发送电子邮件至hello@min.io。