Bug 1906311

Summary: [RFE] Asynchronous snapshot mirroring between Ceph Filesystems
Product: [Red Hat Storage] Red Hat Ceph Storage Reporter: Venky Shankar <vshankar>
Component: CephFSAssignee: Venky Shankar <vshankar>
Status: CLOSED ERRATA QA Contact: Hemanth Kumar <hyelloji>
Severity: high Docs Contact: Amrita <asakthiv>
Priority: high    
Version: 5.0CC: anharris, asakthiv, ceph-eng-bugs, dsavinea, gouthamr, kdreyer, pdonnell, rmandyam, sweil, vereddy
Target Milestone: ---Keywords: FutureFeature
Target Release: 5.0   
Hardware: All   
OS: All   
Whiteboard:
Fixed In Version: rhceph:ceph-5.0-rhel-8-containers-candidate-90717-20210426151513 Doc Type: Enhancement
Doc Text:
.Asynchronous replication of snapshots between Ceph Filesystems With this release, the mirroring module, that is the manager plugin, provides interfaces for managing directory snapshot mirroring. The mirroring module is responsible for assigning directories to the mirror daemons for the synchronization. Currently, a single mirror daemon is supported and can be deployed using `cephadm`. Ceph File System (CephFS) supports asynchronous replication of snapshots to a remote CephFS through the `cephfs-mirror` tool. A mirror daemon can handle snapshot synchronization for multiple file systems in a {storage-product} cluster. Snapshots are synchronized by mirroring snapshot data followed by creating a snapshot with the same name for a given directory on the remote file system, as the snapshot being synchronized. See the link:{cephfs-guide}#ceph-file-system-mirrors[_Ceph File System mirrors_] section in the _{storage-product} File System Guide_ for more information.
Story Points: ---
Clone Of:
: 1951100 (view as bug list) Environment:
Last Closed: 2021-08-30 08:27:16 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1951100    
Bug Blocks: 1929825, 1959686    

Description Venky Shankar 2020-12-10 09:04:47 UTC
Support mirroring Ceph filesystem snapshots to a remote Ceph filesystem. The remote filesystem can be a filesystem on the same cluster or on a different Ceph cluster (possibly over a WAN).

Requirements:

- allow the user to add remove directories for which snapshots have to be replicated
- allow the user to add non-existent directories for snapshot mirroring. The directory would later come into existence
- allow multiple remote ceph filesystems (as peers) for synchronization
- provide an interface to fetch synchronization status for peer(s)
- support mirroring via a single mirror daemon (for now)
- deleted and rename snapshots should be propagated to the peer

Comment 1 Venky Shankar 2020-12-10 12:42:08 UTC
Note that once a directory is configured for mirroring, its ancestor (upto root) and all of its subdirectories are disallowed for mirroring. E.g.:

$ mkdir -p /d0/d1/d2/d3
$ ceph fs snapshot mirror add cephfs /d0/d1/d2
{}
$ ceph fs snapshot mirror add cephfs /d0/d1
Error EINVAL: /d0/d1 is a ancestor of tracked path /d0/d1/d2
$ ceph fs snapshot mirror add cephfs /d0/d1/d2/d3
Error EINVAL: /d0/d1/d2/d3 is a subtree of tracked path /d0/d1/d

Comment 16 Amrita 2021-06-09 10:57:23 UTC
Hi Venky,

Please review the technical veracity of the modified text.

Thanks
Amrita

Comment 20 errata-xmlrpc 2021-08-30 08:27:16 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Red Hat Ceph Storage 5.0 bug fix and enhancement), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2021:3294