Replication V2 for Pure Storage

This implementation utilizes Pure Storage Protection Groups to
replicate volumes natively between Pure Storage backends.

Replication schedules can be set via config file options.
Replication targets are also set via config file options.

For example,
[puredriver-1]
volume_backend_name = puredriver-1
...
replication_device = target_device_id:<unique_array_id>,
                     managed_backend_name:puredriver-2,
                     san_ip:<ip_address>,
                     api_token:<authentication_token>
pure_replica_interval_default = 900
pure_replica_retention_short_term_default = 14400
pure_replica_retention_long_term_per_day_default = 3
pure_replica_retention_long_term_default = 7

replication_device describes the target array for replication. This can
be either another managed cinder backend or one not managed by cinder.

The above settings will cause a protection group to be created between
the two flash arrays. It will replicate any volumes placed in it with
settings that cause a volume to be replicated every 15 mins (900s).  All
snapshots will be kept for 4 hours (14400s).  Then 3 snapshots per day
will be kept for 7 days.

Note that replication-failover is supported from primary to any of
multiple secondary arrays, but subsequent replication-failover is
only supported back to the original primary.

DocImpact
Implements: bp pure-v2-replication
Change-Id: I69e567143b65e92f89969ff5036c4f242c17a1dd
This commit is contained in:
Daniel Wilson 2015-08-17 15:46:13 -07:00 committed by Patrick East
parent d3fe19cd3b
commit f9f7a89fca
3 changed files with 1560 additions and 141 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,3 @@
---
features:
- Added v2 replication support to the Pure Volume driver.