数据中心/云端

使用 VMware vSphere 8 和 NVIDIA BlueField DPU 加速 Redis 性能

 

向现代分布式工作负载的转变,以及更高的网络速度,增加了基础设施服务的开销。为企业提供动力的应用程序可用的 CPU 周期较少。部署数据处理器( DPU )来卸载和加速这些基础设施服务可以提供更快的性能、更低的 CPU 利用率和更好的能源效率。

许多现代工作负载是分布式的,这意味着它们不再只适用于一台服务器。相反,它们在多个服务器上同时运行,以实现更大的可扩展性和可用性。此类工作负载包括网络和电子商务应用程序,如 NoSQL 数据库、分析、人工智能和 Redis 等关键价值商店。

许多公司在 vSphere 企业工作负载平台上运行这些分布式工作负载。随着应用程序的不同部分在虚拟机和主机之间进行通信, vSphere 必须投入越来越多的 CPU 功率来管理数据移动和网络等基础架构工作负载。

在 CPU 和 DPU 上运行网络和安全基础设施服务,为业务应用程序释放了 CPU Core ,还大大减少了 CPU 缓存污染和上下文切换等问题,从而形成了一个高效的系统。

vSphere 软件

vSphere on DPUs(前身为 Project Monterey )与vSphere 8。与 NVIDIA BlueField DPU 一起,它为应用程序工作负载流量提供了通过虚拟机监控程序快速联网的能力。在直通模式下运行 BlueField DPU 可以将网络处理卸载并隔离到 DPU 。这将显著提高应用程序的性能。

Side-by-side diagrams show vSphere DSE architecture compared to a traditional software-defined data center.
图 1 。 vSphere 分布式服务引擎体系结构

为了测试这一理论, NVIDIA 和 VMware 联合展示了在 DPU 上运行的 vSphere 8 如何提高可扩展性、效率和性能。

Redis 键值存储数据库

由于 Redis 作为多模型 NoSQL 数据库服务器和缓存引擎的受欢迎程度,两家公司的工程专家都选择它在 NVIDIA 实验室中用 BlueField DPU 在 vSphere 8 上测试 Redis 。

Redis 代表远程字典服务器,是一个快速、开源、内存中的键值数据存储。 Redis 超越了其他 NoSQL 数据库,提供了现代应用程序所需的高级功能,包括内置复制的各种数据结构,通过 Redis Sentinel 提供高可用性的能力,以及 Redis Cluster 的自动分区。

测试的指标包括以下内容:

  • Redis 每秒事务数( TPS )
  • 平均应用程序延迟
  • 网络吞吐量
  • 服务器 CPU 用于网络的利用率
  • 能源效率

Redis 基准

测试包括运行多个工作负载,网络设置使用 Geneve 覆盖网络VMware NSX以及 NSX 分布式防火墙。测试比较了三种网络选项:

  • 增强型数据路径( EDP )标准,带有常规 NIC ,无 DPU 卸载
  • 带有部分 DPU 卸载的 EDP 标准(默认模式)
  • EDP 标准,带完全 DPU 卸载和加速
Architecture diagram showing Redis testing performed on three physical hosts, each running vSphere.
图 2 :用于在 vSphere 上测试 Redis 的服务器和网络设置

DPU 卸载并隔离网络处理,从而产生使用 DPU 上的加速器和缓存的网络处理。这释放了主机上用于应用程序逻辑的缓存,从而显著提高了吞吐量和延迟方面的应用程序性能。有两种使用 DPU 的方法:

  • 加速模式:可以通过实现类似 SR IOV 的高网络性能来实现最佳效果,而不会失去 vSphere 所支持的工作负载移动服务。
  • 默认模式:为网络处理提供基于 DPU 的卸载和加速,但也会在主机上产生一些 CPU 开销。它释放的内核数量不如 UPTv2 模式那么多。

基准结果

为白皮书进行的测试在 NSX 上使用了网络加速,使用了 L4 分布式防火墙的覆盖网络。该结果在 80 个 Redis 实例中使用完全 DPU 加速( UPTv2 的 EDP 标准)实现了近 20M 的 TPS 。

我们还使用默认的 DPU 卸载模式实现了其中的很大一部分( 17 . 74M TPS )。使用标准的 ConnectX-5 NIC ,在没有任何 DPU 卸载或加速的情况下,我们在仅运行 30 个 Redis 实例的情况下达到了 1275M TPS 左右的峰值。

The DPU nearly doubles the capable transitions on the same host.
图 3 。 DPU 卸载并加速以增加 TPS

我们还观察到,与使用常规 NIC 相比,使用 DPU 卸载和 DPU 完全加速时的应用程序延迟显著降低。使用 DPU 卸载和加速 VMware ESXi 网络,与使用常规 NIC 相比,延迟更低。随着 Redis 实例数量的增加, DPU 的延迟优势更加显著。

Bar chart shows that the latency advantage of the DPU is more significant as the number of Redis instances increase.
图 4 。与使用常规 NIC 相比,将 DPU 与 VMware ESXi 一起使用可降低延迟

从吞吐量和带宽来看,我们发现使用 DPU 卸载时的吞吐量高于标准 NIC 。 DPU 全加速显示最高吞吐量。由于 CPU 核心无法处理任何额外的网络任务,标准 NIC 吞吐量稳定在 30 个实例。随着 Redis 实例数量的增加, DPU 卸载和全加速模式继续提高吞吐量

