删除 OSD

  • 置零指定的 osd 的 crush 权重

    1
    2
    
    ceph osd crush reweight $ID 0
    ceph -s # 等待恢复完成,该操作耗时较久
    
  • 等待全部 pg 均衡完成(active+clean)后,查看该 osd 是否可以销毁

    1
    
    cehp osd safe-to-destroy osd.$ID
    
  • 确认可安全销毁后,再销毁该 osd

    1
    2
    3
    4
    5
    6
    
    # 标记该 osd 为 out
    ceph osd out osd.$ID
    # 停止 osd
    systemctl top ceph-osd@$ID
    # 永久删除
    ceph osd purge osd.$ID --yes-i-really-mean-it
    
  • 清理该被清理的 osd 所在的硬盘

    1
    
    ceph-volume lvm zap /dev/sdX --destroy
    
  • 删掉硬盘(可选)

    1
    
    echo 1 > /sys/block/sdX/device/delete
    

新增 OSD

  • 插上新硬盘,等待操作系统识别,建议先清理硬盘

    1
    
    ceph-volume lvm zap /dev/sdX --destroy
    
  • 创建新的 osd

    1
    2
    
    ceph-volume lvm create --bluestore --data /dev/sdX
    ceph -s # 等待恢复完成,该操作耗时较久
    
  • 等待全部 pg 均衡完成(active+clean)

CEPH 服务器关机维护

  • 设置 ceph 节点 down 后不自动迁移或恢复数据
    1
    2
    3
    
    ceph osd set noout
    ceph osd set nobackfill
    ceph osd set norecover
    
  • 直接关机
  • 下次开机
  • 设置 ceph 节点开始自动迁移或回复数据
    1
    2
    3
    
    ceph osd unset noout
    ceph osd unset nobackfill
    ceph osd unset norecover
    

其他

  • 点亮硬盘指示灯
    1
    
    hdparm -t /dev/sdX