IT 中充斥着各种有前景的想法,而其中有些从未实现。随着过去五年人们对可组合基础设施的兴趣趋于平缓,有的人可能会将其归类为失败的想法,该技术是将硬件资源从其主机中分离。但我们还没有准备放弃这个想法,尽管可用的少量使用数据并不乐观。
Statista对IT主管和经理的一项调查发现,只有11%的受访者拥有可组合系统的生产部署,而52%的大多数人对该技术不感兴趣。事实上,在调查的10项技术中,可组合基础设施的关注度最低。
尽管如此,在过去几年中还是出现了一些重要的产品开发。这些发展为可组合传播者带来希望,让他们相信可组合基础设施可能应用在企业中,特别是在为高性能计算 (HPC) 和 AI 工作负载构建大型集群的企业中。
硬件可组合性:背景和技术
可组合硬件的想法可以追溯到大约十年前,当时Calxeda 构建了一个具有集成 10 Gb 以太网结构的横向扩展、模块化 Arm 服务器。当时这个速度很快,并且连接了机箱中的相邻节点。Calxeda尽管不再存在,但其知识产权现在由Silver Lining Systems使用,它最初被惠普用于其Project Moonshot服务器,可以说是构建可组合软硬件系统的第一次尝试。然而,惠普随后放弃了它,转而使用英特尔的新Atom处理器。Moonshot已发展成为HPE的Synergy产品线。
当另一家初创公司Liqid于2015年推出基于PCIe结构的可组合硬件的新方法时,这一概念得到进一步发展。Liqid系统的核心部件包括基于Broadcom组件的PCIe交换机。软件管理系统可帮助配置和连接裸机服务器,这些服务器由CPU、内存、网络接口卡 (NIC)、存储、GPU和现场可编程门阵列 (FPGA) 资源组成,这些资源集中在连接的服务器和扩展机箱中。
为什么选择 PCIe?
Liqid 最初使用内部设计的交换机,围绕 PLX 的芯片构建。后来它采用了Broadcom的 PEX8700 和 PEX9700 PCIe Gen 3.0 交换机芯片。在2020 年年中,Liqid和Broadcom合作开发了 PCIe Gen 4.0 参考设计。此次合作使用 Broadcom 的 PEX88000 交换机,其吞吐量是其 Gen 3.0 部分的两倍,每个端口的带宽为每秒 256 千兆传输。这些交换机提供 24 或 48 端口配置。每个端口默认为四个 PCIe 通道,可配置为 x8 或 x16,端口到端口延迟为 100 纳秒。
由于 PCIe 普遍存在于现代处理器中、高带宽(每通道 64 Gbps)、低延迟、无损传输和直接内存访问 (DMA) 支持,PCIe 成为服务器集群和可组合基础设施的理想互连。其非透明桥接功能使主机处理器能够将交换机端口视为 PCIe 端点。第 4.0 代交换机(例如 Broadcom PEX88000)嵌入了 Arm 处理器,用于配置、管理和处理热插拔事件。它们通过 I/O 共享和 DMA 等功能提供非阻塞、线速性能。
PCIe 的缺点包括端口成本比以太网更高,以及对电缆长度的严格限制,将结构限制在服务器机架内。因此,以太网和 InfiniBand 已成为可组合基础设施的替代方案。例如,Liqid 宣布多结构支持所有资源类型的可组合性:CPU、内存、GPU、NIC、FPGA 和存储,跨所有主要结构类型,包括 PCIe Gen 3.0、Gen 4.0、以太网和 InfiniBand。而相比之下,HPE 在其 Synergy 可组合产品中仅支持以太网,以及用于存储的光纤通道 (FC)。
可组合架构的应用
可组合基础设施最初被提议作为在 AI 环境中经济高效地共享昂贵 GPU 的方式,特别是对于计算量更密集的模型训练。然而,组合式对于 HPC 集群和裸机云基础设施也是可行的,尤其是对于较小的利基提供商。它还适用于多租户边缘计算集群,例如,在 5G 基站或云“微”区域。多节点可组合架构(使用 PCIe 到 NVMe、NVMe-oF、FC 或 InfiniBand )是分布式横向扩展存储系统的流行选择,其中 NVMe 磁盘池与服务器集群共享。
尽管与 PCIe 架构无关,但 PCIe NIC、GPU 和 FPGA 卡越来越多地在多个 VM 之间共享和虚拟分割,这些VM使用 Nvidia 虚拟 GPU、FPGA 共享、SmartNIC 和数据处理单元 (DPU) 等技术。例如,VMware 最近推出了 Project Monterey 来扩展一些功能VMware Cloud Foundation 到 DPU,例如 Nvidia 的 BlueField-2。该软件使DPU的多个Arm内核能够托管ESXi实例,从主机CPU卸载网络和存储服务。
从长远来看,VMware Cloud首席技术官Kit Colbert 认为Monterey会不断发展以支持多个主机和其他硬件加速器。
他在一篇博客文章中说:“该项目使我们能够重新思考集群架构,并使集群更具动态性、更受 API 驱动,并针对应用程序需求进行更优化。我们通过硬件可组合性来实现这一点。”
跨服务器共享和动态分配硬件资源的选项正在成倍增加。它们提供对硬件加速器的更广泛访问,以及通过更高的资源利用率降低成本。