You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行Ceph orch host drain后OSD drain耗时久,是否正常?

问题描述

执行以下命令对主机node-three进行drain操作:

sudo ceph orch host drain node-three

操作卡在移除OSD环节,当前OSD移除状态:

node-one@node-one:~$ sudo ceph orch osd rm status
OSD  HOST        STATE     PGS  REPLACE  FORCE  ZAP    DRAIN STARTED AT            
2    node-three  draining    1  False    False  False  2024-04-20 20:30:34.689946 

这是测试环境,未向该OSD写入任何数据,当前Ceph集群状态:

node-one@node-one:~$ sudo ceph status
  cluster:
    id:     f5ac585a-fe8e-11ee-9452-79c779548dac
    health: HEALTH_OK
 
  services:
    mon: 2 daemons, quorum node-one,node-two (age 21m)
    mgr: node-two.zphgll(active, since 9h), standbys: node-one.ovegfw
    osd: 3 osds: 3 up (since 42m), 3 in (since 42m); 1 remapped pgs
 
  data:
    pools:   1 pools, 1 pgs
    objects: 2 objects, 577 KiB
    usage:   81 MiB used, 30 GiB / 30 GiB avail
    pgs:     2/6 objects misplaced (33.333%)
             1 active+clean+remapped

请问此情况下ceph orch osd rm drain耗时过长是否属于正常现象?

解答

这种情况不正常。测试环境数据量极小(仅2个对象共577KiB),正常情况下drain操作应该在数秒内完成。

从集群状态输出可以看出问题根源:

  • 存在1 active+clean+remapped的PG,且有2/6 objects misplaced,说明集群正在执行数据重映射,但因为数据量极小,本应快速完成却卡住,属于异常情况。

可能的触发原因:

  • 集群PG数量过少(仅1个PG),限制了重平衡的调度效率
  • Mgr模块的OSD调度逻辑出现临时延迟
  • 默认池存在系统自动生成的元数据对象,导致迁移流程被阻塞

解决建议:

  1. 手动触发PG修复,强制完成数据重映射:
    sudo ceph pg repair 1
    
  2. 观察ceph orch osd rm status,如果仍无进展,可强制终止drain并手动移除OSD:
    • 停止主机drain操作:
      sudo ceph orch host drain stop node-three
      
    • 标记目标OSD为out状态:
      sudo ceph osd out osd.2
      
    • 等待ceph status显示所有PG为active+clean后,移除OSD:
      sudo ceph osd rm osd.2
      
    • (可选)清理主机上的OSD设备数据:
      sudo ceph orch osd zap node-three:/path/to/osd-device
      

内容的提问来源于stack exchange,提问作者Vencat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 09:55:58