18744ba199
This patch adds support for replication group. It is built upon the generic volume groups. It supports enable replication, disable replication, failover replication, and list replication targets. Client side patch is here: https://review.openstack.org/#/c/352229/ To test this server side patch using the client side patch: export OS_VOLUME_API_VERSION=3.38 Make sure the group type has group_replication_enabled or consistent_group_replication_enabled set in group specs, and the volume types have replication_enabled set in extra specs (to be compatible with Cheesecake). cinder group-type-show my_group_type +-------------+---------------------------------------+ | Property | Value | +-------------+---------------------------------------+ | description | None | | group_specs | group_replication_enabled : <is> True | | id | 66462b5c-38e5-4a1a-88d6-7a7889ffec55 | | is_public | True | | name | my_group_type | +-------------+---------------------------------------+ cinder type-show my_volume_type +---------------------------------+--------------------------------------+ | Property | Value | +---------------------------------+--------------------------------------+ | description | None | | extra_specs | replication_enabled : <is> True | | id | 09c1ce01-87d5-489e-82c6-9f084107dc5c | | is_public | True | | name | my_volume_type | | os-volume-type-access:is_public | True | | qos_specs_id | None | +---------------------------------+--------------------------------------+ Create a group: cinder group-create --name my_group my_group_type my_volume_type cinder group-show my_group Enable replication group on the primary storage: cinder group-enable-replication my_group Expected results: replication_status becomes “enabled”. Failover replication group to the secondary storage. If secondary-backend-id is not specified, it will go to the secondary-backend-id configured in cinder.conf: cinder group-failover-replication my_group If secondary-backend-id is specified (not “default”), it will go to the specified backend id: cinder group-failover-replication my_group --secondary-backend-id <backend_id> Expected results: replication_status becomes “failed-over”. Run failover replication group again to fail the group back to the primary storage: cinder group-failover-replication my_group --secondary-backend-id default Expected results: replication_status becomes “enabled”. Disable replication group: cinder group-disable-replication my_group Expected results: replication_status becomes “disabled”. APIImpact DocImpact Implements: blueprint replication-cg Change-Id: I4d488252bd670b3ebabbcc9f5e29e0e4e913765a
7 lines
189 B
YAML
7 lines
189 B
YAML
---
|
|
features:
|
|
- |
|
|
Introduced replication group support and added group action APIs
|
|
enable_replication, disable_replication, failover_replication and
|
|
list_replication_targets.
|