文章目录
A、删除失效mon
root@cunchu4:~# ceph -s
cluster:
id: xxxxxxxxxxxxxxxxxxxxxxx
health: HEALTH_WARN
1/4 mons down, quorum cunchu2,cunchu3,cunchu4
root@cunchu4:~# ceph mon stat
e4: 4 mons at {cunchu1=[v2:192.168.19.8:3300/0,v1:192.168.19.8:6789/0],cunchu2=[v2:192.168.19.9:3300/0,v1:192.168.19.9:6789/0],cunchu3=[v2:192.168.19.10:3300/0,v1:192.168.19.10:6789/0],cunchu4=[v2:192.168.19.11:3300/0,v1:192.168.19.11:6789/0]}, election epoch 84, leader 1 cunchu2, quorum 1,2,3 cunchu2,cunchu3,cunchu4
root@cunchu4:~# ceph mon remove cunchu1
removing mon.cunchu1 at [v2:192.168.19.8:3300/0,v1:192.168.19.8:6789/0], there will be 3 monitors
B、pve创建mon|删除mon
pveceph mon create pve-ceph01 #创建mon(需要到对应的pve节点上操作)
pveceph mon destroy pve-ceph01 #删除mon(需要到对应的pve节点上操作)
C、mon角色恢复(用pve部署的ceph接管其他方式部署的mon角色 rak)
1、去pve角色上的面板上创建mon
2、在对应的pve节点上,命令行加入mon
ceph mon add W3004 10.10.10.22 #W3004是主机名,后面是ip
3、在对应pve节点上命令行mon服务
systemctl stop ceph-mon@W3004.service
4、在对应的pve节点上,通过拷贝 远程W501的相关mon数据过来
cd /var/lib/ceph/mon/ceph-W3004/
#/usr/bin/ceph-mon -f --cluster ceph --id W3004 --setuser ceph --setgroup ceph 这是一句调试参数用systemctl status ceph-mon.target
#找一台正常的mon节点,把/var/lib/ceph/mon/ceph-$hostname/ 目录下的所有文件复制到本地的 /var/lib/ceph/mon/ceph-$hostname/目录下
rsync -avz --progress --delete 10.10.10.1:/var/lib/ceph/mon/ceph-W501/* .
#--delete这个意思是让后面的和前面的数据保持一致,以前面的为准
#10.10.10.1 这个地址上面运行着 正常的mon角色
systemctl start ceph-mon@W3004.service #再次启动后,通过ceph -s进行查看
5、最后要注意,魔方云那边看看是否需要增加 对应的mon ip地址
D、如何处理pve上mon出现unknown状态
1、剔除失效的mon
ceph mon remove ceph-pve-ceph02
2、去对应的pve节点,将/var/lib/ceph/mon/目录下的ceph-pve-ceph02文件夹删除即可消除
rm /var/lib/ceph/mon/ceph-pve-ceph02/ -r
3、在该节点上创建mon
pveceph mon create pve-ceph02 #若是该命令创建失败,提示 monitor address '10.15.11.109' already in use
解决办法,是去ceph.conf配置文件中,将mon相关配置中关于 pve-ceph02的ip 10.15.11.109相关信息删除掉,再次创建即可
root@pve-ceph02:~# cat /etc/ceph/ceph.conf
[global]
auth_client_required = cephx
auth_cluster_required = cephx
auth_service_required = cephx
cluster_network = 10.15.11.0/24
fsid = 21f31929-2fc5-4bc9-a0d5-060b5eb0a695
mon_allow_pool_delete = true
mon_host = 10.15.11.109 10.15.11.78 10.15.11.137 #关注这一行,删掉 10.15.11.109
ms_bind_ipv4 = true
ms_bind_ipv6 = false
osd_pool_default_min_size = 2
osd_pool_default_size = 3
public_network = 10.15.11.0/24
[client]
keyring = /etc/pve/priv/$cluster.$name.keyring
#[mon.pve-ceph02] #删掉这一段儿
#public_addr = 10.15.11.109
[mon.pve-ceph03]
public_addr = 10.15.11.78
[mon.pve-ceph04]
public_addr = 10.15.11.137
4、设置pve-ceph02上的mon角色开机自启动
systemctl enable ceph-mon@pve-ceph02.service
如果文章对你有帮助,欢迎点击上方按钮打赏作者
暂无评论