I can believe fly.

Monday, May 14, 2018

ceph集群故障知识点摘记


状况
问题:所有服务突然都访问不了数据
分析:数据挂载所有服务器,不能正常mount,重启也不行,发现 rbd map 相应的镜像  卡死了
故障:检测ceph集群,发现osd存储节点爆满。而osd存储节点大于85%就已经开始报警了,超过95%,ceph集群不可用。


临时将警值从0.95调到0.98 ,ceph集群可用,mount数据正常可以用 

立即开始删除数据 
在mount目录下rm数据有用,只是rm的数据是否就是那95%那个osd里面,就不一定了。

但是要彻底解决问题,需要加机器扩容来解决 

get知识点:
1. osd存储节点大于85%就已经开始报警了,超过95%,ceph集群不可用。
2. 空间不足时,如果可以mount上去的话,rm有用的,只是rm的数据是否是那95%那个osd里面,就不一定了。
3. ceph的集群自平衡策略是,先本地复制,再平衡给其他节点,所以会出现数据存储量比自平衡前,暴增的问题。
4. 因为自平衡是自动的。你如果一个节点出现很多空余存储,导致存储不平均,它就会自动进行存储的自动迁移分配的。100%的osd会出现无法使用情况,只能对该osd进行删除清空。
5. 100%的osd只能进行删除然后重新挂载,进行重新使用



命令行:
查看下ceph集群的所有池信息
rados lspools  

列出镜像
rbd -p (你们挂载的池) ls  //例如:rbd -p volumes ls

查看 
rbd showmapped

挂载镜像
rbd map volumes/build-data

取消挂载
rbd unmap 相应镜像

进到ceph集群,看下ceph集群状态
ceph health detail

查看osd树和健康状态
ceph osd tree 






No comments: