The cinder.volume.drivers.eqlx Module

Volume driver for Dell EqualLogic Storage.

class DellEQLSanISCSIDriver(*args, **kwargs)

Bases: cinder.volume.drivers.san.san.SanISCSIDriver

Implements commands for Dell EqualLogic SAN ISCSI management.

To enable the driver add the following line to the cinder configuration:
volume_driver=cinder.volume.drivers.eqlx.DellEQLSanISCSIDriver
Driver’s prerequisites are:
  • a separate volume group set up and running on the SAN

  • SSH access to the SAN

  • a special user must be created which must be able to
    • create/delete volumes and snapshots;
    • clone snapshots into volumes;
    • modify volume access records;

The access credentials to the SAN are provided by means of the following flags

san_ip=<ip_address> san_login=<user name> san_password=<user password> san_private_key=<file containing SSH private key>
Thin provision of volumes is enabled by default, to disable it use:
san_thin_provision=false

In order to use target CHAP authentication (which is disabled by default) SAN administrator must create a local CHAP user and specify the following flags for the driver:

use_chap_auth=True chap_login=<chap_login> chap_password=<chap_password>

eqlx_group_name parameter actually represents the CLI prompt message without ‘>’ ending. E.g. if prompt looks like ‘group-0>’, then the parameter must be set to ‘group-0’

Version history:
1.0 - Initial driver 1.1.0 - Misc fixes 1.2.0 - Deprecated eqlx_cli_timeout infavor of ssh_conn_timeout
VERSION = '1.2.0'
add_multihost_access(volume)

Add multihost-access to a volume. Needed for live migration.

check_for_setup_error()
create_cloned_volume(volume, src_vref)

Creates a clone of the specified volume.

create_export(context, volume, connector)

Create an export of a volume.

Driver has nothing to do here for the volume has been exported already by the SAN, right after it’s creation.

create_snapshot(snapshot)

Create snapshot of existing volume on appliance.

create_volume(volume)

Create a volume.

create_volume_from_snapshot(volume, snapshot)

Create new volume from other volume’s snapshot on appliance.

delete_snapshot(snapshot)

Delete volume’s snapshot.

delete_volume(volume)

Delete a volume.

do_setup(context)

Disable cli confirmation and tune output format.

ensure_export(context, volume)

Ensure an export of a volume.

Driver has nothing to do here for the volume has been exported already by the SAN, right after it’s creation. We will just make sure that the volume exists on the array and issue a warning.

extend_volume(volume, new_size)

Extend the size of the volume.

initialize_connection(volume, connector)

Restrict access to a volume.

local_path(volume)
remove_export(context, volume)

Remove an export of a volume.

Driver has nothing to do here for the volume has been exported already by the SAN, right after it’s creation. Nothing to remove since there’s nothing exported.

terminate_connection(volume, connector, force=False, **kwargs)

Remove access restrictions from a volume.

with_timeout(f)

Previous topic

The cinder.volume.drivers.emc.xtremio Module

Next topic

The cinder.volume.drivers.fujitsu.eternus_dx_common Module

Project Source

This Page