cinder.volume.drivers.dell_emc.scaleio.driver
Modulecinder.volume.drivers.dell_emc.scaleio.driver
Module¶Driver for Dell EMC ScaleIO based on ScaleIO remote CLI.
ScaleIODriver
(*args, **kwargs)¶Bases: cinder.volume.driver.VolumeDriver
Cinder ScaleIO Driver
CI_WIKI_NAME
= ‘EMC_ScaleIO_CI’¶VERSION
= ‘2.0.3’¶check_for_export
(context, volume_id)¶Make sure volume is exported.
check_for_setup_error
()¶copy_image_to_volume
(context, volume, image_service, image_id)¶Fetch the image from image_service and write it to the volume.
copy_volume_to_image
(context, volume, image_service, image_meta)¶Copy the volume to the specified image.
create_cloned_volume
(volume, src_vref)¶Creates a cloned volume.
create_export
(context, volume, connector)¶Driver entry point to get the export info for a new volume.
create_group
(context, group)¶Creates a group.
Parameters: |
|
---|---|
Returns: | model_update |
ScaleIO won’t create CG until cg-snapshot creation, db will maintain the volumes and CG relationship.
create_group_from_src
(context, group, volumes, group_snapshot=None, snapshots=None, source_group=None, source_vols=None)¶Creates a group from source.
Parameters: |
|
---|---|
Returns: | model_update, volumes_model_update |
create_group_snapshot
(context, group_snapshot, snapshots)¶Creates a group snapshot.
Parameters: |
|
---|---|
Returns: | model_update, snapshots_model_update |
create_snapshot
(snapshot)¶Creates a scaleio snapshot.
create_volume
(volume)¶Creates a scaleIO volume.
create_volume_from_snapshot
(volume, snapshot)¶Creates a volume from a snapshot.
delete_group
(context, group, volumes)¶Deletes a group.
Parameters: |
|
---|---|
Returns: | model_update, volumes_model_update |
ScaleIO will delete the volumes of the CG.
delete_group_snapshot
(context, group_snapshot, snapshots)¶Deletes a snapshot.
Parameters: |
|
---|---|
Returns: | model_update, snapshots_model_update |
delete_snapshot
(snapshot)¶Deletes a ScaleIO snapshot.
delete_volume
(volume)¶Deletes a self.logical volume
ensure_export
(context, volume)¶Driver entry point to get the export info for an existing volume.
extend_volume
(volume, new_size)¶Extends the size of an existing available ScaleIO volume.
This action will round up the volume to the nearest size that is a granularity of 8 GBs.
get_manageable_volumes
(cinder_volumes, marker, limit, offset, sort_keys, sort_dirs)¶List volumes on the backend available for management by Cinder.
Rule out volumes that are mapped to an SDC or are already in the list of cinder_volumes. Return references of the volume ids for any others.
get_volume_stats
(refresh=False)¶Get volume stats.
If ‘refresh’ is True, run update the stats first.
initialize_connection
(volume, connector, **kwargs)¶Initializes the connection and returns connection info.
The scaleio driver returns a driver_volume_type of ‘scaleio’.
manage_existing
(volume, existing_ref)¶Manage an existing ScaleIO volume.
existing_ref is a dictionary of the form: {‘source-id’: <id of ScaleIO volume>}
manage_existing_get_size
(volume, existing_ref)¶manage_existing_snapshot
(snapshot, existing_ref)¶Manage an existing ScaleIO snapshot.
Parameters: |
|
---|
manage_existing_snapshot_get_size
(snapshot, existing_ref)¶remove_export
(context, volume)¶Driver entry point to remove an export for a volume.
scaleio_qos_keys
= (‘maxIOPS’, ‘maxBWS’, ‘maxIOPSperGB’, ‘maxBWSperGB’)¶terminate_connection
(volume, connector, **kwargs)¶update_group
(context, group, add_volumes=None, remove_volumes=None)¶Update a group.
Parameters: |
|
---|---|
Returns: | model_update, add_volumes_update, remove_volumes_update |
ScaleIO does not handle volume grouping. Cinder maintains volumes and CG relationship.
update_migrated_volume
(ctxt, volume, new_volume, original_volume_status)¶Return the update from ScaleIO migrated volume.
This method updates the volume name of the new ScaleIO volume to match the updated volume ID. The original volume is renamed first since ScaleIO does not allow multiple volumes to have the same name.
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.