ba9eaf27af
Cinder REST API allows one to use a special query parameter named "all_tenants" to list resources from all projects (tenants) through the REST API: `/v3/{project_id}/volumes/detail?all_tenants=1` However, this option is hardly documented anywhere besides `/v3/{project_id}/volumes/summary`. So add them. Change-Id: Ia9cc9e20c3b333a054c90f07e952b61dfad8529e Closes-Bug: #1743800
267 lines
5.1 KiB
ReStructuredText
267 lines
5.1 KiB
ReStructuredText
.. -*- rst -*-
|
|
|
|
Consistency groups
|
|
==================
|
|
|
|
Consistency groups enable you to create snapshots at the exact same
|
|
point in time from multiple volumes. For example, a database might
|
|
place its tables, logs, and configuration on separate volumes. To
|
|
restore this database from a previous point in time, it makes sense
|
|
to restore the logs, tables, and configuration together from the
|
|
exact same point in time.
|
|
|
|
Use the ``policy.json`` file to grant permissions for these actions
|
|
to limit roles.
|
|
|
|
|
|
List consistency groups
|
|
~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
.. rest_method:: GET /v2/{project_id}/consistencygroups
|
|
|
|
Lists consistency groups.
|
|
|
|
|
|
Normal response codes: 200
|
|
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- project_id: project_id_path
|
|
- all_tenants: all-tenants
|
|
- sort_key: sort_key
|
|
- sort_dir: sort_dir
|
|
- limit: limit
|
|
- marker: marker
|
|
|
|
|
|
Response Parameters
|
|
-------------------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- id: id
|
|
- name: name
|
|
|
|
Response Example
|
|
----------------
|
|
|
|
.. literalinclude:: ./samples/consistency-groups-list-response.json
|
|
:language: javascript
|
|
|
|
|
|
Create consistency group
|
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
.. rest_method:: POST /v2/{project_id}/consistencygroups
|
|
|
|
Creates a consistency group.
|
|
|
|
Normal response codes: 202,
|
|
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- project_id: project_id_path
|
|
- description: description_6
|
|
- availability_zone: availability_zone
|
|
- volume_types: volume_types_2
|
|
- name: name_15
|
|
|
|
Request Example
|
|
---------------
|
|
|
|
.. literalinclude:: ./samples/consistency-group-create-request.json
|
|
:language: javascript
|
|
|
|
Response
|
|
--------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- status: status_1
|
|
- description: description_11
|
|
- availability_zone: availability_zone
|
|
- created_at: created_at
|
|
- volume_types: volume_types
|
|
- name: name_15
|
|
- id: consistencygroup_id_1
|
|
|
|
Response Example
|
|
----------------
|
|
|
|
.. literalinclude:: ./samples/consistency-group-create-response.json
|
|
:language: javascript
|
|
|
|
Show consistency group details
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
.. rest_method:: GET /v2/{project_id}/consistencygroups/{consistencygroup_id}
|
|
|
|
Shows details for a consistency group.
|
|
|
|
Normal response codes: 200
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- project_id: project_id_path
|
|
- consistencygroup_id: consistencygroup_id
|
|
|
|
Response Parameters
|
|
-------------------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- status: status_1
|
|
- description: description
|
|
- availability_zone: availability_zone
|
|
- created_at: created_at
|
|
- volume_types: volume_types
|
|
- id: id
|
|
- name: name
|
|
|
|
Response Example
|
|
----------------
|
|
|
|
.. literalinclude:: ./samples/consistency-group-show-response.json
|
|
:language: javascript
|
|
|
|
|
|
Create consistency group from source
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
.. rest_method:: POST /v2/{project_id}/consistencygroups/create_from_src
|
|
|
|
Creates a consistency group from source.
|
|
|
|
Normal response codes: 202,
|
|
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- status: status_1
|
|
- user_id: user_id
|
|
- description: description
|
|
- cgsnapshot_id: cgsnapshot_id
|
|
- source_cgid: source_cgid
|
|
- project_id: project_id_path
|
|
- name: name
|
|
- project_id: project_id
|
|
|
|
Request Example
|
|
---------------
|
|
|
|
.. literalinclude:: ./samples/consistency-group-create-from-src-request.json
|
|
:language: javascript
|
|
|
|
|
|
Delete consistency group
|
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
.. rest_method:: POST /v2/{project_id}/consistencygroups/{consistencygroup_id}/delete
|
|
|
|
Deletes a consistency group.
|
|
|
|
Normal response codes: 202,
|
|
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- force: force
|
|
- project_id: project_id_path
|
|
- consistencygroup_id: consistencygroup_id
|
|
|
|
Request Example
|
|
---------------
|
|
|
|
.. literalinclude:: ./samples/consistency-group-delete-request.json
|
|
:language: javascript
|
|
|
|
|
|
List consistency groups with details
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
.. rest_method:: GET /v2/{project_id}/consistencygroups/detail
|
|
|
|
Lists consistency groups with details.
|
|
|
|
|
|
Normal response codes: 200
|
|
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- project_id: project_id_path
|
|
- all_tenants: all-tenants
|
|
- sort_key: sort_key
|
|
- sort_dir: sort_dir
|
|
- limit: limit
|
|
- marker: marker
|
|
|
|
|
|
Response Parameters
|
|
-------------------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- status: status_1
|
|
- description: description
|
|
- availability_zone: availability_zone
|
|
- created_at: created_at
|
|
- volume_types: volume_types
|
|
- id: id
|
|
- name: name
|
|
|
|
Response Example
|
|
----------------
|
|
|
|
.. literalinclude:: ./samples/consistency-groups-list-detailed-response.json
|
|
:language: javascript
|
|
|
|
|
|
Update consistency group
|
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
.. rest_method:: PUT /v2/{project_id}/consistencygroups/{consistencygroup_id}/update
|
|
|
|
Updates a consistency group.
|
|
|
|
Normal response codes: 202,
|
|
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- remove_volumes: remove_volumes
|
|
- description: description
|
|
- add_volumes: add_volumes
|
|
- name: name
|
|
- project_id: project_id_path
|
|
- consistencygroup_id: consistencygroup_id
|
|
|
|
Request Example
|
|
---------------
|
|
|
|
.. literalinclude:: ./samples/consistency-group-update-request.json
|
|
:language: javascript
|