问题描述
该笔记将记录:在 Ceph Cluster 中,如何对 OSD 进行管理,以及相关问题的解决方案;
解决方案
OSD 维护是 Ceph Cluster 维护的常见任务;
增加 OSD 实例(增)
添加 OSD 实例
Ceph Documentation/OSD Service/CREATING NEW OSDS
# Tell Ceph to consume any available and unused storage device: ceph orch apply osd --all-available-devices # Create an OSD from a specific device on a specific host: ceph orch daemon add osd *<host>*:*<device-path>* # ceph osd tree
通过标志位,控制 OSD 行为
noout:该标志位将使 Ceph 集群不会将任何 OSD 标记为 out,无论其实际状态如何。这将会把所有的 OSD 保留在 Ceph 集群中;
nodown:该标志位将使得 Ceph 集群不会将任何 OSD 标记为 down,无论其实际状态如何。这将会使集群中的所有 OSD 保持 UP 状态,而不会是 DOWN 状态;
noup:该标志位将使得 Ceph 集群不会将任何 DOWN OSD 标记为 UP 状态。这样,任何被标记为 DOWN 的 OSD 都将只有在该标志位被清除以后,才会被标记为 UP。该标志位也会被用于新加入集群中的 OSD;
noin:该标志位将使得 Ceph 集群不允许任何新的 OSD 加入集群。这在需要一次性加入多个 OSD 到集群中而不想它们自动地被加入集群时非常有用;
norecover:该标志位将使得 Ceph 集群不做集群恢复(cluster recovery);
nobackfil1:该标志位将使得 Ceph 集群不做数据回填 (backfilling)。这在一次性加入多个 OSD 但是不想 Ceph 自动将数据分布到它们上时会非常有用;
norebalance:该标志位将使得 Ceph 集群不做任何集群再平衡(cluster rebalancing );
noscrub:该标志位将使得 Ceph 集群不做 OSD 清理 (scrubbing);
nodeep-scrub:该标志位将使得 Ceph 不做 OSD 深度清理(deep scrubbing );
notieragent:该标志位将禁用缓存分层代理 (cache pool tiering agent);
# ceph osd set noout # ceph osd set nodown # ceph osd unset noout
删除 OSD 实例(删)
// ---------------------------------------------------------------------------- // 数据迁移 # ceph osd out osd.9 # ceph -s ... 需要等待集群 HEALTH_OK 状态; // ---------------------------------------------------------------------------- // 停止服务 # systemctl status ceph-<cluster-id>@osd.9.service # ceph osd tree // ---------------------------------------------------------------------------- // 删除配置 # ceph osd crush remove osd.9 # ceph auth del osd.9 # ceph osd rm osd.9 // ---------------------------------------------------------------------------- // 节点清理 # ceph osd crush remove cepe-node-09
修改 OSD 实例(改)
修复 OSD 实例
ceph osd repair
替换 OSD 实例
针对 OSD 替换(物理磁盘替换),
1)首先要针对 OSD 删除,参考前面步骤,这里不再赘述;
2)然后,进行物理磁盘的替换操作;
3)重新进行磁盘的添加操作:
# ceph device ls // 查看 # ceph-volume lvm zap /dev/sdc1 // 清理 # ... // 添加(略) # ceph -s # ceph osd stat
查看 OSD 实例(查)
查看 OSD 使用情况:
# ceph osd df ID CLASS WEIGHT REWEIGHT SIZE RAW USE DATA OMAP META AVAIL %USE VAR PGS STATUS 3 ssd 1.81940 1.00000 1.8 TiB 716 GiB 714 GiB 101 MiB 2.2 GiB 1.1 TiB 38.43 0.88 587 up 25 ssd 0.02910 1.00000 30 GiB 13 GiB 13 GiB 12 KiB 148 MiB 17 GiB 42.43 0.97 11 up 26 ssd 0.02730 1.00000 28 GiB 9.8 GiB 9.6 GiB 6 KiB 207 MiB 18 GiB 35.20 0.80 9 up ...
查看 OSD 分布情况:
# ceph osd tree ID CLASS WEIGHT TYPE NAME STATUS REWEIGHT PRI-AFF -1 3.48964 root default -7 0 host laptop-asus-k53sd -9 2.01588 host pc-amd64-100247 3 ssd 1.81940 osd.3 up 1.00000 1.00000 25 ssd 0.02910 osd.25 up 1.00000 1.00000 26 ssd 0.02730 osd.26 up 1.00000 1.00000 ... # ceph osd stat 6 osds: 6 up (since 22h), 6 in (since 22h); epoch: e649 # ceph osd dump # ceph osd blacklist ls 192.168.200.2:0/2497510580 2022-11-22T17:20:35.443089+0000 192.168.200.2:0/1367794813 2022-11-22T17:20:35.443089+0000 192.168.200.2:0/2868426778 2022-11-22T17:20:35.443089+0000 192.168.200.2:0/3182936832 2022-11-22T17:20:35.443089+0000 192.168.200.2:6816/2457673239 2022-11-22T17:20:35.443089+0000 192.168.200.2:6817/2457673239 2022-11-22T17:20:35.443089+0000 listed 6 entries