暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
ceph故障处理.docx
331
12页
1次
2021-03-24
25墨值下载
故障处理
Monitor
故障排查思路
Monmap
错误导致集群异常
mon rocksdb
占用空间较多导致集群异常
时钟偏移导致
mon
异常
集群空间使用率较高时出现
backll_toofull
OSD
节点宕机排查思路
三副本数据不一致导致出现
pg_inconsistent
Monitor 故障排查思路
问题现象
Monitor 维护这 Ceph 集群的信息,如果 Monitor 无法正常提供服务,那整个
Ceph 集群就不可访问。一般来说,在实际运行中,Ceph Monitor 的个数是
2n + 1 ( n >= 0 )个,在线上至少 3 个,只要正常的节点数 >=
n+1Ceph Paxos 算法就能保证系统的正常运行。通常情况下两个以上
Monitor >点同时出现异常的几率是非常低的。所以,当 Monitor 节点出现
异常时,不要惊慌,静下心来,一步步的进行处理。
排查思路
1Mon 进程是否在运行
首先需要确保的是 Mon 进程是正常运行的,如果进程都没有运行,肯定是会影
响集群状况的。如果此时 ceph -s 可以正常输出信息,可以通过此命令快速获
取到集群的状态信息,命令如下:
1. $ ceph -s
2. cluster 9a0ef35c-691a-4c3c-b242-c5a57e43e08a
3. health HEALTH_WARN
4. 1 mons down, quorum 0,2 node1,node3
5. monmap e3: 3 mons at
{node1=192.168.1.10:6789/0,node2=192.168.1.11:6789/0,node3=192.16
8.1.12:6789/0}
6. election epoch 24, quorum 0,2 node1,node3
7. osdmap e123: 12 osds: 12 up, 12 in
8. flags sortbitwise,require_jewel_osds
9. pgmap v1079: 288 pgs, 9 pools, 1832 MB data, 1 objects
10. 19095 MB used, 221 GB / 239 GB avail
11. 288 active+clean
通过命令的执行结果可以看到,目前是有一个 Mon 宕掉,正常的 mon
node1node3,所以目前是 node2 节点上的 Mon 出现了异常。通常情况下
ceph -s 命令可以正常执行时,可以通过 ceph health detail 获取到更加详
细的异常输出。命令输入信息如下:
1. $ ceph health detail
2. HEALTH_WARN 1 mons down, quorum 0,2 node1,node3
3. mon.node2 (rank 1) addr 192.168.1.11:6789/0 is down (out of
quorum)
2、异常的 Mon 节点是否可以正常连接
通常情况下在做连接测试时,建议先核实一下防火墙的状态,确保防火墙没有
对通信进行限制。这里提到的连接主要牵涉到两个方面,首先可以尝试通过
ssh 进行一下连接,确保 Mon 节点能够正常远程到。如果能够正常进行 ssh
那么接下来可以使用 telnet nc 等命令进行一下测试异常 Mon 节点的端口
(如果有修改端口,以实际端口进行测试),比如现在要测试宕掉的 node2
点的 Mon 端口,那>么可以执行以下命令
1. telnet node2 6789
3ceph -s 是否可以正常获取到集群信息
在第一项中提到使用 ceph -s 查看集群信息,以便了解具体是哪台主机出现异
常。而实际操作过程中,ceph -s 命令阻塞,无法正常收到集群回复的情况。
此时有可能是 Monitor 全部宕掉了,或者正常运行的 Monitor 数量并不足以形
quorum。这种情况下你就需要登录到集群中使用 Monitor 的管理套接字来
进行查询了。
通过管理套接字,你可以使用 Unix 套接字文件直接与指定的守护进程交互。
这个文件通常位于 Monitor 节点的 run 目录下,默认的配置路径是 /var/run/
ceph/ceph-mon.ID.asok ,如果有对这个配置位置进行过手动更改,可以看一
ceph.conf 文件中的配置路径,或者使用以下命令进行一下查询:
1. $ ceph-conf -name mon.node2 --show-config-value
admin_socket
2. /var/run/ceph/ceph-client.admin.asok
这里有一点需要注意一下,只有在 Mon 节点运行时管理套接字才可以使用。如
Mon 节点是正常关闭的,那么管理套接字文件也会被删除。如果 Mon 节点
没有运行,但是管理套接字文件还是存在的,就说明 Mon 不是正常关闭的。总
之,Mon 没有运行的情况下,是无法使用管理套接字的。
要访问管理套接字,命令格式为:
of 12
25墨值下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