小型 HPC 集群的 Ceph 架构

小型 HPC 集群的 Ceph 架构

我想构建 Ceph 存储集群以供 HPC 使用。(基于 CentOS 7)目前我有企业级 SAS RAID 机箱,其中有 3 个机架,12 个 4TB 磁盘(总共 36 个)。现在它配置为默认 RAID6 设备。而且它的性能非常差。而且我无法扩展系统。例如,无法切换到 6TB 磁盘。所以我想做什么。

  1. 从 RAID6 切换到 JBOD。
  2. 将每 12 个磁盘映射到 3 个不同的控制器端口。
  3. 通过 SAS HBA 卡将 3 台服务器连接到机箱。
  4. 设置一个 ceph 池。类型:CephFS。512 pg_num。擦除编码。故障域=主机。Bluestore。
  5. 使用 IPoIB 在计算节点上挂载 CephFS 池。

主要问题围绕第 4 步。

  1. 如何选择纠删码 k+m 数?3+3 4+2 8+3 8+4 10+4?实际上我无法完全理解它将如何处理不同的故障。据我了解,我的系统需要处理 1 台主机停机 + 1-2 个 OSD 故障。3 台主机配置是否可行?如果不行,如果主机故障后 OSD 在修复过程中发生故障,会发生什么情况?如果 1 台主机停机维护(未启动修复)时 OSD 发生故障,会发生什么情况?
  2. 是否可以稍后为 Bluestore 添加 WAL/DB SSD,就像在文件存储中一样?
  3. HPC MPI 调用是否会受到同一 IB 接口和交换机上的 IPoIB 流量的影响?

总体而言,问题是,它真的有用吗?还是我遗漏了一些全局性的东西?

答案1

表现

纠删码需要大量 CPU。如果您需要性能,请使用 3 个副本。

磁盘越多,性能越好。JBOD 是最佳选择。

强烈推荐企业级 SSD。您可以稍后重新配置、添加、删除 OSD。

可用性和数据保护

节点越多,存储就越能抵御数据丢失。

对于纠删码和 3 台主机,最低要求是k=3 m=2。当主机发生故障时,您将丢失 1 个数据部分,并且需要一个奇偶校验部分来恢复。因此,您至少需要两个奇偶校验部分,以防其中一个在发生故障的主机上。

如果你有比陣容。当 1 个主机发生故障时,您希望将所有擦除部分转移到剩余的主机上。

为了提供 3 个副本的保护,建议至少使用 4 个主机。当一个主机发生故障时,您仍有空间容纳 3 个副本。

为了生产,您将需要更多的服务器。

相关内容