Block Replicating
Problem
How to replicate a block device from one system to a remote one. Each device
Basic Workflow
- Quite source device. For filesystems, this may require flushing and unmounting
- Select protocol for destincation lun (3rd-party, iscsi dd, piped data)
- Allocate destination lun.
- Establish connection between two luns
- Copy data from source to destination.
- Validate data transfer.
- Disconnect remote lun and resume normal operations.
Solutions
There are three methodologies for copying data from one lun to another. They are:
- network pipe, open an IP connection between two hosts and copy the bits from device@hostA to device@hostB
- Local mount, using a storage protocol, fc, iscsi, ifcp, locally mount the remote lun and bit-copy the data between the two lung
- Remotely supplied lun may need to be allocated on destination host and reshared
- For san-based storage, out-of-band creation may be possible
- 3rd party copy. Using san-san copy bits directly from one lun to another out of band of either host.
| Approach | Allocate destination | Establish connection | copy data | tear down |
| network pipe | On remote host, create block device and make visible | Open ssh, socket, etc | read bits from open socket and write to block device |
| local mount | lun created remotely or third party creation | Mount lun from san or remote iscsi target | bit-copy between two devices |
| 3rd party | storage created lun | Storage managed connection (ifcp, san, etc) | storage managed copy |
to top