背景
最近一个无人看管的ceph集群出现了osd被写满的情况,osd磁盘使用量99.99%,然后osd自己down了,重启也启动不起来。
可能是因为之前有人调过full的限制值,所以才完全写满了,由于好几个osd同时写满了,导致有些PG down了,无法提供服务。
所以必须将这些down的osd想办法up起来。
ceph版本:v15.2.16
解决过程
- 启动不起来的osd的日志如下:
- 通过bluestore工具查看osd的磁盘使用情况,看到只有34MB可以用
ceph-bluestore-tool --path /var/lib/ceph/osd/ceph-237/ --command bluefs-bdev-sizes inferring bluefs devices from bluestore path 1 : device size 0x1bf1f800000 : own 0x[4c10000~450000,1dd60000 。。。。。。省略。。。。。。 0x1dd6d70000 : using 0x1dd6d10000(119 GiB) : bluestore has 0x21b0000(34 MiB) available
- 查看host上磁盘情况
- 看到host系统盘上还有未使用的分区,osd下面使用lvm,所以可以考虑通过lvm扩容来将osd的存储空间扩大
- 查看down的osd块设备所属vg,Free PE为0
vgdisplay ceph-cf3140a4-13fd-4a4c-a4a0-74020ef40af3 --- Volume group --- VG Name ceph-cf3140a4-13fd-4a4c-a4a0-74020ef40af3 System ID Format lvm2 Metadata Areas 1