Ceph 存储可用 space 计算

Ceph storage usable space calculation

有人能帮我解决下面的问题吗?

我如何计算总的可用 ceph 存储空间 space。 假设我有 3 个节点,每个节点有 6 个 1TB 磁盘的 OSD。那是总共 18TB 存储空间 (3* 6TB)。所有这些 18TB space 是可用的还是一些 space 将用于冗余?

Ceph 有两个重要的值:满率和接近满率。 full 的默认值为 95%,nearfull 为 85%。 (http://docs.ceph.com/docs/jewel/rados/configuration/mon-config-ref/)

如果任何 OSD 达到完整比率,它将停止接受新的写入请求(阅读:你的集群卡住了)。您可以提高此值,但要小心,因为如果 OSD 因为没有 space 剩余(在 FS 级别)而停止,您可能会遇到数据丢失。

这意味着,您无法从集群中获得超过满比率的值,对于正常操作,明智的做法是不要达到接近满值。

对于您的情况,冗余 3,您有 6*3 Tb 的原始数据 space,这转化为 6 TB 的受保护数据 space,在乘以 0.85 后,您通常有 5.1Tb 的数据可用 space.

另外两个不请自来的建议:使用至少 4 个节点(3 个是最低限度的工作,如果一个节点出现故障,你就有麻烦了),并使用较低的值接近满。我建议它在 0.7 左右。在这种情况下,您将拥有(4 个节点,6 * 1Tb OSD,/3,*.7)5.6 Tb 的可用空间 space.