用于CephFS备份和/或数据恢复的Ceph池快照

由于CephFS不支​​持快照,我们可以使用Ceph Pool Snapshot来备份CephFS内的文件吗?

ceph osd pool mksnap {pool-name} {snap-name} ceph osd pool rmsnap {pool-name} {snap-name} rados -p {pool-name} lssnap rados -p {pool-name} rollback {snap-name} 

如果可能的话,我想利用Ceph Pool Snapshot来备份CephFS中的文件,并且在CephFS中有一个意外的文件删除时回滚CephFS池。

我知道我们总是可以使用异地备份,但目前我还无法承受另外200多TB的存储空间,我希望快照只能在Ceph群集内使用less量空间。

参考文献:

  • http://docs.ceph.com/docs/master/rados/operations/pools/
  • https://ervikrant06.wordpress.com/2015/04/22/how-to-perform-more-operation-using-rados-in-redhat-c​​eph-cluster/

那么我想知道的CephFS快照的使用和机制,search结果把我带到这里。

首先,CephFS中的快照可用,但尚不稳定。 通过设置allow_new_snaps ,快照将在CephFS中启用,创build快照与创build目录一样简单。 除了不稳定之外,我发现快照中的文件似乎也随着文件系统中的文件的改变而改变,但是对此没有任何线索。

对池进行快照似乎是进行备份的可靠方式,但请记住,您必须同时快照数据池和元数据池,并且需要同时拍摄两个快照,以便获得一致的快照文件系统。 更糟糕的是,您需要将两个快照结合起来,然后用它们创build一个新的文件系统,以便从快照中获得单个文件或目录,但是multi-fs还没有在ceph中实现,AFAIK。 所以你唯一的方法就是用完整的快照覆盖当前的文件系统。

我正在使用allow_new_snaps方式,似乎更有希望。