The cinder.volume.drivers.pure Module

Volume driver for Pure Storage FlashArray storage system.

This driver requires Purity version 4.0.0 or later.

class PureBaseVolumeDriver(*args, **kwargs)

Bases: cinder.volume.drivers.san.san.SanDriver

Performs volume management on Pure Storage FlashArray.

SUPPORTED_REST_API_VERSIONS = ['1.2', '1.3', '1.4']
check_for_setup_error()
create_cgsnapshot(*args, **kwargs)
create_cloned_volume(*args, **kwargs)
create_consistencygroup(*args, **kwargs)
create_consistencygroup_from_src(*args, **kwargs)
create_export(context, volume, connector)
create_snapshot(*args, **kwargs)
create_volume(*args, **kwargs)
create_volume_from_snapshot(*args, **kwargs)
delete_cgsnapshot(*args, **kwargs)
delete_consistencygroup(*args, **kwargs)
delete_snapshot(*args, **kwargs)
delete_volume(*args, **kwargs)
do_setup(context)

Performs driver initialization steps that could raise exceptions.

ensure_export(context, volume)
extend_volume(*args, **kwargs)
get_volume_stats(*args, **kwargs)
manage_existing(*args, **kwargs)
manage_existing_get_size(*args, **kwargs)
manage_existing_snapshot(snapshot, existing_ref)

Brings an existing backend storage object under Cinder management.

We expect a snapshot name in the existing_ref that matches one in Purity.

manage_existing_snapshot_get_size(snapshot, existing_ref)

Return size of snapshot to be managed by manage_existing.

We expect a snapshot name in the existing_ref that matches one in Purity.

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

Retype from one volume type to another on the same backend.

For a Pure Array there is currently no differentiation between types of volumes. This means that changing from one type to another on the same array should be a no-op.

terminate_connection(*args, **kwargs)
unmanage(*args, **kwargs)
unmanage_snapshot(snapshot)

Removes the specified snapshot from Cinder management.

Does not delete the underlying backend storage object.

We expect a snapshot name in the existing_ref that matches one in Purity.

update_consistencygroup(*args, **kwargs)
class PureFCDriver(*args, **kwargs)

Bases: cinder.volume.drivers.pure.PureBaseVolumeDriver, cinder.volume.driver.FibreChannelDriver

VERSION = '1.0.0'
do_setup(context)
initialize_connection(*args, **kwargs)
terminate_connection(*args, **kwargs)
class PureISCSIDriver(*args, **kwargs)

Bases: cinder.volume.drivers.pure.PureBaseVolumeDriver, cinder.volume.drivers.san.san.SanISCSIDriver

VERSION = '3.0.0'
do_setup(context)
initialize_connection(*args, **kwargs)
log_debug_trace(f)

Previous topic

The cinder.volume.drivers.prophetstor.options Module

Next topic

The cinder.volume.drivers.quobyte Module

Project Source

This Page