在今天的开放计算项目峰会上,Facebook 宣布了其灵活的 NVMe JBOF(只是一堆闪存)Lightning。 Facebook 正在引入 Lightning 作为闪存构建块或闪存雪橇。 Lightning 将允许数据中心更好地跨多个应用程序扩展闪存容量,同时调整计算与存储的比率。 Facebook 正在将这个新的 JBOF 贡献给开放计算项目。
一段时间以来,Facebook 一直大力使用 Flash。 他们将其用于缓存、数据库应用程序和引导驱动器。 虽然闪存为他们提供了他们正在寻找的性能,但它也有一些缺点,例如不能有效扩展。 闪存密度大约每半年翻一番,这使得高效扩展成为一个问题。 Facebook 一直在寻找方法来最大限度地减少硬件构建块的数量,同时最大限度地增加给定应用程序可用的闪存总量。 Facebook 将分解硬件和软件组件视为提高运营效率的可能解决方案。 输入他们的 JBOF,Lightning。
Lightning 提供端到端(CPU 到 SSD)的 PCIe gen 3 连接。 为了加快上市速度、保持通用外观、在 PCIe 交换机解决方案中实现模块化并在 SSD 外形规格中实现灵活性,Facebook 正在利用现有的 Open Vault (Knox) SAS JBOD 基础架构。 Facebook 必须使用某种拓扑结构来实现新的 JBOF(如上图所示)和新的看板:
- PCIe 重定时器卡。 这个 x16 PCIe gen 3 卡安装在 Leopard 服务器中,用作 JBOF 的头节点。 通过至少 8644 米的外部 mini-SAS HD (SFF-2) 电缆重新传输 PCIe 信号是一种简单、低成本、低功耗的设计。
- PCIe 扩展板 (PEB)。 PCIe 开关、Lightning BMC 和所有开关支持电路都位于该板上。 每个 SSD 托盘安装一个 PEB,并替换 Knox 中使用的 SAS 扩展板 (SEB)。 这让我们可以为两个托盘使用一个通用的开关板,还可以让我们轻松设计新的或不同的版本(例如,使用下一代开关),而无需修改其余的基础设施。 每个 PEB 具有多达 32 条 PCIe 通道作为到头节点中重定时器的上行链路,以及 60 条 PCIe 通道到 SSD。 如果 PEB 发生故障,可以热插拔而不影响系统中的其他托盘。
- PCIe 驱动平面板 (PDPB)。 PDPB 包含 15 个 SFF-8639 (U.2) SSD 连接器和支持电路。 每个 SSD 连接器或插槽都连接到 4 个 PCIe 通道、PCIe 时钟、PCIe 重置以及来自 PEB 上的一个或多个 PCIe 开关的附加边带信号。 每个 SSD 插槽也可以分为 2 个 x2 端口,这使我们能够将每个托盘的 SSD 数量从 15 个增加到 30 个(从每个系统 30 个增加到每个系统 60 个),而无需额外的 PCIe 交换层。
其优势包括:
- Lightning 可以支持多种 SSD 外形规格,包括 2.5"、M.2 和 3.5" SSD。
- Lightning 将支持 SSD 的意外热添加和意外热移除,使现场更换像 SAS JBOD 一样简单透明。
- Lightning 将使用运行 OpenBMC 的 ASPEED AST2400 BMC 芯片。
- Lightning 将支持多种交换机配置,这使我们能够支持不同的 SSD 配置(例如,15x x4 SSD 与 30x x2 SSD)或不同的头节点到 SSD 的映射,而无需以任何方式更改硬件。
- Lightning 将能够支持多达四个头节点。 通过支持每个托盘多个头节点,我们只需更改交换机配置即可根据需要调整计算与存储比率。
虽然全 NVMe 听起来是个好主意,但在将它们实施到各地的数据中心之前,需要解决一些问题。 NMVe 不能像 SAS 驱动器那样进行热插拔或热添加。 目前PCIe热插拔比较复杂。 PCIe 没有像 SAS 那样的带内外壳和机箱管理方案,这使得管理变得棘手。 部分布局和新电路板处理保持信号完整性。 与使用外部 PCIe 电缆相反,Facebook 选择了 mini-SAS HD 电缆 (SFF-8644)。 这些电缆使用完整的 PCIe 边带信号和用于带外管理连接的 USB 连接。 而Facebook正在处理NVMe的功耗,一个2.5英寸的NVMe SSD可以使用高达25W的功率。 Lightning 将功率限制为每个插槽 14W。
Lightning 旨在成为一种灵活、可扩展的闪存解决方案。 它支持多种 SSD 外形规格和多个头节点,同时使用对其目标 IOPS/TB 有意义的功率级别。 将此解决方案添加到 OCP 应该会加强 NVMe 生态系统并加速 NVMe SSD 的采用。




Amazon