【发布时间】:2021-05-05 16:42:22
【问题描述】:
我一直在努力提高我们的 ceph 恢复速度,但我在 ceph 文档和各种论坛中遇到的每个选项似乎都没有效果。
此时我已尝试设置在线找到的选项组合,但恢复速度没有变化。当前设置通过以下方式设置:
for i in $(sudo ceph osd ls)
do
sudo ceph tell osd.$i injectargs --osd-max-backfills=7 \
--osd-recovery-max-active=50 \
--osd-recovery-op-priority=100 \
--osd-recovery-max-active-hdd=50 \
--osd-client-op-priority=3
done
无论恢复情况如何:
io:
client: 857 MiB/s rd, 357 MiB/s wr, 748 op/s rd, 745 op/s wr
recovery: 53 MiB/s, 16 objects/s
任何有关如何让 ceph 更快恢复的帮助将不胜感激。
Ceph 版本:15.2.9
操作系统:Ubuntu 20.04
存储类型:SATA HDD
网络:LACP Teaming 模式下每个节点 2x10Gbps
节点数:15
每个节点的磁盘:5 个 90x10TB 磁盘节点和 10 个 60x14TB 磁盘节点
【问题讨论】:
-
OSD节点之间的网络带宽是多少?
-
您的客户端 IO 看起来很高。看看磁盘饱和度(例如使用 iostat),我假设磁盘的利用率已经达到 100%,所以你无法提高恢复速度。
-
@0xF2 我更新了我的问题,提供了有关您问题的更多详细信息。
-
@eblock 查看 iostat 我发现 OSD 中磁盘上的 tps 差异很大,从接近 0 到大约 100 之间不等。然而,iowait 在所有节点上都相当低,大约 3-4% iowait 和 92-93% 空闲
-
您将 --osd-max-backfills 设置推到了多远?您可以尝试将其增加几次,然后在下一次增加之前等待它的进展情况。如果客户端 IO 没有受到太大影响,我会尝试达到 48 左右。只是为了让 OSD 的利用率接近 100%。
标签: ceph