如何在所有的mon的损坏情况下将数据恢复如初

本篇主题

在mon无法启动,或者所有的mon的数据盘都损坏的情况下,如何把所有的数据恢复如初

写本章的缘由

在ceph中国的群里有看到一个技术人员有提到,在一次意外机房掉电后,三台mon的系统盘同时损坏了,这个对于熟悉ceph的人都知道这意味着什么,所有的集群数据将无法访问,关于这个的解决办法目前没有在哪里有看到,这个对于大多数人是用不上的,但是一旦出现了,这个损失将是无法估量的,当然谁都不希望这个情况的发生

所以在研究了下ceph的一些操作后,自己尝试去找了一些关于集群的故障修复的,目前看到了一个是关于单个rbd镜像的恢复的文章,那个需要将数据映射本地的loop设备后重新读取,这个我曾经验证过一遍,确实可以实现,在周末的时候我尝试了另外一个办法,实现了在mon完全失效的情况下全集群的完整数据的恢复,并且保留了原来的数据结构和数据信息,当然这中间需要进行一定的操作去完成它,这个我准备写成一个标准的操作流程,并用视频的方式来记录这个恢复的流程