2.9. 考虑存储密度

Ceph 设计的另一个重要方面,包括存储密度。通常,存储集群将数据存储在至少 10 个节点中,以确保在复制、回填和恢复时提供合理的性能。如果节点出现故障,存储集群中至少有 10 个节点,则只有 10% 的数据必须移动到存活的节点。如果节点数量大大减少,则必须将更高的数据百分比移到存活的节点。此外,还需要设置 full_rationear_full_ratio 选项,以适应节点故障,以确保存储集群可以写入数据。因此,务必要考虑存储密度。更高的存储密度不一定是一个不错的想法。

与更高的存储密度相比,另一个因素是纠删代码。当使用纠删代码编写对象并将 节点 用作最低 CRUSH 故障域时,Ceph 存储群集将需要尽可能多的节点,作为数据和编码区块。例如,使用 k=8, m=3 的集群应该至少有 11 个节点,每个数据或编码区块都存储在单独的节点上。

热插拔也是重要的考虑因素。大多数现代服务器都支持驱动器热插拔。但是,一些硬件配置需要删除多个驱动器来替换驱动器。红帽建议避免此类配置,因为它们可以在交换失败的磁盘时导致超过所需数量的 Ceph OSD。