The cinder.volume.drivers.nexenta.nfs Module

nexenta.nfs – Driver to store volumes on NexentaStor Appliance.

class NexentaNfsDriver(*args, **kwargs)

Bases: cinder.volume.drivers.nfs.NfsDriver

Executes volume driver commands on Nexenta Appliance.

Version history:

1.0.0 - Initial driver version. 1.1.0 - Auto sharing for enclosing folder. 1.1.1 - Added caching for NexentaStor appliance ‘volroot’ value. 1.1.2 - Ignore “folder does not exist” error in delete_volume and

delete_snapshot method.
1.1.3 - Redefined volume_backend_name attribute inherited from
RemoteFsDriver.

1.2.0 - Added migrate and retype methods. 1.3.0 - Extend volume method.

VERSION = '1.3.0'
VOLUME_FILE_NAME = 'volume'
backend_name
check_for_setup_error()

Verify that the volume for our folder exists.

Raise:LookupError
create_cloned_volume(volume, src_vref)

Creates a clone of the specified volume.

Parameters:
  • volume – new volume reference
  • src_vref – source volume reference
create_snapshot(snapshot)

Creates a snapshot.

Parameters:snapshot – snapshot reference
create_volume_from_snapshot(volume, snapshot)

Create new volume from other’s snapshot on appliance.

Parameters:
  • volume – reference of volume to be created
  • snapshot – reference of source snapshot
delete_snapshot(snapshot)

Deletes a snapshot.

Parameters:snapshot – snapshot reference
delete_volume(volume)

Deletes a logical volume.

Parameters:volume – volume reference
do_setup(context)
driver_prefix = 'nexenta'
extend_volume(volume, new_size)

Extend an existing volume.

Parameters:
  • volume – volume reference
  • new_size – volume new size in GB
initialize_connection(volume, connector)

Allow connection to connector and return connection info.

Parameters:
  • volume – volume reference
  • connector – connector reference
local_path(volume)

Get volume path (mounted locally fs path) for given volume.

Parameters:volume – volume reference
migrate_volume(ctxt, volume, host)

Migrate if volume and host are managed by Nexenta appliance.

Parameters:
  • ctxt – context
  • volume – a dictionary describing the volume to migrate
  • host – a dictionary describing the host to migrate to
remote_path(volume)

Get volume path (mounted remotely fs path) for given volume.

Parameters:volume – volume reference
retype(context, volume, new_type, diff, host)

Convert the volume to be of the new type.

Parameters:
  • ctxt – Context
  • volume – A dictionary describing the volume to migrate
  • new_type – A dictionary describing the volume type to convert to
  • diff – A dictionary with the difference between the two types
  • host – A dictionary describing the host to migrate to, where host[‘host’] is its name, and host[‘capabilities’] is a dictionary of its reported capabilities.
volume_backend_name = 'NexentaNfsDriver'