Previous topic

The nova.volume.manager Module

Next topic

The nova.volume.nexenta.jsonrpc Module

This Page

Psst... hey. You're reading the latest content, but it might be out of sync with code. You can read Nova 2011.2 docs or all OpenStack docs too.

The nova.volume.netapp Module

Volume driver for NetApp storage systems.

This driver requires NetApp OnCommand 5.0 and one or more Data ONTAP 7-mode storage systems with installed iSCSI licenses.

class NetAppISCSIDriver(*args, **kwargs)

Bases: nova.volume.driver.ISCSIDriver

NetApp iSCSI volume driver.

check_for_export(context, volume_id)
check_for_setup_error()

Invoke a web services API to make sure we can talk to the server.

create_export(context, volume)

Driver entry point to get the iSCSI details about a new volume

create_snapshot(snapshot)
create_volume(volume)

Driver entry point for creating a new volume

create_volume_from_snapshot(volume, snapshot)
delete_snapshot(snapshot)
delete_volume(volume)

Driver entry point for destroying existing volumes

do_setup(context)

Called one time by the manager after the driver is loaded. Validate the flags we care about and setup the suds (web services) client.

ensure_export(context, volume)

Driver entry point to get the iSCSI details about an existing volume

initialize_connection(volume, connector)

Do the LUN masking on the storage system so the initiator can access the LUN on the target. Also return the iSCSI properties so the initiator can find the LUN. This implementation does not call _get_iscsi_properties() to get the properties because cannot store the LUN number in the database. We only find out what the LUN number will be during this method call so we construct the properties dictionary ourselves.

remove_export(context, volume)

Since exporting is idempotent in this driver, we have nothing to do for unexporting.

terminate_connection(volume, connector)

Unmask the LUN on the storage system so the given intiator can no longer access it.