The cinder.volume.drivers.emc.emc_cli_iscsi Module

iSCSI Drivers for EMC VNX array based on CLI.

class EMCCLIISCSIDriver(*args, **kwargs)

Bases: cinder.volume.driver.ISCSIDriver

EMC ISCSI Drivers for VNX using CLI.

Version history:

1.0.0 - Initial driver 2.0.0 - Thick/thin provisioning, robust enhancement 3.0.0 - Array-based Backend Support, FC Basic Support,

Target Port Selection for MPIO, Initiator Auto Registration, Storage Group Auto Deletion, Multiple Authentication Type Support, Storage-Assisted Volume Migration, SP Toggle for HA

3.0.1 - Security File Support 4.0.0 - Advance LUN Features (Compression Support,

Deduplication Support, FAST VP Support, FAST Cache Support), Storage-assisted Retype, External Volume Management, Read-only Volume, FC Auto Zoning

4.1.0 - Consistency group support

check_for_export(context, volume_id)

Make sure volume is exported.

check_for_setup_error()
create_cgsnapshot(context, cgsnapshot)

Creates a cgsnapshot.

create_cloned_volume(volume, src_vref)

Creates a cloned volume.

create_consistencygroup(context, group)

Creates a consistencygroup.

create_export(context, volume)

Driver entry point to get the export info for a new volume.

create_snapshot(snapshot)

Creates a snapshot.

create_volume(volume)

Creates a VNX volume.

create_volume_from_snapshot(volume, snapshot)

Creates a volume from a snapshot.

delete_cgsnapshot(context, cgsnapshot)

Deletes a cgsnapshot.

delete_consistencygroup(context, group)

Deletes a consistency group.

delete_snapshot(snapshot)

Deletes a snapshot.

delete_volume(volume)

Deletes a VNX volume.

ensure_export(context, volume)

Driver entry point to get the export info for an existing volume.

extend_volume(volume, new_size)

Extend a volume.

get_volume_stats(refresh=False)

Get volume status.

If ‘refresh’ is True, run update the stats first.

initialize_connection(volume, connector)

Initializes the connection and returns connection info.

The iscsi driver returns a driver_volume_type of ‘iscsi’. the format of the driver data is defined in vnx_get_iscsi_properties. Example return value:

{
    'driver_volume_type': 'iscsi'
    'data': {
        'target_discovered': True,
        'target_iqn': 'iqn.2010-10.org.openstack:volume-00000001',
        'target_portal': '127.0.0.0.1:3260',
        'target_lun': 1,
        'access_mode': 'rw'
    }
}
manage_existing(volume, existing_ref)

Manage an existing lun in the array.

The lun should be in a manageable pool backend, otherwise error would return. 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.

existing_ref:{
‘id’:lun_id

}

manage_existing_get_size(volume, existing_ref)

Return size of volume to be managed by manage_existing.

migrate_volume(ctxt, volume, host)
remove_export(context, volume)

Driver entry point to remove an export for a volume.

retype(ctxt, volume, new_type, diff, host)

Convert the volume to be of the new type.

terminate_connection(volume, connector, **kwargs)

Disallow connection from connector.

update_volume_stats()

Retrieve status info from volume group.

Previous topic

The cinder.volume.drivers.emc.emc_cli_fc Module

Next topic

The cinder.volume.drivers.emc.emc_vmax_common Module

This Page