ceph分布式存储-常见OSD故障处理.md

这篇博客详细介绍了Ceph分布式存储系统中常见的OSD(Object Storage Daemon)故障处理方法,包括收集OSD数据、停止数据重平衡、处理OSD未运行、速度缓慢或无响应的问题。内容涵盖日志分析、I/O统计、诊断信息收集、网络检查、驱动器配置等多个方面,旨在帮助管理员有效地解决OSD相关问题。
摘要由CSDN通过智能技术生成

2. 常见 OSD 故障处理


进行 OSD 排障前,先检查一下 monitors 和网络。如果 ceph healthceph -s 返回的是健康状态,这意味着 monitors 形成了法定人数。如果 monitor 还没达到法定人数、或者 monitor 状态错误,要先解决 monitor 的问题。核实下你的网络,确保它在正常运行,因为网络对 OSD 的运行和性能有显著影响。

2.1 收集 OSD 数据

开始 OSD 排障的第一步最好先收集信息,另外还有监控 OSD 时收集的,如 ceph osd tree

Ceph 日志

如果你没改默认路径,可以在 /var/log/ceph 下找到 Ceph 的日志:

ls /var/log/ceph

如果看到的日志还不够详细,可以增大日志级别。请参考[1.12 日志和调试],查阅如何保证看到大量日志又不影响集群运行。

管理套接字

用管理套接字工具检索运行时信息。列出节点上所有 Ceph 套接字:

ls /var/run/ceph

然后,执行下例命令显示可用选项,把 {daemon-name} 换成实际的守护进程(如 osd.0 ):

ceph daemon osd.0 help

或者,你也可以指定一个 {socket-file} (如 /var/run/ceph 下的文件):

ceph daemon {socket-file} help

和其它手段相比,管理套接字允许你:

  • 在运行时列出配置
  • 列出历史操作
  • 列出操作的优先队列状态
  • 列出在进行的操作
  • 列出性能计数器
显示可用空间

可能会引起文件系统问题。用 df 命令显示文件系统的可用空间。

df -h

其它用法见 df --help

I/O 统计信息

iostat 工具定位 I/O 相关问题。

iostat -x
诊断信息

要查看诊断信息,配合 lessmoregreptail 使用 dmesg ,例如:

dmesg | grep scsi

2.2 停止数据向外重平衡

你得周期性地对集群的子集进行维护,或解决某个故障域的问题(如某个机架)。如果你不想在停机维护 OSD 时让 CRUSH 自动重均衡,首先设置集群的 noout 标志:

ceph osd set noout

设置了 noout 后,你就可以停机维护失败域内的 OSD 了。

stop ceph-osd id={num}

注意:在定位某故障域内的问题时,停机的 OSD 内的 PG 状态会变为 degraded

维护结束后,重启 OSD 。

start ceph-osd id={num}

最后,解除 noout 标志。

ceph osd unset noout

2.3 OSD 没运行

通常情况下,简单地重启 ceph-osd 进程就可以让它重回

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值