The cinder.volume.drivers.dell_emc.vnx.common Module

The cinder.volume.drivers.dell_emc.vnx.common Module

VNX Common Utils

class ExtraSpecs(extra_specs, group_specs=None)

Bases: object

PROVISION_DEFAULT = None
TIER_DEFAULT = None
apply_default_values()
classmethod from_group(group)
classmethod from_lun(lun)
classmethod from_volume(volume)
classmethod from_volume_type(type)
is_group_replication_enabled
is_replication_enabled
match_with_lun(lun)
classmethod set_defaults(provision_default, tier_default)
validate(enabler_status)

Checks whether the extra specs are valid.

Parameters:enabler_status – Instance of VNXEnablerStatus
class FCTargetData(volume_id, is_discovered, wwn=None, lun=None, initiator_target_map=None)

Bases: dict

to_dict()

Converts to the dict.

It helps serialize and deserialize the data before returning to nova.

class Host(name, initiators, ip=None, wwpns=None)

Bases: object

The model of a host which acts as an initiator to access the storage.

class ISCSITargetData(volume_id, is_discovered, iqn='unknown', iqns=None, portal='unknown', portals=None, lun='unknown', luns=None)

Bases: dict

to_dict()

Converts to the dict.

It helps serialize and deserialize the data before returning to nova.

class LUNState

Bases: object

FAULTED = 'Faulted'
INITIALIZING = 'Initializing'
READY = 'Ready'
class PoolState

Bases: object

DELETING = 'Deleting'
INITIALIZING = 'Initializing'
OFFLINE = 'Offline'
VALID_CREATE_LUN_STATE = ('Initializing', 'Offline', 'Deleting')
class ReplicationDevice(replication_device)

Bases: object

backend_id
pool_name
san_ip
san_login
san_password
storage_vnx_authentication_type
storage_vnx_security_file_dir
class ReplicationDeviceList(configuration)

Bases: list

Replication devices configured in cinder.conf

Cinder supports multiple replication_device, while VNX driver only support one replication_device for now.

devices
classmethod get_backend_ids(config)

Returns all configured device_id.

get_device(backend_id)
next()
parse_configuration()
class VNXEnablerStatus(dedup=False, compression=False, fast=False, thin=False, snap=False)

Bases: object

class VNXMirrorView(primary_client, secondary_client)

Bases: object

add_image(mirror_name, secondary_lun_id)
add_mirror(group_name, mirror_name)
create_mirror(name, primary_lun_id)
create_mirror_group(group_name)
create_secondary_lun(pool_name, lun_name, size, provision, tier)
delete_mirror(mirror_name)
delete_mirror_group(group_name)
delete_secondary_lun(lun_name)
destroy_mirror(mirror_name, secondary_lun_name)

Destroy the mirror view’s related VNX objects.

NOTE: primary lun will not be deleted here. :param mirror_name: name of mirror to be destroyed :param secondary_lun_name: name of LUN name

fracture_image(mirror_name)
fracture_mirror_group(group_name)
promote_image(mirror_name)

Promote the image on the secondary array.

promote_mirror_group(group_name)

Promote the mirror group on the secondary array.

remove_image(mirror_name)
remove_mirror(group_name, mirror_name)
sync_mirror_group(group_name)
class Volume(name, id, vnx_lun_id=None)

Bases: object

The internal volume which is used to pass in method call.

exception WaitUtilTimeoutException(message=None, **kwargs)

Bases: cinder.exception.VolumeDriverException

Raised when timeout occurs in wait_until.

Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.