对于 10-30 个实例, DPU 的功耗略低,对于 40-80 个实例,功耗略高。然而,服务器使用 DPU 完成了相当多的工作,从而提高了电源效率。

使用 DPU 卸载仍然消耗了一些 x86 处理周期,但程度要小得多,因为部分网络处理从 CPU 转移到了 DPU 。这带来了更好的能源效率。当使用覆盖网络和 EDP 标准时,与常规 NIC 相比,完全 DPU 加速每百万 TPS 使用的瓦数减少了 6%-40% 。

通过减少 ESXi 网络所需的 CPU 内核数量, DPU 释放这些内核以运行额外的虚拟机和应用程序。这使得更多的工作负载能够在相同数量的服务器上运行。您还可以使用更少的服务器来支持在没有 DPU 卸载的情况下运行的相同工作负载。

价值主张

基准测试结果确定,启用 BlueField DPU 的主机可以实现比未启用 DPU 主机更好的事务延迟,同时使用的 CPU 内核也减少了 20% 。启用 DPU 的主机的吞吐量提高了 30% 以上,事务延迟减少了 25% 以上。

DPU 全加速还提高了能源效率,每次交易的瓦特数减少了 35% ,每瓦特的性能提高了 50% 。该基准测试证明,在 BlueField DPU 上运行 vSphere 分布式服务引擎可以使数据中心将 Redis 服务器的数量减少 14-18% 。

最大限度地提高投资回报率

由于在 DPU 加速( UPTv2 )模式下保存了 CPU 内核,而在 Z1KO 卸载(默认)模式下则保存了较少的 CPU cores ,因此您需要减少 4-15 个 CPU ‘内核来支持相同的 Redis 工作负载。这使您能够将服务器数量减少 14 – 18% ,假设每个 ESX 主机的工作负载为 30 – 80 个 Redis 实例。这使得购买更少的服务器和支付更少的数据中心基础设施可以节省资本支出。它还节省了 OpEx ,因为服务器数量的减少消耗了更少的电力以及相关的配电和冷却电力。

对于最初需要 10K 服务器的 Redis on vSphere 部署,一个简单的 TCO 分析,其中 BlueField 完全加速模式将所需服务器数量减少 14-18% ,将在 3 年内节省 830 万至 1060 万美元。其中大约一半用于节省资本支出(减少服务器),一半用于节省运营支出(减少电力消耗以及相关的冷却和配电成本降低)。

如果您只部署几个 ESX 主机, Redis 服务器仍然可以从提高的应用程序性能中获益。随着应用程序需求的增长,加速的服务器可能会推迟购买或升级服务器,从而避免未来的成本。

这些指定的结果和成本节约是针对所使用的 25G DPU 的,因为我们受到此处测试的最大规模下加速模式下 DPU 的线路速率的限制。

使用 VMware VSphere 8 和 NVIDIA BlueField DPU 加速 Redis 性能

这个Accelerating Redis performance using VMware vSphere 8 and NVIDIA BlueField DPU白皮书记录了测试和结果。本文揭示了将 vSphere 与 BlueField DPU 的硬件加速网络卸载一起使用,可以显著提高应用程序性能,提供更高的吞吐量,并实现更快的响应时间。

它还展示了卸载到 DPU 可以释放服务器 CPU 内核来运行应用程序并提高操作效率。 DPU 卸载和加速还降低了每个应用程序事务所使用的功率,从而实现了更高效的数据中心,并通过降低功耗显著节省了成本。

Bar chart shows that lower consumption stays consistent as more workloads can be achieved.
图 5 。主机服务器的改进效率

通过 NVIDIA LaunchPad 在 BlueField DPU 上体验 VMware

为了体验 BlueField DPU 的优势, NVIDIA 提供LaunchPad,一个非常适合展示优势的演示区。您可以申请测试在 vSphere 和 BlueField 上运行的各种应用程序和库,而无需在数据中心购买和部署硬件。

LaunchPad 包括几个精心策划的实验室,可以指导您完成在多个用例中运行的部署和性能基准测试,包括带有 BlueField DPU 的 vSphere 上的 Redis 。

本实验室指导您逐步完成在 vSphere 8 环境中安装、配置和部署 Redis 的过程。它使您能够比较有 BlueField DPU 加速和没有 BlueField 加速的 Redis 测试,以验证性能提升。

LaunchPad 为开发人员、设计师和 IT 专业人员提供了快速访问所需硬件和工具的机会,以熟悉新技术并确定他们如何从 DPU 加速中受益。企业团队可以使用 LaunchPad 加快创建和部署现代数据密集型应用程序的速度。在 LaunchPad 上进行快速测试和原型制作后,可以为其生产工作流部署相同的完整堆栈。

总结

DPU 已经广泛部署在超大型机中,以解决基础设施功能,并为创收工作负载腾出 CPU 周期。每个安装了 vSphere 分布式服务引擎和 BlueField DPU 的节点都可以使用 DPU 卸载来提高性能。它为企业提供了一个有效的解决方案,以解决新工作负载给服务器带来的压力。

根据 NVIDIA 与 VMware 和 NVIDIA LaunchPad 实验室的测试结果,在 VMware 服务器中添加 DPU 可以降低 TCO ,同时改善整体工作负载处理。将基础设施进程卸载到 DPU ,通过在 CPU 和基础设施之间添加隔离来提高整体安全性。

有关更多信息,请参阅以下资源:

加入我们Hybrid Cloud Architecture with VMware vSphere on NVIDIA BlueField DPU网络研讨会(点播)。

 

Tags