The cinder.volume.drivers.qnap Module

Volume driver for QNAP Storage. This driver supports QNAP Storage for iSCSI.

class QnapAPIExecutor(*args, **kwargs)

Bases: object

Makes QNAP API calls for ES NAS.

add_target_init(*args, **kwargs)

Add target acl.

api_delete_snapshot(*args, **kwargs)

Execute CGI to delete snapshot from source lun NAA.

clone_snapshot(*args, **kwargs)

Execute CGI to clone snapshot as unmap lun.

create_lun(*args, **kwargs)

Create lun.

create_snapshot_api(*args, **kwargs)

Execute CGI to create snapshot from source lun NAA.

create_target(*args, **kwargs)

Create target on nas and return target index.

delete_lun(*args, **kwargs)

Execute delete lun API.

disable_lun(*args, **kwargs)

Disable lun from sepecific target.

edit_lun(*args, **kwargs)

Extend lun.

execute_login()

Login and return sid.

get_all_iscsi_portal_setting(*args, **kwargs)

Execute get_all_iscsi_portal_setting API.

get_basic_info(management_url)

Get the basic information of NAS.

get_ethernet_ip(*args, **kwargs)

Execute get_ethernet_ip API.

get_iscsi_portal_info(*args, **kwargs)

Get iscsi portal info.

get_lun_info(*args, **kwargs)

Execute get_lun_info API.

get_snapshot_info(*args, **kwargs)

Execute get_snapshot_info API.

get_specific_poolinfo(*args, **kwargs)

Execute deleteInitiatorGrp API.

get_target_info(*args, **kwargs)

Get target info.

map_lun(*args, **kwargs)

Map lun to sepecific target.

remove_target_init(target_iqn, init_iqn)

Remote target acl.

unmap_lun(*args, **kwargs)

Unmap lun to sepecific target.

class QnapAPIExecutorTES(*args, **kwargs)

Bases: cinder.volume.drivers.qnap.QnapAPIExecutor

Makes QNAP API calls for TES NAS.

get_ethernet_ip(*args, **kwargs)

Execute get_ethernet_ip API.

class QnapAPIExecutorTS(*args, **kwargs)

Bases: cinder.volume.drivers.qnap.QnapAPIExecutor

Makes QNAP API calls for TS NAS.

create_target(*args, **kwargs)

Create target on nas and return target index.

get_ethernet_ip(*args, **kwargs)

Execute get_ethernet_ip API.

get_snapshot_info(*args, **kwargs)

Execute get_snapshot_info API.

get_target_info(*args, **kwargs)

Get nas target info.

remove_target_init(*args, **kwargs)

Remove target acl.

class QnapISCSIDriver(*args, **kwargs)

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

OpenStack driver to enable QNAP Storage.

Version history:
1.0.0 - Initial driver (Only iSCSI)
CI_WIKI_NAME = 'QNAP_CI'
VERSION = '1.0.0'
check_for_setup_error()

Check the status of setup.

creat_api_executor()

Create api executor by nas model.

create_cloned_volume(volume, src_vref)

Create a clone of the specified volume.

create_snapshot(snapshot)

Create a snapshot.

create_volume(volume)

Create a new volume.

create_volume_from_snapshot(volume, snapshot)

Create a volume from a snapshot.

delete_snapshot(snapshot)

Delete a snapshot.

delete_volume(volume)

Delete the specified volume.

do_setup(context)

Setup the QNAP Cinder volume driver.

enum(*sequential, **named)

Enum method.

extend_volume(volume, new_size)

Extend an existing volume.

get_volume_stats(refresh=False)

Get volume stats. This is more of getting group stats.

initialize_connection(volume, connector)

Create a target with initiator iqn to attach a volume.

terminate_connection(volume, connector, **kwargs)

Driver entry point to unattach a volume from an instance.

update_migrated_volume(context, volume, new_volume, original_volume_status)

Return model update for migrated volume.