Western Digital OpenFlex Data24 性能测试
我们最近使用 WARP 基准测试工具在 Western Digital OpenFlex Data24 上对 MinIO S3 性能进行了基准测试。
Western Digital 的 OpenFlex Data24 NVMe-oF 存储平台将 NVMe 闪存的高性能扩展到共享存储。它通过高性能以太网结构提供 NVMe SSD 的低延迟共享,以提供与本地连接的 NVMe SSD 类似的性能。业界领先的连接性,使用 Western Digital RapidFlex 网络适配器,无需交换机即可连接多达六台主机。这种高密度和大容量存储阵列旨在提供高可用性和企业级可靠性。您可以在我们的参考硬件页面上了解有关 OpenFlex Data24 的更多信息,包括 MinIO 的配置和定价。

OpenFlex Data24 为每个 NVMe SSD 配置了两个命名空间,MTU 为 2200,所有六个 100 GbE 结构端口都使用一个子网。这样做是为了在单个 100 GbE 结构端口/IP 上为每台服务器提供 8 个驱动器。
我们的性能测试结果非常简单,令人震惊。
我们使用 OpenFlex Data24运行WARP S3 基准测试来测量 MinIO 的 READ/GET 和 WRITE/PUT 性能。WARP 是由 MinIO 开发和维护的开源 S3 性能基准工具。
我们在测试中测得 54.76 GB/秒的平均读取吞吐量 (GET) 和 24.69 GB/秒的平均写入吞吐量 (PUT)。
这种出色的性能是 MinIO 经常用于交付资源密集型工作负载的原因,例如高级分析、AI/ML 和其他现代云原生应用程序。这将是替代 HDFS 数据湖、在遣返数据时构建内部 S3 替代品或在 Kubernetes 上构建内部对象存储即服务以支持 DevOps 团队的绝佳硬件选择。
让我们深入细节。
建筑学
我们的测试环境包括六个 MinIO 对象存储服务器,这些服务器通过 Mellanox Sn2700 光纤交换机连接到一个 OpenFlex Data24。交换机和服务器均按照 Western Digital 无损最佳实践指南(可从 Western Digital 销售部获得)进行配置。最新版本的 MinIO (2022-02-14) 是按照标准设置程序安装和配置的,加上每台服务器的额外配置,以启用无损网络并在 MinIO 服务启动之前在启动时连接到 OpenFlex Data24 设备。
为了紧密复制真实的客户部署,我们将存储集群(MinIO 服务器和 OpenFlex Data24)与运行 WARP S3 基准测试工具的六个负载生成客户端配对,以生成 S3 流量并测量性能。每个客户端都配备了 CentOS 8.3.2011、Mellanox ConnectX-5 100 GbE 网卡、AMD Epyc 7542 CPU 和 512 GB RAM。
一切都通过 100 Gbps 以太网连接,所有网络都在物理上进行了分段,以实现最大的可用性和性能。

系统评估
6 个 MinIO 服务器节点中的每一个都配备了 CentOS 8.3.2001、Mellanox ConnectX-6 100 GbE 网卡、Intel Xeon Gold 6354 CPU 和 512GB RAM。每台服务器都配备了 8 个 NVMe 驱动器,位于 OpenFlex Data24 中。
我们运行 dperf 和 fio 来确定原始驱动器性能。dperf 结果表明每台服务器的最大读取吞吐量为 9.2 GB/秒,写入吞吐量最大为 7.4 GB/秒,而 fio 结果表明每台服务器的最大读取吞吐量为 8.56 GB/秒,写入吞吐量为 6.97 GB/秒。基于这些结果,计算得出的 6 节点 MinIO 集群配置的理论最大值对于 GET 操作是 52.2 或 51.36 GB/秒,对于 PUT 操作是 22.2 或 20.91 GB/秒。请注意,在这些计算中,原始 WRITE 吞吐量被削减以用于集群估计以考虑数据奇偶校验开销。
一个标准的 MinIO 对象存储配置设置了一个客户端和一个集群网络。客户端网络用于服务客户端和应用程序的 IO 请求。集群网络用于复制或擦除编码数据并将其分发到存储节点。对于包含 OpenFlex Data24 的此解决方案,我们需要一个额外的网络来支持 NVMe-oF 存储结构。实现性能的关键是使所有网段尽可能对称。就这一点而言,我们建议在整个解决方案中使用 100GbE 网络。
在使用 MinIO 的几乎所有情况下,网络都是瓶颈,但在这里不是,因为额外的 100 GbE 网络用于在集群中传播数据。因此,MinIO 能够充分利用可用的底层服务器和存储硬件性能。测试是在 100 Gb/秒网络上进行的,每个节点的最大可用带宽为 12.5GB/秒(100 Gbit/秒等于 12.5 Gbyte/秒,(8Gbit = 1Gbyte))。因此,六个节点的总带宽应允许高达 72.5 GB/秒(600 Gb/秒)的 GET 操作和 36.25 GB/秒(300Gb/秒)的 PUT 操作。这提供了更多证据表明理想化的基本部署配置是推荐的配置,为 MinIO 集群中的每个节点提供两倍的驱动器路径数量。
结果
我们在多种配置(对象大小在 4KiB 到 128KiB 之间)中运行 WARP,以测量最佳的 READ/GET 和 WRITE/PUT 性能。结果总结如下,令人震惊。
此测试使每台服务器的 8 个 SSD 驱动器达到最大值。单个 SSD 驱动器能够达到 1.07 GB/秒的吞吐量。为每个 MinIO 节点分配 8 个 SSD 驱动器后,我们预计每个节点的最大吞吐量为 8.6GB/秒,总吞吐量为 51.60GB/秒。
查看带宽,我们记录的 GET 流量最高为 51 GiB/秒(54.76 GB/秒),PUT 流量最高为 22 GiB/秒(23.62 GB/秒)。这些结果与估计的最大吞吐量一致。
如您所见,OpenFlex Data24 上的 MinIO 表现优于我们的估计。多么大的惊喜!
强大的组合
对象存储性能是成功的云原生应用程序开发和部署的关键要求。一个又一个的基准测试证实,MinIO 毫无疑问是地球上最快的对象存储。将我们高度可扩展和高性能的软件与 Western Digital 的密集、灵活和快速的硬件相结合,使您能够部署最快和最用户友好的对象存储环境之一。
此处报告的性能结果进一步强调了对象存储适合满足流分析、AI/ML 和数据湖分析中要求苛刻的用例。
下载完整报告OpenFlex Data24 和 MinIO 对象存储解决方案测试报告,了解更多详细信息,包括您在自己的硬件或云实例上复制这些测试的具体步骤。
如果您想详细讨论结果或询问有关基准测试环境的问题,请加入我们的slack或发送电子邮件至sales@minio.org.cn