The cinder.volume.drivers.emc.emc_vmax_provision Module

class EMCVMAXProvision(prtcl)

Bases: object

Provisioning Class for SMI-S based EMC volume drivers.

This Provisioning class is for EMC volume drivers based on SMI-S. It supports VMAX arrays.

add_members_to_masking_group(conn, controllerConfigService, storageGroupInstanceName, volumeInstanceName, volumeName, extraSpecs)

Add a member to a masking group group.

Parameters:
  • conn – the connection to the ecom server
  • controllerConfigService – the controller configuration service
  • storageGroupInstanceName – the instance name of the storage group
  • volumeInstanceName – the instance name of the volume
  • volumeName – the volume name (String)
  • extraSpecs – additional info
Raises:

VolumeBackendAPIException

add_volume_to_cg(conn, replicationService, cgInstanceName, volumeInstanceName, cgName, volumeName, extraSpecs)

Add a volume to a consistency group.

Parameters:
  • conn – the connection to the ecom server
  • replicationService – the replication Service
  • cgInstanceName – the CG instance name
  • volumeInstanceName – the volume instance name
  • cgName – the CG group name
  • volumeName – the volume name
  • extraSpecs – additional info
Returns:

int – return code

Returns:

job object

Raises:

VolumeBackendAPIException

create_and_get_storage_group(conn, controllerConfigService, storageGroupName, volumeInstanceName, extraSpecs)

Create a storage group and return it.

Parameters:
  • conn – the connection information to the ecom server
  • controllerConfigService – the controller configuration service
  • storageGroupName – the storage group name (String
  • volumeInstanceName – the volume instance name
  • extraSpecs – additional info
Returns:

foundStorageGroupInstanceName - instance name of the default storage group

Raises:

VolumeBackendAPIException

create_composite_volume(conn, elementCompositionService, volumeSize, volumeName, poolInstanceName, compositeType, numMembers, extraSpecs)

Create a new volume using the auto meta feature.

Parameters:
  • conn – the connection the the ecom server
  • elementCompositionService – the element composition service
  • volumeSize – the size of the volume
  • volumeName – user friendly name
  • poolInstanceName – the pool to bind the composite volume to
  • compositeType – the proposed composite type of the volume e.g striped/concatenated
  • numMembers – the number of meta members to make up the composite. If it is 1 then a non composite is created
  • extraSpecs – additional info
Returns:

dict – volumeDict

Returns:

int – return code

Raises:

VolumeBackendAPIException

create_consistency_group(conn, replicationService, consistencyGroupName, extraSpecs)

Create a new consistency group.

Parameters:
  • conn – the connection to the ecom server
  • replicationService – the replication Service
  • consistencyGroupName – the CG group name
  • extraSpecs – additional info
Returns:

int – return code

Returns:

job object

Raises:

VolumeBackendAPIException

create_element_replica(conn, repServiceInstanceName, cloneName, sourceName, sourceInstance, targetInstance, extraSpecs, copyOnWrite=False)

Make SMI-S call to create replica for source element.

Parameters:
  • conn – the connection to the ecom server
  • repServiceInstanceName – replication service
  • cloneName – replica name
  • sourceName – source volume name
  • sourceInstance – source volume instance
  • targetInstance – the target instance
  • extraSpecs – additional info
  • copyOnWrite – optional
Returns:

int – return code

Returns:

job object of the replica creation operation

Raises:

VolumeBackendAPIException

create_group_replica(conn, replicationService, srcGroupInstanceName, tgtGroupInstanceName, relationName, extraSpecs)

Make SMI-S call to create replica for source group.

Parameters:
  • conn – the connection to the ecom server
  • replicationService – replication service
  • srcGroupInstanceName – source group instance name
  • tgtGroupInstanceName – target group instance name
  • relationName – relation name
  • extraSpecs – additional info
Returns:

int – return code

Returns:

job object of the replica creation operation

Raises:

VolumeBackendAPIException

create_new_composite_volume(conn, elementCompositionService, compositeHeadInstanceName, compositeMemberInstanceName, compositeType, extraSpecs)

Creates a new composite volume.

Given a bound composite head and an unbound composite member create a new composite volume.

Parameters:
  • conn – the connection the the ecom server
  • elementCompositionService – the element composition service
  • compositeHeadInstanceName – the composite head. This can be bound
  • compositeMemberInstanceName – the composite member. This must be unbound
  • compositeType – the composite type e.g striped or concatenated
  • extraSpecs – additional info
Returns:

int – return code

Returns:

the job object

Raises:

VolumeBackendAPIException

create_storage_group_no_members(conn, controllerConfigService, groupName, extraSpecs)

Create a new storage group that has no members.

Parameters:
  • conn – connection the ecom server
  • controllerConfigService – the controller configuration service
  • groupName – the proposed group name
  • extraSpecs – additional info
Returns:

foundStorageGroupInstanceName

Raises:

VolumeBackendAPIException

create_volume_from_pool(conn, storageConfigService, volumeName, poolInstanceName, volumeSize, extraSpecs)

Create the volume in the specified pool.

Parameters:
  • conn – the connection information to the ecom server
  • storageConfigService – the storage configuration service
  • volumeName – the volume name (String)
  • poolInstanceName – the pool instance name to create the dummy volume in
  • volumeSize – volume size (String)
  • extraSpecs – additional info
Returns:

dict – the volume dict

Raises:

VolumeBackendAPIException

delete_clone_relationship(conn, repServiceInstanceName, syncInstanceName, extraSpecs, force=False)

Deletes the relationship between the clone and source volume.

Makes an SMI-S call to break clone relationship between the clone volume and the source. 8/Detach - Delete the synchronization between two storage objects. Treat the objects as independent after the synchronization is deleted.

Parameters:
  • conn – the connection to the ecom server
  • repServiceInstanceName – instance name of the replication service
  • syncInstanceName – instance name of the SE_StorageSynchronized_SV_SV object
  • extraSpecs – additional info
  • force – optional param
Returns:

int – return code

Returns:

job object of the replica creation operation

Raises:

VolumeBackendAPIException

delete_consistency_group(conn, replicationService, cgInstanceName, consistencyGroupName, extraSpecs)

Delete a consistency group.

Parameters:
  • conn – the connection to the ecom server
  • replicationService – the replication Service
  • cgInstanceName – the CG instance name
  • consistencyGroupName – the CG group name
  • extraSpecs – additional info
Returns:

int – return code

Returns:

job object

Raises:

VolumeBackendAPIException

delete_volume_from_pool(conn, storageConfigservice, volumeInstanceName, volumeName, extraSpecs)

Given the volume instance remove it from the pool.

Parameters:
  • conn – connection the the ecom server
  • storageConfigservice – volume created from job
  • volumeInstanceName – the volume instance name
  • volumeName – the volume name (String)
  • extraSpecs – additional info
Returns:

int – return code

Raises:

VolumeBackendAPIException

get_volume_dict_from_job(conn, jobInstance)

Given the jobInstance determine the volume Instance.

Parameters:
  • conn – the ecom connection
  • jobInstance – the instance of a job
Returns:

dict – volumeDict - an instance of a volume

migrate_volume_to_storage_pool(conn, storageRelocationServiceInstanceName, volumeInstanceName, targetPoolInstanceName, extraSpecs)

Given the storage system name, get the storage relocation service.

Parameters:
  • conn – the connection to the ecom server
  • storageRelocationServiceInstanceName – the storage relocation service
  • volumeInstanceName – the volume to be migrated
  • targetPoolInstanceName – the target pool to migrate the volume to.
  • extraSpecs – additional info
Returns:

int – rc, return code

Raises:

VolumeBackendAPIException

modify_composite_volume(conn, elementCompositionService, theVolumeInstanceName, inVolumeInstanceName, extraSpecs)

Given a composite volume add a storage volume to it.

Parameters:
  • conn – the connection to the ecom
  • elementCompositionService – the element composition service
  • theVolumeInstanceName – the existing composite volume
  • inVolumeInstanceName – the volume you wish to add to the composite volume
  • extraSpecs – additional info
Returns:

int – rc - return code

Returns:

the job object

Raises:

VolumeBackendAPIException

remove_device_from_storage_group(conn, controllerConfigService, storageGroupInstanceName, volumeInstanceName, volumeName, extraSpecs)

Remove a volume from a storage group.

Parameters:
  • conn – the connection to the ecom server
  • controllerConfigService – the controller configuration service
  • storageGroupInstanceName – the instance name of the storage group
  • volumeInstanceName – the instance name of the volume
  • volumeName – the volume name (String)
  • extraSpecs – additional info
Returns:

int – the return code of the job

Raises:

VolumeBackendAPIException

remove_volume_from_cg(conn, replicationService, cgInstanceName, volumeInstanceName, cgName, volumeName, extraSpecs)

Remove a volume from a consistency group.

Parameters:
  • conn – the connection to the ecom server
  • replicationService – the replication Service
  • cgInstanceName – the CG instance name
  • volumeInstanceName – the volume instance name
  • cgName – the CG group name
  • volumeName – the volume name
  • extraSpecs – additional info
Returns:

int – return code

Returns:

job object

Raises:

VolumeBackendAPIException

unbind_volume_from_storage_pool(conn, storageConfigService, volumeInstanceName, volumeName, extraSpecs)

Unbind a volume from a pool and return the unbound volume.

Parameters:
  • conn – the connection information to the ecom server
  • storageConfigService – the storage configuration service instance name
  • volumeInstanceName – the volume instance name
  • volumeName – the volume name
  • extraSpecs – additional info
Returns:

int – return code

Returns:

the job object

Raises:

VolumeBackendAPIException

Previous topic

The cinder.volume.drivers.emc.emc_vmax_masking Module

Next topic

The cinder.volume.drivers.emc.emc_vmax_provision_v3 Module

Project Source

This Page