The cinder.volume.rpcapi
Module¶
-
class
VolumeAPI
¶ Bases:
cinder.rpc.RPCAPI
Client side of the volume rpc API.
API version history:
1.0 - Initial version. 1.1 - Adds clone volume option to create_volume. 1.2 - Add publish_service_capabilities() method. 1.3 - Pass all image metadata (not just ID) in copy_volume_to_image. 1.4 - Add request_spec, filter_properties and allow_reschedule arguments to create_volume(). 1.5 - Add accept_transfer. 1.6 - Add extend_volume. 1.7 - Adds host_name parameter to attach_volume() to allow attaching to host rather than instance. 1.8 - Add migrate_volume, rename_volume. 1.9 - Add new_user and new_project to accept_transfer. 1.10 - Add migrate_volume_completion, remove rename_volume. 1.11 - Adds mode parameter to attach_volume() to support volume read-only attaching. 1.12 - Adds retype. 1.13 - Adds create_export. 1.14 - Adds reservation parameter to extend_volume(). 1.15 - Adds manage_existing and unmanage_only flag to delete_volume. 1.16 - Removes create_export. 1.17 - Add replica option to create_volume, promote_replica and sync_replica. 1.18 - Adds create_consistencygroup, delete_consistencygroup, create_cgsnapshot, and delete_cgsnapshot. Also adds the consistencygroup_id parameter in create_volume. 1.19 - Adds update_migrated_volume 1.20 - Adds support for sending objects over RPC in create_snapshot() and delete_snapshot() 1.21 - Adds update_consistencygroup. 1.22 - Adds create_consistencygroup_from_src. 1.23 - Adds attachment_id to detach_volume. 1.24 - Removed duplicated parameters: snapshot_id, image_id, source_volid, source_replicaid, consistencygroup_id and cgsnapshot_id from create_volume. All off them are already passed either in request_spec or available in the DB. 1.25 - Add source_cg to create_consistencygroup_from_src. 1.26 - Adds support for sending objects over RPC in create_consistencygroup(), create_consistencygroup_from_src(), update_consistencygroup() and delete_consistencygroup(). 1.27 - Adds support for replication V2 1.28 - Adds manage_existing_snapshot 1.29 - Adds get_capabilities. 1.30 - Adds remove_export 1.31 - Updated: create_consistencygroup_from_src(), create_cgsnapshot() and delete_cgsnapshot() to cast method only with necessary args. Forwarding CGSnapshot object instead of CGSnapshot_id. 1.32 - Adds support for sending objects over RPC in create_volume(). 1.33 - Adds support for sending objects over RPC in delete_volume(). 1.34 - Adds support for sending objects over RPC in retype(). 1.35 - Adds support for sending objects over RPC in extend_volume(). 1.36 - Adds support for sending objects over RPC in migrate_volume(), migrate_volume_completion(), and update_migrated_volume(). 1.37 - Adds old_reservations parameter to retype to support quota checks in the API. 1.38 - Scaling backup service, add get_backup_device() and secure_file_operations_enabled() 1.39 - Update replication methods to reflect new backend rep strategy 1.40 - Add cascade option to delete_volume(). ... Mitaka supports messaging version 1.40. Any changes to existing methods in 1.x after that point should be done so that they can handle the version_cap being set to 1.40. 2.0 - Remove 1.x compatibility 2.1 - Add get_manageable_volumes() and get_manageable_snapshots(). 2.2 - Adds support for sending objects over RPC in manage_existing(). 2.3 - Adds support for sending objects over RPC in initialize_connection(). 2.4 - Sends request_spec as object in create_volume(). 2.5 - Adds create_group, delete_group, and update_group 2.6 - Adds create_group_snapshot, delete_group_snapshot, and create_group_from_src(). ... Newton supports messaging version 2.6. Any changes to existing methods in 2.x after that point should be done so that they can handle the version_cap being set to 2.6. 3.0 - Drop 2.x compatibility 3.1 - Remove promote_replica and reenable_replication. This is non-backward compatible, but the user-facing API was removed back in Mitaka when introducing cheesecake replication. 3.2 - Adds support for sending objects over RPC in get_backup_device(). 3.3 - Adds support for sending objects over RPC in attach_volume(). 3.4 - Adds support for sending objects over RPC in detach_volume(). 3.5 - Adds support for cluster in retype and migrate_volume 3.6 - Switch to use oslo.messaging topics to indicate backends instead of @backend suffixes in server names. 3.7 - Adds do_cleanup method to do volume cleanups from other nodes that we were doing in init_host. 3.8 - Make failover_host cluster aware and add failover_completed. 3.9 - Adds new attach/detach methods 3.10 - Returning objects instead of raw dictionaries in get_manageable_volumes & get_manageable_snapshots
-
BINARY
= 'cinder-volume'¶
-
RPC_API_VERSION
= '3.10'¶
-
RPC_DEFAULT_VERSION
= '3.0'¶
-
TOPIC
= 'cinder-volume'¶
-
accept_transfer
(ctxt, volume, new_user, new_project)¶
-
attach_volume
(ctxt, volume, instance_uuid, host_name, mountpoint, mode)¶
-
attachment_delete
(*args, **kwargs)¶
-
attachment_update
(*args, **kwargs)¶
-
copy_volume_to_image
(ctxt, volume, image_meta)¶
-
create_cgsnapshot
(ctxt, cgsnapshot)¶
-
create_consistencygroup
(ctxt, group)¶
-
create_consistencygroup_from_src
(ctxt, group, cgsnapshot=None, source_cg=None)¶
-
create_group
(ctxt, group)¶
-
create_group_from_src
(ctxt, group, group_snapshot=None, source_group=None)¶
-
create_group_snapshot
(ctxt, group_snapshot)¶
-
create_snapshot
(ctxt, volume, snapshot)¶
-
create_volume
(ctxt, volume, request_spec, filter_properties, allow_reschedule=True)¶
-
delete_cgsnapshot
(ctxt, cgsnapshot)¶
-
delete_consistencygroup
(ctxt, group)¶
-
delete_group
(ctxt, group)¶
-
delete_group_snapshot
(ctxt, group_snapshot)¶
-
delete_snapshot
(ctxt, snapshot, unmanage_only=False)¶
-
delete_volume
(ctxt, volume, unmanage_only=False, cascade=False)¶
-
detach_volume
(ctxt, volume, attachment_id)¶
-
do_cleanup
(*args, **kwargs)¶ Perform this service/cluster resource cleanup as requested.
-
extend_volume
(ctxt, volume, new_size, reservations)¶
-
failover
(ctxt, service, secondary_backend_id=None)¶ Failover host to the specified backend_id (secondary).
-
failover_completed
(ctxt, service, updates)¶ Complete failover on all services of the cluster.
-
freeze_host
(ctxt, service)¶ Set backend host to frozen.
-
get_backup_device
(ctxt, backup, volume)¶
-
get_capabilities
(ctxt, backend_id, discover)¶
-
get_manageable_snapshots
(ctxt, service, marker, limit, offset, sort_keys, sort_dirs)¶
-
get_manageable_volumes
(ctxt, service, marker, limit, offset, sort_keys, sort_dirs)¶
-
initialize_connection
(ctxt, volume, connector)¶
-
manage_existing
(ctxt, volume, ref)¶
-
manage_existing_snapshot
(ctxt, snapshot, ref, backend)¶
-
migrate_volume
(ctxt, volume, dest_backend, force_host_copy)¶
-
migrate_volume_completion
(ctxt, volume, new_volume, error)¶
-
publish_service_capabilities
(ctxt)¶
-
remove_export
(ctxt, volume)¶
-
retype
(ctxt, volume, new_type_id, dest_backend, migration_policy='never', reservations=None, old_reservations=None)¶
-
secure_file_operations_enabled
(ctxt, volume)¶
-
terminate_connection
(ctxt, volume, connector, force=False)¶
-
thaw_host
(ctxt, service)¶ Clear the frozen setting on a backend host.
-
update_consistencygroup
(ctxt, group, add_volumes=None, remove_volumes=None)¶
-
update_group
(ctxt, group, add_volumes=None, remove_volumes=None)¶
-
update_migrated_volume
(ctxt, volume, new_volume, original_volume_status)¶
-