The cinder.volume.drivers.dell_emc.unity.adapter Module

class CommonAdapter(version=None)

Bases: object

client
create_cloned_volume(volume, src_vref)

Creates cloned volume.

  1. Take an internal snapshot of source volume, and attach it.
  2. Create a new volume, and attach it.
  3. Copy from attached snapshot of step 1 to the volume of step 2.
  4. Delete the internal snapshot created in step 1.
create_snapshot(snapshot)

Creates a snapshot.

Parameters:snapshot – snapshot information.
create_volume(volume)

Creates a volume.

Parameters:volume – volume information
create_volume_from_snapshot(volume, snapshot)
delete_snapshot(snapshot)

Deletes a snapshot.

Parameters:snapshot – the snapshot to delete.
delete_volume(volume)
do_setup(driver, conf)
driver_name = 'UnityAbstractDriver'
driver_volume_type = 'unknown'
extend_volume(volume, new_size)
get_all_ports()
get_connection_info(hlu, host, connector)
get_connector_uids(connector)
get_lun_id(volume)

Retrieves id of the volume’s backing LUN.

Parameters:volume – volume information
get_managed_pools()
get_pool_name(volume)
get_pools_stats()
initialize_connection(*args, **kwargs)
initialize_connection_snapshot(*args, **kwargs)
manage_existing(volume, existing_ref)

Manages an existing LUN in the array.

The LUN should be in a manageable pool backend, otherwise return error. Rename the backend storage object so that it matches the volume[‘name’] which is how drivers traditionally map between a cinder volume and the associated backend storage object.

LUN ID or name are supported in existing_ref, like:


existing_ref:{
‘source-id’:<LUN id in Unity>

}

or


existing_ref:{
‘source-name’:<LUN name in Unity>

}

manage_existing_get_size(volume, existing_ref)

Returns size of volume to be managed by manage_existing.

The driver does some check here: 1. The LUN existing_ref should be managed by the volume.host.

normalize_config(config)
pools
protocol = 'unknown'
serial_number
terminate_connection(*args, **kwargs)
terminate_connection_snapshot(*args, **kwargs)
update_volume_stats()
validate_ports(ports_whitelist)
verify_cert
class FCAdapter(version=None)

Bases: cinder.volume.drivers.dell_emc.unity.adapter.CommonAdapter

auto_zone_enabled
do_setup(driver, config)
driver_name = 'UnityFCDriver'
driver_volume_type = 'fibre_channel'
get_all_ports()
get_connection_info(hlu, host, connector)
get_connector_uids(connector)
protocol = 'FC'
class ISCSIAdapter(version=None)

Bases: cinder.volume.drivers.dell_emc.unity.adapter.CommonAdapter

driver_name = 'UnityISCSIDriver'
driver_volume_type = 'iscsi'
get_all_ports()
get_connection_info(hlu, host, connector)
get_connector_uids(connector)
protocol = 'iSCSI'