ZFS Storage Appliance Proxy
-
class ZFSSAApi
Bases: object
ZFSSA API proxy class
-
add_to_initiatorgroup(initiator, initiatorgroup)
Add an iSCSI initiator to initiatorgroup
-
add_to_targetgroup(iqn, targetgroup)
Add an iSCSI target to targetgroup.
-
clone_snapshot(pool, project, lun, snapshot, clone_proj, clone)
clone ‘snapshot’ to a lun named ‘clone’ in project ‘clone_proj’.
-
create_initiator(initiator, alias, chapuser=None, chapsecret=None)
Create an iSCSI initiator.
-
create_lun(pool, project, lun, volsize, targetgroup, specs)
Create a LUN.
specs - contains volume properties (e.g blocksize, compression).
-
create_project(pool, project, compression=None, logbias=None)
Create a project on a pool.
Check first whether the pool exists.
-
create_replication_action(host_pool, host_project, tgt_name, tgt_pool, volume)
Create a replication action.
-
create_schema(schema)
Create a custom ZFSSA schema.
-
create_schemas(schemas)
Create multiple custom ZFSSA schemas.
-
create_snapshot(pool, project, lun, snapshot)
create snapshot.
-
create_target(alias, interfaces=None, tchapuser=None, tchapsecret=None)
Create an iSCSI target.
Parameters: |
- interfaces – an array with network interfaces
- tchapsecret (tchapuser,) – target’s chapuser and chapsecret
|
Returns: | target iqn
|
-
delete_lun(pool, project, lun)
delete iscsi lun.
-
delete_project(pool, project)
Delete a project.
-
delete_replication_action(action_id)
Delete a replication action.
-
delete_snapshot(pool, project, lun, snapshot)
delete snapshot.
-
edit_inherit_replication_flag(pool, project, volume, set=True)
Edit the inherit replication flag for volume.
-
get_asn()
Returns appliance asn.
-
get_initiator_initiatorgroup(initiator)
Returns the initiator group of the initiator.
-
get_lun(pool, project, lun)
return iscsi lun properties.
-
get_lun_snapshot(pool, project, lun, snapshot)
Return iscsi lun snapshot properties.
-
get_pool_details(pool)
Get properties of a pool.
-
get_project_stats(pool, project)
Get project stats.
Get available space and total space of a project
returns (avail, total).
-
get_replication_source(asn)
Return the replication source json which has a matching asn.
-
get_replication_targets()
Returns all replication targets configured on the appliance.
-
get_target(alias)
Get an iSCSI target iqn.
-
login(auth_str)
Login to the appliance
-
logout()
-
move_volume(pool, project, volume, tgt_project)
Move a LUN from one project to another within the same pool.
-
num_clones(pool, project, lun, snapshot)
Checks whether snapshot has clones or not.
-
send_repl_update(action_id)
Send replication update
Send replication update to the target appliance and then wait for
it to complete.
-
set_host(host, timeout=None)
-
set_lun_initiatorgroup(pool, project, lun, initiatorgroup)
Set the initiatorgroup property of a LUN.
-
set_lun_props(pool, project, lun, **kargs)
set lun properties.
-
sever_replication(package, src_name, project=None)
Sever Replication at the destination.
This method will sever the package and move the volume to a project,
if project name is not passed in then the package name is selected
as the project name
-
verify_initiator(iqn)
Check whether initiator iqn exists.
-
verify_pool(pool)
Checks whether pool exists.
-
verify_project(pool, project)
Checks whether project exists.
-
verify_service(service, status='online')
Checks whether a service is online or not
-
verify_target(alias)
Check whether target alias exists.
-
class ZFSSANfsApi(*args, **kwargs)
Bases: cinder.volume.drivers.zfssa.zfssarest.ZFSSAApi
ZFSSA API proxy class for NFS driver
-
create_directory(dirname)
-
create_share(pool, project, share, args)
Create a share in the specified pool and project
-
create_snapshot(pool, project, share, snapshot)
create snapshot of a share
-
create_snapshot_of_volume_file(src_file='', dst_file='')
-
create_volume_from_snapshot_file(src_file='', dst_file='', method='COPY')
-
delete_file(filename)
-
delete_snapshot(pool, project, share, snapshot)
delete snapshot of a share
-
delete_snapshot_of_volume_file(src_file='')
-
disable_service(service)
-
enable_service(service)
-
get_share(pool, project, share)
return share properties
-
get_volume(volume)
-
modify_service(service, edit_args=None)
Edit service properties
-
project_path = '/api/storage/v1/pools/%s/projects/%s'
-
projects_path = '/api/storage/v1/pools/%s/projects'
-
rename_volume(src, dst)
-
services_path = '/api/service/v1/services/'
-
set_file_props(file, specs)
Set custom properties to a file.
-
set_webdav(https_path, auth_str)
-
share_path = '/api/storage/v1/pools/%s/projects/%s/filesystems/%s'
-
share_snapshot_path = '/api/storage/v1/pools/%s/projects/%s/filesystems/%s/snapshots/%s'
-
share_snapshots_path = '/api/storage/v1/pools/%s/projects/%s/filesystems/%s/snapshots'
-
shares_path = '/api/storage/v1/pools/%s/projects/%s/filesystems'
-
verify_share(pool, project, share)
Checks whether the share exists
-
factory_restclient(url, **kwargs)