Snapshot aware Geo-replication

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Gluster Snapshots and Geo-replication are not well integrated, lot of
steps to be performed to take snapshot of Gluster Volume which is
Geo-replicated. Proposed enhancement for Geo-replication to understand
Snapshot better and automatically handle Slave side snapshot.

Proposed Solution:
------------------
Take Gluster Snapshot and set Geo-replication Config
`current-snapshot` using,

    gluster volume geo-replication <MASTERVOL> <SLAVEHOST>::<SLAVEVOL> \
        config current_snapshot <SNAPNAME>

Geo-rep will automatically restart on config change and new config
will act as switch to use Snapshot or Live Volume.

Geo-rep will mount snapshot Volume in Master instead of Live
Volume, so that Geo-rep can sync the changes from Snapshot Volume
instead of live volume. Along with the mount Geo-rep should use the
back end changelogs of snapshot brick instead of live brick.

Geo-rep worker will update stime both in snapshot bricks and live
bricks, this is required to prevents re-processing changelogs which
are already processed when switched to live Changelogs.

Once all the changes from Snapshot synced to slave then Geo-rep worker
will trigger snapshot at slave side. On successful slave snapshot
Geo-replication will automatically switches to live Volume by
resetting current_snapshot option.

Snapshot Restore:
-----------------
Restore both Slave and Master Volume to the same Snapshot name,
Geo-rep should work without any further changes.

Challenges:
-----------
- Geo-rep may not work as expected if we give old snapshot name after
  latest snapshot name.
- Detecting the completion of sync from Snapshot Volume(Checkpoint?)
- Since Changelogs are generated even in Snapshot Volume, updating stime
on live bricks while syncing from snapshot Volume brick may cause problems
  when switched back to live.
- Finding respective snapshot brick path from live volume brick path may be
  challenging if Bricks removed/added after taking snapshot.

--
regards
Aravinda

_______________________________________________
Gluster-devel mailing list
Gluster-devel@xxxxxxxxxxx
http://www.gluster.org/mailman/listinfo/gluster-devel



[Index of Archives]     [Gluster Users]     [Ceph Users]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux