The cinder.volume.drivers.dell_emc.vmax.masking
Module¶
-
class
VMAXMasking
(prtcl)¶ Bases:
object
Masking class for SMI-S based EMC volume drivers.
Masking code to dynamically create a masking view This masking class is for EMC volume drivers based on SMI-S. It supports VMAX arrays.
-
add_volume_to_storage_group
(conn, controllerConfigService, storageGroupInstanceName, volumeInstance, volumeName, sgGroupName, extraSpecs)¶ Add a volume to an existing storage group.
Parameters: - conn – connection to ecom server
- controllerConfigService – the controller configuration service
- storageGroupInstanceName – storage group instance name
- volumeInstance – the volume instance
- volumeName – the name of the volume (String)
- sgGroupName – the name of the storage group (String)
- extraSpecs – additional info
Returns: int – rc the return code of the job
Returns: dict – the job dict
-
delete_storage_group
(conn, controllerConfigService, storageGroupInstanceName, extraSpecs)¶ Delete a given storage group.
Parameters: - conn – connection to the ecom server
- controllerConfigService – controller config service
- storageGroupInstanceName – the storage group instance
- extraSpecs – the extra specifications
-
find_new_masking_view
(conn, jobDict)¶ Find the newly created volume.
Parameters: - conn – the connection to the ecom server
- jobDict – the job dictionary
Returns: dict – maskingViewInstance
-
find_port_group
(conn, controllerConfigService, portGroupName)¶ Given the port Group name get the port group instance name.
Parameters: - conn – connection to the ecom server
- controllerConfigService – the controller configuration service
- portGroupName – the name of the port group you are getting
Returns: foundPortGroupInstanceName
-
get_associated_masking_groups_from_device
(conn, volumeInstanceName)¶ Get the associated storage groups from the volume Instance name.
Given the volume instance name get the associated storage group instance names.
Parameters: - conn – connection to the ecom server
- volumeInstanceName – the volume instance name
Returns: list – list of storage group instance names
-
get_devices_from_storage_group
(conn, storageGroupInstanceName)¶ Get the associated volume Instance names.
Given the storage group instance name get the associated volume Instance names.
Parameters: - conn – connection to the ecom server
- storageGroupInstanceName – the storage group instance name
Returns: list – volumeInstanceNames list of volume instance names
-
get_initiator_group_from_masking_view
(conn, maskingViewInstanceName)¶ Get initiator group in a masking view.
Parameters: - conn – the ecom connection
- maskingViewInstanceName – masking view instance name
Returns: initiatorGroupInstanceName or None if it is not found
-
get_masking_view_by_volume
(conn, volumeInstance, connector)¶ Given volume, retrieve the masking view instance name.
Parameters: - conn – the ecom connection
- volumeInstance – the volume instance
- connector – the connector object
Returns: masking view instance name
-
get_masking_view_from_storage_group
(conn, storageGroupInstanceName)¶ Get the associated maskingview instance name.
Given storage group instance name, get the associated masking view instance name.
Parameters: - conn – connection to the ecom server
- storageGroupInstanceName – the storage group instance name
Returns: instance name foundMaskingViewInstanceName
-
get_masking_views_by_initiator_group
(conn, initiatorGroupInstanceName)¶ Given initiator group, retrieve the masking view instance name.
Retrieve the list of masking view instances associated with the initiator group instance name.Parameters: - conn – the ecom connection
- initiatorGroupInstanceName – the instance name of the initiator group
Returns: list of masking view instance names
-
get_masking_views_by_port_group
(conn, portGroupInstanceName)¶ Given port group, retrieve the masking view instance name.
Parameters: - conn – the ecom connection
- portGroupInstanceName – the instance name of the port group
Returns: masking view instance names
-
get_or_create_masking_view_and_map_lun
(conn, maskingViewDict, extraSpecs)¶ Get or Create a masking view and add a volume to the storage group.
Given a masking view tuple either get or create a masking view and add the volume to the associated storage group. If it is a live migration operation then we do not need to remove the volume from any storage group (default or otherwise).
Parameters: - conn – the connection to ecom
- maskingViewDict – the masking view dict
- extraSpecs – additional info
Returns: dict – rollbackDict
Raises: VolumeBackendAPIException
-
get_port_group_from_masking_view
(conn, maskingViewInstanceName)¶ Get the port group in a masking view.
Parameters: - conn – the ecom connection
- maskingViewInstanceName – masking view instance name
Returns: portGroupInstanceName
-
get_target_wwns
(conn, mvInstanceName)¶ Get the DA ports wwns.
Parameters: - conn – the ecom connection
- mvInstanceName – masking view instance name
Returns: list – the list of target wwns for the masking view
-
remove_and_reset_members
(conn, controllerConfigService, volumeInstance, volumeName, extraSpecs, connector=None, reset=True)¶ This is called on a delete, unmap device or rollback.
If the connector is not None get the associated SG and remove volume from the storage group, otherwise it is a VMAX3 deletion.
Parameters: - conn – connection to the ecom server
- controllerConfigService – the controller configuration service
- volumeInstance – the volume Instance
- volumeName – the volume name
- extraSpecs – additional info
- connector – optional
- reset – reset, return to original SG (optional)
Returns: storageGroupInstanceName
-
remove_device_from_default_storage_group
(conn, controllerConfigService, volumeInstanceName, volumeName, fastPolicyName, extraSpecs)¶ Remove the volume from the default storage group.
Remove the volume from the default storage group for the FAST policy and return the default storage group instance name.
Parameters: - conn – the connection to the ecom server
- controllerConfigService – the controller config service
- volumeInstanceName – the volume instance name
- volumeName – the volume name (String)
- fastPolicyName – the fast policy name (String)
- extraSpecs – additional info
Returns: instance name defaultStorageGroupInstanceName
-
return_volume_to_default_storage_group_v3
(conn, controllerConfigurationService, volumeInstance, volumeName, extraSpecs)¶ Return volume to the default storage group in v3.
Parameters: - conn – the ecom connection
- controllerConfigurationService – controller config service
- volumeInstance – volumeInstance
- volumeName – the volume name
- extraSpecs – additional info
Raises: VolumeBackendAPIException
-
setup_masking_view
(conn, maskingViewDict, extraSpecs)¶
-