一.节点所在虚拟机迁移

迁移所有虚拟机

二. 处理 Ceph 相关事宜

1. 查看ceph状态

root@pve4:~# ceph osd tree
ID CLASS WEIGHT TYPE NAME STATUS REWEIGHT PRI-AFF
-1 3.27478 root default
-3 0.81870 host pve10 hdd 0.81870 osd.0 up 1.00000 1.00000
-5 0.81870 host pve21 hdd 0.81870 osd.1 up 1.00000 1.00000
-7 0.81870 host pve32 hdd 0.81870 osd.2 up 1.00000 1.00000
-9 0.81870 host pve43 hdd 0.81870 osd.3 down 0 1.00000
Bash

osd.3 下线了

2. 删掉这个硬盘

ceph osd out osd.0 #踢出osd盘
Bash
ceph osd down osd.0 #下线osd盘
Bash
systemctl stop ceph-osd@0 #停止服务
Bash
ceph osd tree #查看当前osd树
Bash
ceph osd crush remove osd.0 #管理删除osd
Bash
ceph auth del osd.0 #删除权限
Bash
ceph osd rm osd.0 #移除osd盘
Bash
ceph osd tree #查看osd树
Bash

#之后去这个osd盘的本机寻找一下这款硬盘,然后看看硬盘是哪个,这里假定是sdb#用wipefs -af /dev/sdb,将整个盘的文件系统删除让ceph的osd识别到磁盘

3.添加新磁盘

记得初始化

wipefs -af /dev/sdc #sdc为新更换的磁盘设备名称

如果报错,扫描不到,彻底清除磁盘信息,并重启

dd if=/dev/zero of=/dev/sdb bs=512K count=1

reboot

4. 删除ceph 监视器中pve1节点:

ceph mon dump #查看ceph mon信息
Bash
systemctl stop ceph-mon@pve1.service #这个命令将停止 pve1 监视器的系统服务进程。
Bash
systemctl status ceph-mon@pve1.service #检查一下确认已经停止
Bash
ceph mon remove pve1 #删除pve1的监视器
Bash
ceph mon dump #确认pve监视器已经成功删除,看不到信息
Bash

三. 关闭节点,更换上好的硬盘

ceph-volume lvm zap /dev/sd[X] --destroy #删除分区表,引导扇区和其他遗留数据

#清空后才能加入OSD

四. 重新添加ceph OSD