Supermicro Cloud DC 基准测试
我们刚刚对 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 内存,支持 Intel® Optane™ 持久内存,双第 3 代 Intel® Xeon® 可扩展处理器,最高 270W TDP 或单个第 3 代 AMD EPYC™ 处理器,最高 280W TDP,以及双 AIOM(Superset OCP 3.0 NIC),用于最高 200 Gbps 网络。
测试产生了出色的结果。我们运行了一个由四个 Cloud DC 服务器组成的集群。与 MinIO 的情况一样,网络被证明是瓶颈——即使它是 100 Gbps。
我们运行了WARP S3 基准测试来测量 MinIO 在 Supermicro Cloud DC 集群上的 READ/GET 和 WRITE/PUT 性能。WARP 是由 MinIO 开发和维护的开源 S3 性能基准工具。
在我们的测试中,我们看到了 42.57 GB/s 的平均读取 (GET) 吞吐量和 24.69 GB/s 的平均写入 (PUT) 吞吐量。
这是一流的性能,也是 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/sec 的速度。100 Gbit/sec 等于 12.5 Gbyte/sec(1 Gbyte = 8 Gbit)。
因此,每个节点的预期最大吞吐量为 12.5 GB/秒。
有四个节点正在测试,使我们的集群可能展示的最大吞吐量达到 50 GB/秒。然而,没有任何 TCP/IP 交换以太网网络是 100% 高效的,因此我们预计在测试期间会看到 40 GB/秒到 45 GB/秒之间的速度。
结果
我们以多种配置运行 WARP,使用和不使用加密和 TLS,以测量 READ/GET 和 WRITE/PUT 性能。结果总结如下,令人印象深刻。
在测试期间几乎完全使用了网络。正如预期的那样,100 Gbps 网络被证明是瓶颈。在此测试中,我们在不同的网络上运行客户端和节点间流量。MinIO 充分利用可用的底层硬件——瓶颈几乎总是网络。当 MinIO 在更高带宽的网络上运行时,性能会提高。
特别值得注意的是加密对结果的影响是多么小。这是我们团队非常自豪的一点,我们在这个 HackerNews 的最爱中写了关于无摩擦加密的文章。对于敏锐的观察者,您可能会注意到在 Avg 的情况下性能实际上有所提高。写入吞吐量。WARP 结果有时包含零星的差异,并且在测试运行之间变化不大 - 但这些数字说明了一个强有力的故事。
重要的是,当启用加密时,您不会像使用其他对象存储解决方案那样看到 WRITE/PUT 吞吐量减少三分之一或二分之一。在启用加密和 TLS 的情况下,读取的整体速度没有变化,而与最大可用网络带宽相比,写入速度仍然非常高。因此,我们强烈建议为所有外部暴露的产品设置启用 TLS 和加密。
Supermicro 超级快
性能是成功实施对象存储的关键要求。MinIO 是地球上最快的对象存储。将我们高度可扩展和高性能的软件与 Supermicro 的高密度、灵活和高性能硬件相结合,您将获得最快和操作最友好的对象存储环境之一。
像这样的性能结果清楚地表明,对象存储的速度足以支持流分析、机器学习和数据湖分析中要求苛刻的用例。
完整报告包含我们的Supermicro Cloud DC 基准测试的详细信息,包括您在自己的硬件或云实例上复制这些测试的具体步骤。
如果您想详细讨论结果或询问有关基准测试环境的问题,请加入我们的slack或发送电子邮件至sales@minio.org.cn。