+ CLI Guide Overview: Difference between revisions

From OSNEXUS Online Documentation Site
Jump to navigation Jump to search
Line 90: Line 90:
</pre>
</pre>


== Storage Volume Access Control (LUN Masking) ==


==Alert Management Commands==
=== volume-assign [va-add] ===
=== alert-list [a-list] ===
Enables access to the specific volume from the specified host.
Returns a list of all the alerts in the system.  Some alerts are informational, such as the initial alert that is raised when the system starts up so in general you should see some number of alerts when you run alert-list unless the alerts have been recently cleared.  The system will start to automatically the oldest alerts after the system has recorded more than 100 alerts into the database.  You can adjust the settings for the 'admin' user account or your own custom user account to indicate alerts you's like to have sent to you via email.
 
=== alert-get [a-get] ===
Returns information about a specific alert given its unique ID.
<pre>
<pre>
<--id>           :: Unique identifer (GUID) for the object.
<--volume>       :: Name of the storage volume or its unique ID (GUID).
<--host-list>    :: A list of one or more hosts by name or ID.
</pre>
</pre>
=== alert-raise [a-raise] ===
 
Allows one to raise a user generated alert for testing the SMTP server configuration settings.
 
=== volume-unassign [va-remove] ===
Disables access to the specific volume from the specified host.
<pre>
<pre>
<--message>     :: Message string to be echoed back from the server.
<--volume>       :: Name of the storage volume or its unique ID (GUID).
[--alert-severity] :: Severity of the user generated alert to be raise. [always, critical,
<--host-list>    :: A list of one or more hosts by name or ID.
                            error, *info, warning]
</pre>
</pre>
=== alert-clear [a-clear] ===
 
      :: Deletes the alert with the specified ID.
 
=== volume-unassign-all [va-remove-all] ===
Disables all access to the specified volume, host, or host group.
<pre>
<pre>
<--id>           :: Unique identifer (GUID) for the object.
<--volume>       :: Name of the storage volume or its unique ID (GUID).
</pre>
</pre>
=== alert-clear-all [a-clear-all] ===
Clears all the alerts in the system.


=== alert-config-get [ac-get] ===
Alert configuration settings indicate which SMTP server should be used to report alert notifications via email.


=== alert-config-set [ac-set] ===
=== volume-assign-list [va-list] ===
Sets the alert configuration settings such as the administrator email address, SMTP server address, etc.  Be sure to use the alert-raise command to generate a test alert after you modify the alert configuration settings to ensure that emails are being properly sent.
Returns a list of all the volume to host assignments, optionally filtered by host or storage volume.
<pre>
<pre>
[--sender-email] :: Sender email address to be used for alert emails sent from the storage  
[--volume]       :: Name of the storage volume or its unique ID (GUID).
                            system.
[--host]         :: Name of the host or its unique ID (GUID).
[--smtp-server] :: IP Address of the SMTP service where emails should be routed through.
[--smtp-user]    :: SMTP user name to use for secure SMTP access to your SMTP server for
                            sending alert emails.
[--smtp-password] :: SMTP password to use for secure SMTP access to your SMTP server.
[--smtp-auth]    :: SMTP security mode.
[--support-email] :: Email address for local customer support.
[--freespace-warning] :: The percentage of free-space left in a pool at which a warning is sent
                            to indicate pool growth plans should be made.
[--freespace-alert] :: The percentage (default=10) of free-space left in a pool at which alerts
                            are generated.
[--freespace-critical] :: The percentage (default=5) of free-space left in a pool at which all
                            provisioning operations are blocked.
</pre>
</pre>
==System Event Commands==
 
=== event-list [ev-list] ===
 
Returns a list of all the low-level internal events in the event queue. This can be used to develop scripts that will monitor your QuantaStor system for changes so that it's active status can be quickly updated in a custom management interface.
== Alert Mangement ==
 
=== alert-list [a-list] ===
Returns a list of all the alerts from all systems in the grid. Adjust the settings for the 'admin' or custom user account(s) to indicate alerts to be sent out via email call-home mechanism.
 
=== alert-get [a-get] ===
Gets information about a specific alert.
<pre>
<pre>
[--index]        :: Starting event index of where to begin listing events from.
<--id>          :: Unique identifier (GUID) for the object.
[--max]          :: Maxiumum number of events to enumerate.
[--time-stamp]  :: Time-stamp of the service.
</pre>
</pre>
==Task Management Commands==
=== task-list [t-list] ===
Returns a list of all the tasks including active, completed, and failed tasks.  Whenever you run a command in QuantaStor it is queue in the task management system and then executed automatically if the necessary objects can be locked.  This means that you can run any command asynchronously or synchronously.  By default the CLI waits for the task to complete so it blocks by default.  You can have the CLI not wait by specifying the --async flag to any operation.  In such cases the CLI will return immediately.


=== task-get [t-get] ===
 
Returns information about a specific task.
=== alert-raise [a-raise] ===
Allows one to raise a user generated alert for testing the SMTP server configuration settings.
<pre>
<pre>
<--task>         :: ID of a task.
<--message>     :: Message string to be echoed back from the server.
[--alert-severity] :: Severity of the user generated alert to be raise. [always, critical,
                            error, *info, warning]
</pre>
</pre>
=== task-cancel [t-cancel] ===
 
Cancels the specified task that is in the queue or is running.  Not all tasks can be cancelled after they've started, but any queued task can be canceled.
 
=== alert-clear [a-clear] ===
Deletes the alert with the specified ID.
<pre>
<pre>
<--task>         :: ID of a task.
<--id>           :: Unique identifier (GUID) for the object.
</pre>
</pre>


=== task-clear-all [t-clear-all] ===
Clears all the completed and/or failed tasks from the task log so that only the running and queued tasks remain, if any.


==License Management Commands==
=== alert-clear-all [a-clear-all] ===
=== license-get [lic-get] ===  
Clears all the alerts.
Shows the current license key info, and any activation request code.
 
<pre>
=== alert-config-get [ac-get] ===
<--key>          :: Unique license key identifier, use key-list to get a list of these.
Alert configuration settings indicate where alert notifications should be sent.
</pre>
=== license-list [lic-list] ===  
Returns a list of all the registered license keys.


=== license-add [lic-add] ===  
=== alert-config-set [ac-set] ===
Adds a license key using a license key block specified in a key file. In general, you have 7 days to activate your license using online activation of activation via email.  If you do not activate after the 7 days the system will continue to run but you will not be able to make configuration changes.
Sets the alert configuration settings such as the administrator email address, SMTP server address, etc. Be sure to use the alert-raise command to generate a test alert after you modify the alert configuration settings to ensure that emails are being properly sent.
<pre>
<pre>
<--key-file>    :: Key file you recieved which contains a key block section.
[--sender-email] :: Sender email address to be used for alert emails sent from the storage
</pre>
                            system.
=== license-remove [lic-remove] ===
[--smtp-server]  :: IP Address of the SMTP service where emails should be routed through.
Removes the specified license key.
[--smtp-user]    :: SMTP user name to use for secure SMTP access to your SMTP server for
<pre>
                            sending alert emails.
<--key>          :: Unique license key identifier, use key-list to get a list of these.
[--smtp-password] :: SMTP password to use for secure SMTP access to your SMTP server.
</pre>
[--smtp-auth]    :: SMTP security mode.
=== license-activate [lic-act] ===
[--support-email] :: Email address for local customer support.
Activates the system using a activation key received from customer support.
[--freespace-warning] :: The percentage of free-space left in a pool at which a warning is sent
<pre>
                            to indicate pool growth plans should be made.
<--activation-key> :: Activation key you'll receive from customer support after you send the  
[--freespace-alert] :: The percentage (default=10) of free-space left in a pool at which alerts
                            activation request code.
                            are generated.
[--freespace-critical] :: The percentage (default=5) of free-space left in a pool at which all
                            provisioning operations are blocked.
[--pagerduty-key] :: Specifies the service key to which alerts will be posted to PagerDuty. 
                            Please see www.pagerduty.com for more detail on service keys.
</pre>
 
 
=== event-list [ev-list] ===
Returns a list of all the internal events in the event queue (used for service monitoring).
<pre>
[--index]        :: Starting event index of where to begin listing events from.
[--max]          :: Maximum number of events to enumerate.
[--time-stamp]  :: Time-stamp of the service.
</pre>
</pre>
=== license-activate-online [lic-aon] ===
 
Requests automatic activation via the online OSNEXUS license activation service.
 
== Backup Policy Management ==
 
=== backup-job-list [bj-list] ===
Returns a list of backup jobs in the system.
 
=== backup-policy-get [bp-get] ===
Returns detailed information on a specific backup policy.
<pre>
<pre>
<--key>         :: Unique license key identifier, use key-list to get a list of these.
<--policy>       :: A backup policy name or ID which is associated with a network share to  
                            do ingest backups.
</pre>
</pre>


==User Management Commands==
 
=== user-add [u-add] ===
=== backup-policy-list [bp-list] ===
Adds a new user account to the system.  Note that this does *not* result in a new console account from which you can SSH into the system. This is a management account which allows you to use the qs CLI remotely and/or login via the QuantaStor Manager web interface for managing the system.
Returns a list of backup policies in the system.
 
=== backup-policy-create [bp-create] ===
Creates a ingest backup policy which pull data from NFS shares to the QuantaStor appliance.
<pre>
<pre>
<--name>        :: User names may include any alpha-numeric characters '_' and '-', no
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                             spaces are allowed.
                             not allowed.
<--password>     :: A password for the user to use when accessing the QuantaStor management
<--desc>         :: A description for the object.
                            interface.
<--network-share> :: Name or ID of a CIFS/NFS network share.
<--role>         :: Name of a security role or its unique ID (GUID).
<--remote-hostname> :: Name of the remote host containing NFS shares to be backed up
[--first-name]  :: User's first name; enclose in double-quotes if it contains spaces.
<--remote-export-path> :: Remote export path to be mounted to access the data to be backed up.
[--last-name]   :: User's last name; enclose in double-quotes if it contains spaces.
[--remote-export-type] :: Remote mount type (currently NFS only) [*nfs]
[--email]       :: An email address of the form 'user@example.com' without the quotes.
[--retain-rules] :: Retention rules (atime, ctime, mtime) [atime, ctime, *mtime]
[--desc]         :: A description for the object.
[--policy-type] :: Backup policy type [*inbound]
[--default-chap-user] :: Default CHAP username for storage volumes owned by a user account which
[--scan-threads] :: Number of concurrent threads for walking/scanning the specified target
                             have the CHAP policy set to 'use user default CHAP settings'
                             export
[--default-chap-pass] :: Default CHAP password for storage volumes owned by a user account which  
[--hours]        :: For the specified days of the week, snapshots will be created at the
                             have the CHAP policy set to 'use user default CHAP settings'
                            specified hours. [10am, 10pm, 11am, 11pm, 12am, 12pm, 1am, 1pm, 2am, 2pm,
[--alerts]       :: Alert types to subscribe to. Alerts at the subscribed level are sent to  
                            *3am, 3pm, 4am, 4pm, 5am, 5pm, 6am, 6pm, 7am, 7pm, 8am, 8pm, 9am, 9pm]
                            the user's email address automatically when a SMTP server is configured.  
[--days]         :: The days of the week on which this schedule should create snapshots.
                             [critical, error, info, *none, warning]
                             [fri, mon, sat, *sun, thu, tue, wed]
[--retain-period] :: Number of days of file history on the specified filer export to backup
[--purge-policy] :: Indicates how old files should be cleaned up / purged from the backup.  
                             [after-backup, *daily, never, weekly]
[--enabled]     :: Set to enabled to activate the backup policy.
</pre>
</pre>
=== user-modify [u-modify] ===
 
Modifies the specified user name, role, and/or description.
 
=== backup-policy-modify [bp-modify] ===
Modifies the specified backup policy settings.
<pre>
<pre>
<--user>         :: Name or ID (GUID) of a existing user.
<--policy>       :: A backup policy name or ID which is associated with a network share to
[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are  
                            do ingest backups.
<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are  
                             not allowed.
                             not allowed.
[--role]         :: Name of a security role or its unique ID (GUID).
<--desc>         :: A description for the object.
[--desc]        :: A description for the object.
<--network-share> :: Name or ID of a CIFS/NFS network share.
[--default-chap-user] :: Default CHAP username for storage volumes owned by a user account which
<--remote-hostname> :: Name of the remote host containing NFS shares to be backed up
                            have the CHAP policy set to 'use user default CHAP settings'
<--remote-export-path> :: Remote export path to be mounted to access the data to be backed up.
[--default-chap-pass] :: Default CHAP password for storage volumes owned by a user account which
[--remote-export-type] :: Remote mount type (currently NFS only) [*nfs]
                             have the CHAP policy set to 'use user default CHAP settings'
[--retain-rules] :: Retention rules (atime, ctime, mtime) [atime, ctime, *mtime]
[--alerts]       :: Alert types to subscribe to. Alerts at the subscribed level are sent to
[--policy-type]  :: Backup policy type [*inbound]
                             the user's email address automatically when a SMTP server is configured.  
[--scan-threads] :: Number of concurrent threads for walking/scanning the specified target
                             [critical, error, info, *none, warning]
                             export
[--hours]       :: For the specified days of the week, snapshots will be created at the  
                             specified hours. [10am, 10pm, 11am, 11pm, 12am, 12pm, 1am, 1pm, 2am, 2pm,
                            *3am, 3pm, 4am, 4pm, 5am, 5pm, 6am, 6pm, 7am, 7pm, 8am, 8pm, 9am, 9pm]
[--days]        :: The days of the week on which this schedule should create snapshots.  
                             [fri, mon, sat, *sun, thu, tue, wed]
[--retain-period] :: retain-period
[--purge-policy] :: Indicates how old files should be cleaned up / purged from the backup.
                            [after-backup, *daily, never, weekly]
[--enabled]      :: Set to enabled to activate the backup policy.
</pre>
</pre>
=== user-password-set [passwd] ===
 
Changes the password for the specified user
 
=== backup-policy-delete [bp-delete] ===
Deletes the specified backup policy.
<pre>
<pre>
<--user>         :: Name or ID (GUID) of a existing user.
<--policy>       :: A backup policy name or ID which is associated with a network share to
<--new-password> :: New password for the user.
                            do ingest backups.
<--old-password> :: Old password for the user.
</pre>
</pre>
=== user-remove [u-remove] ===
 
Removes the specified user identified by name or ID.
 
=== backup-policy-enable [bp-enable] ===
Enables a backup policy that was previously disabled.
<pre>
<pre>
<--user>         :: Name or ID (GUID) of a existing user.
<--policy>       :: A backup policy name or ID which is associated with a network share to
                            do ingest backups.
</pre>
</pre>
=== user-list [u-list] ===
Returns a list of all the users.


=== user-get [u-get] ===
 
Gets information about the specified user.
=== backup-policy-disable [bp-disable] ===
Disables the specified backup policy so job are not automatically run.
<pre>
<pre>
<--user>         :: Name or ID (GUID) of a existing user.
<--policy>       :: A backup policy name or ID which is associated with a network share to
                            do ingest backups.
</pre>
</pre>


==User Group Management Commands==
 
=== user-group-create [ug-create] ===
=== backup-policy-trigger [bp-trigger] ===
Creates a new storage user group comprised of the specified storage users.  User groups make it easier to manage large numbers of storage clouds.
Triggers the specified backup policy which in turn starts a backup job.
<pre>
<pre>
<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are
<--policy>       :: A backup policy name or ID which is associated with a network share to
                             not allowed.
                             do ingest backups.
<--user-list>   :: A list of one or more users.
</pre>
[--desc]        :: A description for the object.
 
[--flags]        :: Optional flags for the operation. [async]
 
</pre>
== Cloud Container Management ==
=== user-group-modify [ug-modify] ===
 
Modifies the name and/or description of a storage user group.
=== cloud-backup-provider-get [cbp-get] ===
Returns detailed information about the specified cloud provider.
<pre>
<pre>
<--user-group>   :: An arbirary group of one or more users.
<--provider>     :: A cloud provider is a storage provider like Amazon S3 which QuantaStor
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                             utilizes for backup in the cloud.
                             not allowed.
[--desc]        :: A description for the object.
</pre>
</pre>
=== user-group-delete [ug-delete] ===
 
Deletes a storage user group, the users are not deleted unless the delete-users flag is set.
 
=== cloud-backup-provider-list [cbp-list] ===
Returns the list of supported cloud providers.
 
=== cloud-backup-credentials-add [cbcred-add] ===
Adds cloud provider credentials to enable cloud backup to cloud backup containers.
<pre>
<pre>
<--user-group>  :: An arbirary group of one or more users.
<--access-key>  :: The access key provided by your cloud storage provider for accessing
[--flags]        :: Optional flags for the operation. [async, force]
                            your cloud storage account.
<--secret-key>  :: The secret key provided by your cloud storage provider for accessing
                            your cloud storage account.
</pre>
</pre>
=== user-group-list [ug-list] ===
Returns a list of all the storage user groups.


=== user-group-get [ug-get] ===
 
Returns information about a specific storage user group.
=== cloud-backup-credentials-remove [cbcred-remove] ===
Removes the specified cloud provider credentials
<pre>
<pre>
<--user-group>   :: An arbirary group of one or more users.
<--provider-creds> :: Credentials for accessing your cloud storage provider account.  With
                            Amazon S3 this is your 'Access Key ID' and your 'Secret Access Key'.
</pre>
</pre>
=== user-group-user-add [ugu-add] ===
 
Adds one or more users to the specified user group.
 
=== cloud-backup-credentials-get [cbcred-get] ===
Returns information about the specified cloud provider credential.
<pre>
<pre>
<--user-group>   :: An arbirary group of one or more users.
<--provider-creds> :: Credentials for accessing your cloud storage provider account. With
<--user-list>    :: A list of one or more users.
                            Amazon S3 this is your 'Access Key ID' and your 'Secret Access Key'.
</pre>
=== user-group-user-remove [ugu-remove] ===
Removes one or more users from the specified user group
<pre>
<--user-group>  :: An arbirary group of one or more users.
<--user-list>    :: A list of one or more users.
</pre>
</pre>


==Role Based Access Control Management Commands==
 
=== role-add [r-add] ===
=== cloud-backup-credentials-list [cbcred-list] ===
Adds a new role to the role based access control (RBAC) system.
Returns a list of all the cloud provider credentials in the system. Passwords are masked.
 
=== cloud-backup-container-get [cbc-get] ===
Returns detailed information on a specific cloud backup container.
<pre>
<--container>    :: A cloud backup container into which storage volumes can be backed up.  A
                            cloud backup container is like an unlimited storage pool in the cloud.
</pre>
 
 
=== cloud-backup-container-list [cbc-list] ===
Returns a list of cloud backup containers in the system.
 
=== cloud-backup-container-create [cbc-create] ===
Creates a cloud backup container into which cloud backups of storage volumes can be made.
<pre>
<pre>
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are  
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are  
                             not allowed.
                             not allowed.
[--desc]         :: A description for the object.
<--desc>         :: A description for the object.
[--permissions] :: List of permissions and/or permission groups to add to the specified
<--provider-creds> :: Credentials for accessing your cloud storage provider account. With
                             role.
                            Amazon S3 this is your 'Access Key ID' and your 'Secret Access Key'.
<--locaiton>    :: Cloud storage provider endpoint location.
<--encryption-key> :: A passphrase which is used to encrypt all the data sent to the cloud
                             container.
<--enable-nfs>  :: Enable NFS sharing of the cloud container.
</pre>
</pre>
=== role-modify [r-modify] ===
 
Modifies the name and/or description of a role
 
<pre>
=== cloud-backup-container-delete [cbc-delete] ===
<--role>         :: Name of a security role or its unique ID (GUID).
Deletes the specified cloud backup container. WARNING, all data in the container will be destroyed.
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
<pre>
                             not allowed.
<--container>   :: A cloud backup container into which storage volumes can be backed up. A
[--desc]        :: A description for the object.
                             cloud backup container is like an unlimited storage pool in the cloud.
</pre>
</pre>
=== role-remove [r-remove] ===
 
Removes the specified role identified by name or ID
 
=== cloud-backup-container-add [cbc-add] ===
Recovers a cloud backup container that was previously removed or used with a prior installation.
<pre>
<pre>
<--role>         :: Name of a security role or its unique ID (GUID).
<--provider-creds> :: Credentials for accessing your cloud storage provider account.  With
                            Amazon S3 this is your 'Access Key ID' and your 'Secret Access Key'.
<--locaiton>    :: Cloud storage provider endpoint location.
<--encryption-key> :: A passphrase which is used to encrypt all the data sent to the cloud
                            container.
<--storage-url>  :: The Amazon S3 or other storage URL used to identify a cloud backup
                            container.
<--enable-nfs>  :: Enable NFS sharing of the cloud container.
</pre>
</pre>
=== role-list [r-list] ===
Returns a list of all the defined roles the RBAC system.


=== role-get [r-get] ===
 
Gets information about the specified role.
=== cloud-backup-container-modify [cbc-modify] ===
Modifies the specified cloud backup container settings.
<pre>
<pre>
<--role>        :: Name of a security role or its unique ID (GUID).
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
</pre>
                            not allowed.
=== role-permission-add [rp-add] ===
<--desc>         :: A description for the object.
Adds additional permissions and/or permission groups to the specified role.
<--container>    :: A cloud backup container into which storage volumes can be backed up.  A
<pre>
                            cloud backup container is like an unlimited storage pool in the cloud.
<--role>         :: Name of a security role or its unique ID (GUID).
<--encryption-key> :: A passphrase which is used to encrypt all the data sent to the cloud
<--permissions> :: List of permissions and/or permission groups to add to the specified
                            container.
                            role.
<--enable-nfs>   :: Enable NFS sharing of the cloud container.
</pre>
</pre>
=== role-permission-remove [rp-remove] ===
 
Removes one or more permissions and/or permission groups from the specified role.
 
=== cloud-backup-container-remove [cbc-remove] ===
Removes the specified cloud backup container from the system but does not delete any backup data in the cloud.
<pre>
<pre>
<--role>         :: Name of a security role or its unique ID (GUID).
<--container>   :: A cloud backup container into which storage volumes can be backed upA
<--permissions> :: List of permissions and/or permission groups to add to the specified
                             cloud backup container is like an unlimited storage pool in the cloud.
                             role.
</pre>
</pre>


==Session Commands==
 
=== session-list [sn-list] ===
=== cloud-backup-container-enable [cbc-enable] ===
      :: Returns a list of all the active iSCSI sessions.
Enables a cloud container that was previously disabled or was inaccessible due to network connection issues.
<pre>
<pre>
[--volume]      :: Name of the storage volume or its unique ID (GUID).
<--container>    :: A cloud backup container into which storage volumes can be backed up. A
[--host]        :: Name of the host or its unique ID (GUID).
                            cloud backup container is like an unlimited storage pool in the cloud.
</pre>
</pre>
=== session-get [sn-get] ===
 
      :: Returns detailed information on a specific iSCSI session.
 
=== cloud-backup-container-disable [cbc-disable] ===
Disables access to the specified cloud container without having to remove it.
<pre>
<pre>
<--session>     :: iSCSI session identifier for an active iSCSI session.
<--container>   :: A cloud backup container into which storage volumes can be backed up.  A
                            cloud backup container is like an unlimited storage pool in the cloud.
</pre>
</pre>
=== session-close [sn-close] ===
 
      :: Forcably closes the specified iSCSI session; generally not recommended, use acl-remove
 
        instead.
=== cloud-backup-container-repair [cbc-repair] ===
Repairs the specified cloud backup container.
<pre>
<pre>
<--session>     :: iSCSI session identifier for an active iSCSI session.
<--container>   :: A cloud backup container into which storage volumes can be backed up.  A
                            cloud backup container is like an unlimited storage pool in the cloud.
</pre>
</pre>


==Host Management Commands==
 
=== host-add [h-add] ===
== Gluster Management ==
Adds the specified host so that you can assign storage volumes to it.  It is always best to specify the IQN of the host so that the QuantaStor can properly identify your system when it requests an iSCSI login.  If you're using Fibre Channel you can specify a WWPN as the IQN and the system will do the necessary.
 
=== gluster-volume-list [gv-list] ===
Returns a list of all the Gluster volumes in the grid
 
=== gluster-volume-get [gv-get] ===
Gets information about the specified Gluster volume
<pre>
<pre>
<--hostname>     :: Names may include any alpha-numeric characters '_' and '-', spaces are
<--gluster-volume> :: Name or ID of the Gluster volume
                            not allowed.
</pre>
[--iqn]          :: IQN (iSCSI Qualified Name) of the host's iSCSI initiator
 
[--ip-address]  :: IP Address of the host being added; if unspecified the service will look
 
                            it up.
=== gluster-brick-list [gb-list] ===
[--desc]        :: A description for the object.
Returns a list of all the Gluster bricks
[--username]    :: Administrator user name for the host, typically 'Administrator' for
 
                            Windows hosts.
=== gluster-brick-get [gb-get] ===
[--password]     :: Administrator password for the host; enables auto-configuration of
Gets information about a specific Gluster brick.
                            host's iSCSI initiator.
[--host-type]    :: Operating system type of the host. [aix, hpux, linux, other, solaris,
                            vmware, *windows, xenserver]
[--flags]        :: Optional flags for the operation. [async]
</pre>
=== host-modify [h-modify] ===
Modifies a host entry. The username/password fields are optional and are not yet leveraged by the QuantaStor system.  Later this may be used to provide additional levels of integration such as automatic host side configuration of your iSCSI initiator.  
<pre>
<pre>
<--host>         :: Name of the host or its unique ID (GUID).
<--gluster-brick> :: Name or ID of a Gluster brick
[--desc]        :: A description for the object.
[--ip-address]  :: IP Address of the host being added; if unspecified the service will look
                            it up.
[--username]    :: Administrator user name for the host, typically 'Administrator' for
                            Windows hosts.
[--password]    :: Administrator password for the host; enables auto-configuration of
                            host's iSCSI initiator.
[--host-type]    :: Operating system type of the host. [aix, hpux, linux, other, solaris,
                            vmware, *windows, xenserver]
[--flags]        :: Optional flags for the operation. [async]
</pre>
</pre>


=== host-remove [h-remove] ===
Removes the specified host, *WARNING* all active FibreChannel and iSCSI sessions will be dropped.
<pre>
<--host>        :: Name of the host or its unique ID (GUID).
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
=== host-list [h-list] ===
Returns a list of all the hosts that you have added to the QuantaStor system. Host groups allow you to assign storage to multiple host all at once.  This is especially useful when you have a VMware or Windows cluster as you can assign and unassign storage to all nodes in the cluster in one operation.


=== host-get [h-get] ===
=== gluster-peer-list [gp-list] ===
Gets information about a specific host.
Returns a list of all the Gluster peer systems.
 
=== gluster-ha-intf-get [gi-get] ===
Returns a list of all the Gluster HA failover interface definitions.
<pre>
<pre>
<--host>         :: Name of the host or its unique ID (GUID).
<--ha-interface> :: High-availability interface for a specific Gluster Volume.
</pre>
</pre>


=== host-initiator-get [hi-get] ===
 
Gets information about a specific host identified by its initiator IQN.
=== gluster-ha-intf-list [gi-list] ===
Gets information about a specific Gluster HA failover interface definition.
 
=== gluster-peer-get [gp-get] ===
Gets information about a specific Gluster peer system
<pre>
<pre>
<--iqn>         :: IQN (iSCSI Qualified Name) of the host's iSCSI initiator
<--gluster-peer> :: Name or ID of the Gluster peer
</pre>
</pre>


=== host-initiator-add [hi-add] ===
 
Adds an additional iSCSI host initiator IQN or FibreChannel WWPN to the specified host.
=== gluster-volume-create [gv-create] ===
Create a new Gluster volume with new Bricks on the specified Storage Pools.
<pre>
<pre>
<--host>        :: Name of the host or its unique ID (GUID).
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
<--iqn>         :: IQN (iSCSI Qualified Name) of the host's iSCSI initiator
                            not allowed.
[--desc]        :: A description for the object.
<--pool-list>    :: List of one or more storage pools.
<--replica-count> :: Number of replia copies to have of each file in the Gluster volume
<--stripe-volume> :: Enable striping of files across Gluster bricks
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
</pre>


=== host-initiator-remove [hi-remove] ===
 
Removes a FibreChannel or iSCSI host initiator (IQN) from the specified host.
=== gluster-volume-delete [gv-delete] ===
Deletes the specified Gluster volume.
<pre>
<pre>
<--host>         :: Name of the host or its unique ID (GUID).
<--gluster-volume> :: Name or ID of the Gluster volume
<--iqn>          :: IQN (iSCSI Qualified Name) of the host's iSCSI initiator
</pre>
</pre>
==Host Group Management Commands==
 
=== host-group-create [hg-create] ===
 
Creates a new host group with the specified name.
=== gluster-volume-modify [gv-modify] ===
Modifies the name and/or description of the specified Gluster volume.
<pre>
<pre>
<--gluster-volume> :: Name or ID of the Gluster volume
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are  
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are  
                             not allowed.
                             not allowed.
<--host-list>    :: A list of one or more hosts by name or ID.
[--desc]        :: A description for the object.
[--desc]        :: A description for the object.
[--flags]        :: Optional flags for the operation. [async]
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
</pre>
=== host-group-modify [hg-modify] ===
 
Modifies the properties of a host group such as its name and/or description.
 
=== gluster-volume-start [gv-start] ===
Starts the specified Gluster volume
<pre>
<pre>
<--host-group>   :: An arbitrary collection of hosts used to simplify volume ACL management
<--gluster-volume> :: Name or ID of the Gluster volume
                            for clusters and other groups of hosts.
[--flags]       :: Optional flags for the operation. [async, force, *none]
[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
[--desc]         :: A description for the object.
</pre>
</pre>
=== host-group-delete [hg-delete] ===
 
Removes the specified host group.
 
=== gluster-volume-stop [gv-stop] ===
Stops the specified Gluster volume.
<pre>
<pre>
<--host-group>   :: An arbitrary collection of hosts used to simplify volume ACL management
<--gluster-volume> :: Name or ID of the Gluster volume
                            for clusters and other groups of hosts.
[--flags]        :: Optional flags for the operation. [async, force, *none]
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>
=== host-group-list [hg-list] ===
Returns a list of all the host groups.


=== host-group-get [hg-get] ===
 
Gets information about a specific host group.
=== gluster-volume-rebalance [gv-rebalance] ===
Rebalances files across the bricks in the specified Gluster volume
<pre>
<pre>
<--host-group>   :: An arbitrary collection of hosts used to simplify volume ACL management
<--gluster-volume> :: Name or ID of the Gluster volume
                            for clusters and other groups of hosts.
</pre>
</pre>
=== host-group-host-add [hg-host-add] ===
 
Adds a host to the specified host group.
 
=== gluster-volume-add-bricks [gv-add-bricks] ===
Adds one or more bricks on the specified volume.
<pre>
<pre>
<--host-group>   :: An arbitrary collection of hosts used to simplify volume ACL management
<--gluster-volume> :: Name or ID of the Gluster volume
                            for clusters and other groups of hosts.
<--pool-list>    :: List of one or more storage pools.
<--host-list>    :: A list of one or more hosts by name or ID.
<--restripe-volume> :: Restripe files across the new Gluster bricks
</pre>
</pre>


=== host-group-host-remove [hg-host-remove] ===
 
Removes a host from the specified host group.
== Ceph Management ==
 
=== ceph-block-device-get [cebd-get] ===
Gets information about a specific Ceph RDB / block device
<pre>
<pre>
<--host-group>   :: An arbitrary collection of hosts used to simplify volume ACL management
<--ceph-rbd>     :: Ceph RBD/Block Device name or ID
                            for clusters and other groups of hosts.
<--host-list>    :: A list of one or more hosts by name or ID.
</pre>
</pre>


==System Management Commands==
=== system-get [s-get] ===
Get general information about the storage system.


=== system-shutdown [sys-shutdown] ===
=== ceph-block-device-list [cebd-list] ===
Shutdown the storage system.
Returns a list of all the Ceph RDB / block devices.
 
=== ceph-rbd-create [cebd-create] ===
Creates a new Ceph block device (RBD) in the specified Ceph pool.
<pre>
<pre>
[--flags]        :: Optional flags for the operation. [async, force, *none]
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are  
<pre>
=== system-restart [sys-restart] ===
Restarts the entire storage system.
<pre>
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
=== system-modify [sys-modify] ===
Modifies the name and/or description of the storage system.
<pre> [--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are  
                             not allowed.
                             not allowed.
<--ceph-pool>    :: ceph-pool
<--size>        :: Size may be specified in MiB, GiB, or TiB. examples: 4G, 100M, 1.4T
[--desc]        :: A description for the object.
[--desc]        :: A description for the object.
[--location]    :: Optional description indicating the location of the storage system.
[--domain]      :: The domain name suffix for your network such as example.com
[--search]      :: The default domain search suffix for your network such as example.com
[--arp-filter-mode] :: ARP filtering should be enabled when you have more than one network card
                            on the same network. [*auto, disabled, enabled]
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
</pre>


==Target Port Commands==
 
=== target-port-get [tp-get] ===
=== ceph-rbd-delete [cebd-delete] ===
Returns information about a specific target port.
Deletes the specified Ceph block device (RBD)
<pre>
<pre>
<--port>         :: Name or MAC address of the target port.
<--ceph-rbd>     :: Ceph RBD/Block Device name or ID
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
</pre>


=== target-port-list [tp-list] ===
Returns a list of all the target ports in the system.


=== target-port-restart [tp-restart] ===
=== ceph-pool-list [cep-list] ===
Restarts the specified target port.
Returns a list of all the Ceph storage pools.
 
=== ceph-pool-get [cep-get] ===
Gets information about a specific Ceph storage pool.
<pre>
<pre>
<--port>         :: Name or MAC address of the target port.
<--ceph-pool>   :: Ceph Pool name or ID
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
</pre>


=== target-port-disable [tp-disable] ===
 
Disables the specified target port.
=== ceph-pool-create [cep-create] ===
Creates a new Ceph pool using the specified OSDs or Storage Pools
<pre>
<pre>
<--port>        :: Name or MAC address of the target port.
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
[--flags]       :: Optional flags for the operation. [async, force, *none]
                            not allowed.
<--pool-list>    :: List of one or more storage pools.
[--desc]        :: A description for the object.
[--placement-groups] :: Number of placement groups to assign to the Ceph pool.
[--max-replicas] :: Maximum number of replicas (redundancy level) to be created of each
                            block in the Ceph pool.
[--min-replicas] :: Minimum number of replicas to have of each block while still allowing
                            write access to the Ceph pool.
[--pool-type]    :: Type of Ceph pool, 'replica' (mirror based, default) or 'erasure' which
                            is like network RAID5.
</pre>
 


</pre>
=== ceph-pool-delete [cep-delete] ===
=== target-port-enable [tp-enable] ===
Deletes the specified Ceph pool
Enables the specified target port.
<pre>
<pre>
<--port>         :: Name or MAC address of the target port.
<--ceph-pool>   :: Ceph Pool name or ID
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
</pre>


=== target-port-rescan [tp-rescan] ===
 
Discovers new target ports and/or any manual modifiations made to the configuration of the target ports.
=== ceph-ha-intf-get [ci-get] ===
Returns a list of all the Ceph HA failover interface definitions.
<pre>
<pre>
[--flags]        :: Optional flags for the operation. [async, force, *none]
<--ceph-ha-interface> :: Ceph HA failover interface name, ID, or IP address
</pre>
</pre>


=== target-port-modify [tp-modify] ===
 
Modifies target port settings including IP address, gateway, mtu, etc.
=== ceph-ha-intf-list [ci-list] ===
Gets information about a specific Ceph HA failover interface definition.
 
=== ceph-osd-list [ceosd-list] ===
Returns a list of all the Ceph Object Storage Daemons
 
=== ceph-osd-get [ceosd-get] ===
Gets information about a specific Ceph Object Storage Daemon.
<pre>
<pre>
<--port>         :: Name or MAC address of a target port, or 'all' to modify all ports.
<--ceph-osd>     :: Ceph Object Storage Daemon name or ID
[--port-type]    :: Port configuration type. (static, dhcp)
[--ip-address]  :: IP Address of the host being added; if unspecified the service will look
                            it up.
[--netmask]      :: Subnet IP mask (ex: 255.255.255.0)
[--gateway]      :: IP address of the network gateway
[--mtu]          :: Maximum transmission unit (MTU) for the target port, commonly set to
                            9000 to enable jumbo frames.
[--iscsi-enable] :: Enables or disables iSCSI access to the specified port(s).
[--desc]        :: A description for the object.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
</pre>
==Remote Replication Management Commands==


=== replication-schedule-create [rsch-create] ===
 
Creates a new replication schedule to replicate the specified storage volumes and shares to the specified target pool on a schedule.
=== ceph-osd-create [ceosd-create] ===
Creates a new Ceph OSD on the specified storage pool
<pre>
<pre>
        <--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are  
                             not allowed.
                             not allowed.
        <--target-pool> :: Target storage pool on remote system to replicate to.
<--pool>        :: Name of the storage pool or its unique ID (GUID).
         [--volume-list]  :: A list of one or more storage volumes.
[--desc]        :: A description for the object.
        [--share-list]  :: A list of one or more network shares.
        [--start-date]  :: Start date at which the system will begin creating snapshots for a given
                            schedule.
        [--enabled]      :: While the schedule is enabled snapshots will be taken at the designated
                            times.
        [--desc]        :: A description for the object.
        [--cloud]        :: Name of a Storage Cloud or its unique id.
        [--max-replicas] :: Maximum number of replica snapshot checkpoints to retain for this
                            schedule, after which the oldest snapshot is removed before a new one is
                            created.
        [--days]        :: The days of the week on which this schedule should create snapshots.
                            [fri, mon, sat, *sun, thu, tue, wed]
        [--hours]        :: For the specified days of the week, snapshots will be created at the
                            specified hours. [10am, 10pm, 11am, 11pm, 12am, 12pm, 1am, 1pm, 2am, 2pm,
                            *3am, 3pm, 4am, 4pm, 5am, 5pm, 6am, 6pm, 7am, 7pm, 8am, 8pm, 9am, 9pm]
        [--interval]    :: Interval in minutes between replications, minimum is 15 minutes.
        [--flags]        :: Optional flags for the operation. [async]
</pre>
</pre>


=== replication-schedule-modify [rsch-modify] ===
 
Modifies the name, description or other properties of a replication schedule.
=== ceph-osd-delete [ceosd-delete] ===
Deletes the specified Ceph OSD
<pre>
<pre>
        <--schedule>    :: Name or ID of a replication schedule.
<--ceph-osd>    :: Ceph Object Storage Daemon name or ID
        [--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
        [--start-date]  :: Start date at which the system will begin creating snapshots for a given
                            schedule.
        [--enabled]      :: While the schedule is enabled snapshots will be taken at the designated
                            times.
        [--desc]        :: A description for the object.
        [--cloud]        :: Name of a Storage Cloud or its unique id.
        [--max-replicas] :: Maximum number of replica snapshot checkpoints to retain for this
                            schedule, after which the oldest snapshot is removed before a new one is
                            created.
        [--days]        :: The days of the week on which this schedule should create snapshots.
                            [fri, mon, sat, *sun, thu, tue, wed]
        [--hours]        :: For the specified days of the week, snapshots will be created at the
                            specified hours. [10am, 10pm, 11am, 11pm, 12am, 12pm, 1am, 1pm, 2am, 2pm,
                            *3am, 3pm, 4am, 4pm, 5am, 5pm, 6am, 6pm, 7am, 7pm, 8am, 8pm, 9am, 9pm]
        [--interval]    :: Interval in minutes between replications, minimum is 15 minutes.
        [--flags]        :: Optional flags for the operation. [async]
</pre>
</pre>


=== replication-schedule-delete [rsch-delete] ===
 
Deletes a replication schedule, snapshots associated with the schedule are not removed.
=== ceph-monitor-get [cem-get] ===
Gets information about a specific Ceph Monitor
<pre>
<pre>
        <--schedule>     :: Name or ID of a replication schedule.
<--ceph-monitor> :: Ceph Monitor service name or ID.
        [--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== replication-schedule-add [rsch-add] ===
 
Adds one or more volumes/shares to the specified schedule.
=== ceph-monitor-list [cem-list] ===
Returns a list of all the Ceph Monitors
 
=== ceph-cluster-get [cec-get] ===
Gets information about a specific Ceph Cluster
<pre>
<pre>
        <--schedule>     :: Name or ID of a replication schedule.
<--ceph-cluster> :: Ceph Cluster name or ID, default is 'ceph'
        [--volume-list]  :: A list of one or more storage volumes.
        [--share-list]  :: A list of one or more network shares.
</pre>
</pre>


=== replication-schedule-remove [rsch-remove] ===
Removes one or more volumes/shares from the specified schedule.
<pre>
        <--schedule>    :: Name or ID of a replication schedule.
        [--volume-list]  :: A list of one or more storage volumes.
        [--share-list]  :: A list of one or more network shares.
</pre>


=== replication-schedule-enable [rsch-enable] ===
=== ceph-cluster-list [cec-list] ===
Enables the specified replication schedule.
Returns a list of all the Ceph Clusters
<pre>
        <--schedule>    :: Name or ID of a replication schedule.
        [--flags]        :: Optional flags for the operation. [async, force]
</pre>


=== replication-schedule-disable [rsch-disable] ===
== Host Mangement ==
Disables the specified replication schedule.
<pre>
        <--schedule>    :: Name or ID of a replication schedule.
        [--flags]        :: Optional flags for the operation. [async, force]
</pre>


=== replication-schedule-trigger [rsch-trigger] ===
=== host-add [h-add] ===
Triggers the specified schedule to run immediately.
Modifies a host entry. The username/password fields are optional and are not yet leveraged by the QuantaStor system. Later this may be used to provide additional levels of integration such as automatic host side configuration of your iSCSI initiator.
<pre>
<pre>
        <--schedule>    :: Name or ID of a replication schedule.
<--hostname>    :: Names may include any alpha-numeric characters '_' and '-', spaces are
         [--flags]        :: Optional flags for the operation. [async, force]
                            not allowed.
[--iqn]          :: IQN (iSCSI Qualified Name) of the host's iSCSI initiator
[--ip-address]  :: IP Address of the host being added; if unspecified the service will look
                            it up.
[--desc]         :: A description for the object.
[--username]    :: Administrator user name for the host, typically 'Administrator' for
                            Windows hosts.
[--password]    :: Administrator password for the host; enables auto-configuration of
                            host's iSCSI initiator.
[--host-type]    :: Operating system type of the host. [aix, hpux, linux, other, solaris,
                            vmware, *windows, xenserver]
[--flags]        :: Optional flags for the operation. [async]
</pre>
</pre>


=== replication-schedule-list [rsch-list] ===
Returns a list of all the replication schedules.


=== replication-schedule-get [rsch-get] ===
=== host-modify [h-modify] ===
Returns information about a specific replication schedule.
Modifies a host.
<pre>
<pre>
        <--schedule>     :: Name or ID of a replication schedule.
<--host>         :: Name of the host or its unique ID (GUID).
[--desc]        :: A description for the object.
[--ip-address]  :: IP Address of the host being added; if unspecified the service will look
                            it up.
[--username]    :: Administrator user name for the host, typically 'Administrator' for
                            Windows hosts.
[--password]    :: Administrator password for the host; enables auto-configuration of  
                            host's iSCSI initiator.
[--host-type]    :: Operating system type of the host. [aix, hpux, linux, other, solaris,
                            vmware, *windows, xenserver]
[--flags]        :: Optional flags for the operation. [async]
</pre>
</pre>


=== replica-assoc-stop [rep-assoc-stop] ===
 
Attempts to stop the replication process between a source/target pair of volumes or shares.
=== host-remove [h-remove] ===
Removes the specified host, *WARNING* host's active iSCSI sessions will be dropped.
<pre>
<pre>
        <--replica-assoc> :: Name or ID of a replica association between a source/target volume or
<--host>         :: Name of the host or its unique ID (GUID).
                            share
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== replica-assoc-rollback [rep-assoc-rollback] ===
Reverses the replication to send the changes on the target back to the source volume/share. Requires the --force flag.
<pre>
        <--replica-assoc> :: Name or ID of a replica association between a source/target volume or
                            share


</pre>
=== host-list [h-list] ===
Returns a list of all the hosts that you have added to the QuantaStor system. Host groups allow you to assign storage to multiple host all at once. This is especially useful when you have a VMware or Windows cluster as you can assign and unassign storage to all nodes in the cluster in one operation.


=== replica-assoc-sync [rep-assoc-sync] ===
=== host-get [h-get] ===
Restarts the replication process between a source/target pair of volumes or shares.
Gets information about a specific host.
<pre>
<pre>
        <--replica-assoc> :: Name or ID of a replica association between a source/target volume or
<--host>         :: Name of the host or its unique ID (GUID).
                            share
</pre>
</pre>


=== replica-assoc-delete [rep-assoc-delete] ===
 
Deletes the specified replication association between a source/target pair of volumes or shares.
=== host-initiator-get [hi-get] ===
Gets information about a specific host identified by its initiator IQN.
<pre>
<pre>
        <--replica-assoc> :: Name or ID of a replica association between a source/target volume or
<--iqn>         :: IQN (iSCSI Qualified Name) of the host's iSCSI initiator
                            share
</pre>
 


=== host-initiator-add [hi-add] ===
Adds an additional iSCSI host initiator IQN to the specified host.
<pre>
<--host>        :: Name of the host or its unique ID (GUID).
<--iqn>          :: IQN (iSCSI Qualified Name) of the host's iSCSI initiator
</pre>
</pre>


=== replica-assoc-get [rep-assoc-get] ===
 
Returns details of the specified replication association.
=== host-initiator-list [hi-list] ===
Returns a list of all the initiators (IQN) of the specified host
<pre>
<pre>
        <--replica-assoc> :: Name or ID of a replica association between a source/target volume or
<--host>         :: Name of the host or its unique ID (GUID).
                            share
</pre>
 


=== host-initiator-remove [hi-remove] ===
Removes a iSCSI host initiator (IQN) from the specified host.
<pre>
<--host>        :: Name of the host or its unique ID (GUID).
<--iqn>          :: IQN (iSCSI Qualified Name) of the host's iSCSI initiator
</pre>
</pre>


=== replica-assoc-list [rep-assoc-list] ===
Returns a list of all the replication associations.


==Storage Pool Management Commands==
== Host Group Management ==
=== pool-create [p-create] ===
 
Creates a new storage pool from which storage volumes can be created.
=== host-group-create [hg-create] ===
Creates a new host group with the specified name.
<pre>
<pre>
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are  
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are  
                             not allowed.
                             not allowed.
<--disk-list>    :: List of physical drives to be grouped together to create the new storage
<--host-list>    :: A list of one or more hosts by name or ID.
                            pool.
[--raid-type]    :: RAID type for the storage pool. [*AUTO, RAID0, RAID1, RAID5, RAID6]
[--pool-type]    :: The type of storage pool to be created. [*btrfs, ext4, jfs, xfs]
[--desc]        :: A description for the object.
[--desc]        :: A description for the object.
[--is-default]  :: Indicates that this pool should be utilized as the default storage pool.
[--ssd]          :: Enable solid state disk (SSD) storage pool optimizations.
[--compress]    :: Enable storage volume compression on the pool, this boosts both read and
                            write performance on most IO loads.
[--nobarriers]  :: Enable storage pool write optimizations.  This requires that you have a
                            hardware controller with a battery backup unit.
[--profile]      :: Specifies an optional IO optimization profile for the storage pool. 
                            Storage pool profiles control elements like read-ahead, queue depth and
                            other device configurables.
[--flags]        :: Optional flags for the operation. [async]
[--flags]        :: Optional flags for the operation. [async]
</pre>
</pre>


=== pool-grow [p-grow] ===
 
Grows the specified storage pool by adding an additional disk.  You can only grow storage pools that are using the RAID5 or RAID6 layout.
=== host-group-modify [hg-modify] ===
Modifies the properties of a host group such as its name and/or description.
<pre>
<pre>
<--pool>        :: Name of the storage pool or its unique ID (GUID).
<--host-group>   :: An arbitrary collection of hosts used to simplify volume ACL management
<--disk-list>   :: List of physical drives to be grouped together to create the new storage
                             for grids and other groups of hosts.
                             pool.
[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are
[--raid-type]   :: RAID type for the storage pool. [*AUTO, RAID0, RAID1, RAID5, RAID6]
                            not allowed.
[--flags]       :: Optional flags for the operation. [async]
[--desc]         :: A description for the object.
</pre>
</pre>


=== pool-add-spare [p-add] ===
 
Adds a dedicated hot-spare to the specified storage pool.
=== host-group-delete [hg-delete] ===
Removes the specified host group.
<pre>
<pre>
<--pool>        :: Name of the storage pool or its unique ID (GUID).
<--host-group>   :: An arbitrary collection of hosts used to simplify volume ACL management
<--disk-list>   :: List of physical drives to be grouped together to create the new storage
                             for grids and other groups of hosts.
                             pool.
[--flags]        :: Optional flags for the operation. [async, force]
[--flags]        :: Optional flags for the operation. [async]
</pre>
</pre>


=== pool-remove-spare [p-remove] ===
 
Removes the specified hot-spare from the specified pool.
=== host-group-list [hg-list] ===
Returns a list of all the host groups.
 
=== host-group-get [hg-get] ===
Gets information about a specific host group.
<pre>
<pre>
<--pool>        :: Name of the storage pool or its unique ID (GUID).
<--host-group>   :: An arbitrary collection of hosts used to simplify volume ACL management
<--disk-list>   :: List of physical drives to be grouped together to create the new storage
                             for grids and other groups of hosts.
                             pool.
[--flags]        :: Optional flags for the operation. [async]
</pre>
</pre>


=== pool-modify [p-modify] ===
 
Modifies the properties of the storage pool such as it's name and decription.
=== host-group-host-add [hg-host-add] ===
Adds a host to the specified host group.
<pre>
<pre>
<--pool>         :: Name of the storage pool or its unique ID (GUID).
<--host-group>   :: An arbitrary collection of hosts used to simplify volume ACL management
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                             for grids and other groups of hosts.
                            not allowed.
<--host-list>    :: A list of one or more hosts by name or ID.
[--is-default]  :: Indicates that this pool should be utilized as the default storage pool.
[--ssd]          :: Enable solid state disk (SSD) storage pool optimizations.
[--compress]    :: Enable storage volume compression on the pool, this boosts both read and
                             write performance on most IO loads.
[--nobarriers]  :: Enable storage pool write optimizations.  This requires that you have a
                            hardware controller with a battery backup unit.
[--profile]      :: Specifies an optional IO optimization profile for the storage pool. 
                            Storage pool profiles control elements like read-ahead, queue depth and  
                            other device configurables.
[--desc]        :: A description for the object.
[--flags]        :: Optional flags for the operation. [async]
</pre>
</pre>


=== pool-destroy [p-destroy] ===
 
Deletes a storage pool, *WARNING* any data in the pool will be lost.
=== host-group-host-remove [hg-host-remove] ===
Removes a host from the specified host group.
<pre>
<pre>
<--pool>         :: Name of the storage pool or its unique ID (GUID).
<--host-group>   :: An arbitrary collection of hosts used to simplify volume ACL management
[--flags]        :: Optional flags for the operation. [async, force]
                            for grids and other groups of hosts.
<--host-list>    :: A list of one or more hosts by name or ID.
</pre>
</pre>


=== pool-start [p-start] ===
 
Starts up a previously stopped storage pool.
== Hardware RAID Management ==
 
=== hw-controller-group-list [hwcg-list] ===
Returns a list of all the hardware controller groups.
 
=== hw-controller-group-get [hwcg-get] ===
Returns information about all the support hardware RAID controller group types.
<pre>
<pre>
<--pool>         :: Name of the storage pool or its unique ID (GUID).
<--controller-group> :: Name or ID of a hardware RAID controller group.
</pre>
</pre>


=== pool-stop [p-stop] ===
 
Stops all volume activity to the pool and disables it for maintenance.
=== hw-controller-list [hwc-list] ===
Returns a list of all the hardware controllers.
<pre>
<pre>
<--pool>        :: Name of the storage pool or its unique ID (GUID).
[--controller-group] :: Name or ID of a hardware RAID controller group.
</pre>
</pre>


=== pool-export [p-export] ===
Deactivate and removes the storage pool from the storage system database so that it can be exported and used on another system.
<pre>
<--pool>        :: Name of the storage pool or its unique ID (GUID).
</pre>


=== pool-list [p-list] ===
=== hw-controller-get [hwc-get] ===
Returns a list of all the storage pools.
Returns information about a specific hardware RAID controller.
<pre>
<--controller>  :: Name or ID of a hardware RAID controller.
</pre>
 


=== pool-get [p-get] ===
=== hw-controller-rescan [hwc-rescan] ===
Gets information about a specific storage pool.
Rescans the hardware controller to look for new disks and RAID units.
<pre>
<pre>
<--pool>         :: Name of the storage pool or its unique ID (GUID).
<--controller>   :: Name or ID of a hardware RAID controller.
</pre>
</pre>


=== pool-identify [p-id] ===
 
Pulses the disk activity lights for all disks in the pool so they can be identified in the chassis.
=== hw-controller-import-units [hwc-import-units] ===
Scan and import foreign disks associated with RAID groups that were attached to another RAID controller or that require re-importing to the local appliance.
<pre>
<pre>
<--pool>         :: Name of the storage pool or its unique ID (GUID).
<--controller>   :: Name or ID of a hardware RAID controller.
[--pattern]      :: Pattern to flash the disk LED lights in, p = short pulse, P = long
                            pulse, d = short delay, D = long delay, ex: pattern=pppD
[--duration]    :: Duration in seconds to repeat the disk identification pattern.
</pre>
</pre>


==Disk Management Commands==
=== disk-list [d-list] ===
Enumerates all physical disks.


=== disk-scan [d-scan] ===
=== hw-controller-create-security-key [hwc-create-security-key] ===
Scans for any new physical disks that may have been hot-plugged into the storage system.
Create the security key for encryption on SED/FDE-enabled drives on hardware RAID controller.
 
=== disk-get [d-get] ===
Gets information about a specific physical disk.
<pre>
<pre>
<--disk>         :: Name of the physical disk or its unique ID/serial number.
<--controller>   :: Name or ID of a hardware RAID controller.
<--security-key> :: Security key on HW Controller card for encryption on FDE-enabled secure
                            disk drives.
</pre>
</pre>


=== disk-identify [d-id] ===
 
Pulses the disk activity light so that the specified disk can be identified in the cassis.
=== hw-controller-change-security-key [hwc-change-security-key] ===
Change the security key for encryption on SED/FDE-enabled drives on hardware RAID controller.
<pre>
<pre>
<--disk>         :: Name of the physical disk or its unique ID/serial number.
<--controller>   :: Name or ID of a hardware RAID controller.
[--pattern]      :: Pattern to flash the disk LED lights in, p = short pulse, P = long
<--old-security-key> :: Prior security key on HW Controller card, for changing key, for
                             pluse, d = short delay, D = long delay, ex: pattern=pppD
                             encryption on FDE-enabled secure disk drives.
[--duration]    :: Duration in seconds to repeat the disk identification pattern.
<--security-key> :: Security key on HW Controller card for encryption on FDE-enabled secure
                            disk drives.
</pre>
</pre>


==Storage Volume Management Commands==
 
=== volume-create [v-create] ===
=== hw-enclosure-list [hwe-list] ===
Creates a new storage volume in the specified storage pool.
Returns a list of all the enclosures managed by the specified hardware RAID controller.
<pre>
<pre>
        <--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
[--controller]  :: Name or ID of a hardware RAID controller.
                            not allowed.
        <--size>        :: Size may be specified in MiB, GiB, or TiB. examples: 4G, 100M, 1.4T
        <--pool>        :: Name of the storage pool or its unique ID (GUID).
        [--desc]        :: A description for the object.
        [--thin]        :: Thin provision (sparse allocate) the storage volume.
        [--access-mode]  :: Access mode for the volume. [none, readonly, *readwrite]
        [--chap-policy]  :: CHAP setting can be 'target' which is unique to a storage volume, 'user'
                            or 'resource-group' which inherits the chap user/pass from your user
                            account or storage cloud respectively. [cloud-defaults, *disabled,
                            target, user-defaults]
        [--chap-user]    :: An optional iSCSI CHAP username.
        [--chap-pass]    :: An optional iSCSI CHAP password.
        [--count]        :: The number of volumes to create, default is 1.
        [--blocksize]    :: Volume block size in KB, valid values are 8, 16, 32, 64, 128. Larger
                            values deliver higher performance for workloads with high sequential IO.
        [--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== volume-modify [v-modify] ===
 
Modifies a the name, description or other properties of the storage volume.
=== hw-enclosure-get [hwe-get] ===
Returns information about a specific enclosure managed by the specified hardware RAID controller.
<pre>
<pre>
        <--volume>       :: Name of the storage volume or its unique ID (GUID).
<--enclosure>   :: Name of a hardware RAID enclosure or it unique ID.
        [--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
        [--desc]        :: A description for the object.
        [--access-mode]  :: Access mode for the volume. [none, readonly, *readwrite]
        [--flags]        :: Optional flags for the operation. [async]
        [--chap-policy]  :: CHAP setting can be 'target' which is unique to a storage volume, 'user'
                            or 'resource-group' which inherits the chap user/pass from your user
                            account or storage cloud respectively. [cloud-defaults, *disabled,
                            target, user-defaults]
        [--chap-user]    :: An optional iSCSI CHAP username.
        [--chap-pass]    :: An optional iSCSI CHAP password.
        [--clear-snap-flag] :: Promotes a snapshot volume to standard (non-snapshot) volume.
        [--enable-wb-cache] :: Enables the write-back cache on the iSCSI target driver, this option
                            uses volatile system RAM for cache and is not recommended.
        [--is-active-checkpoint] :: Tags the checkpoint device so that it cannot be replicated over.  Use
                            this for DR failover and this flag is set automatically when a failover
                            checkpoint volume has an active iSCSI session.
        [--sync]        :: Synchroniztion policy to use for handling writes to the storage pool
                            (standard, always, none).  standard mode is a hybrid of write-through and
                            write-back caching based on the O_SYNC flag, always mode is write-through
                            to ZIL which could be SSD cache, and disabled indicates to always use
                            async writes. [always, disabled, *standard]
        [--compression-type] :: Type of compression to be used. (on | off | lzjb | gzip | gzip-[1-9] |
                            zle | lz4)
        [--copies]      :: Indicates the number of copies of each block should be maintained in the
                            storage pool.  This is a way of getting duplicates for bit-rot protection
                            on a single device.
</pre>
</pre>


=== volume-delete [v-delete] ===
 
Deletes a storage volume, *WARNING* any data in the volume will be lost.
=== hw-unit-list [hwu-list] ===
Returns a list of all the RAID units managed by the specified hardware controller.
<pre>
<pre>
<--volume>      :: Name of the storage volume or its unique ID (GUID).
[--controller]  :: Name or ID of a hardware RAID controller.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== volume-resize [v-resize] ===
 
Resizes a storage volume to make it larger, volumes cannot be reduced in size.
=== hw-unit-get [hwu-get] ===
Returns information about a specific RAID unit managed by the specified hardware RAID controller.
<pre>
<pre>
<--volume>       :: Name of the storage volume or its unique ID (GUID).
<--unit>         :: Name of a hardware RAID unit or it unique ID.
<--new-size>    :: New larger size for the volume specified in MiB, GiB, or TiB. examples:
                            4G, 100M, 1.4T
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== volume-restore [v-restore] ===
 
Restores a storage volume to a previous point in time using a snapshot.
=== hw-unit-identify [hwu-identify] ===
Flashes the LED indicator light on all the disks in the RAID unit so that it can be identified in the enclosure.
<pre>
<pre>
<--volume>       :: Name of the storage volume or its unique ID (GUID).
<--unit>         :: Name of a hardware RAID unit or it unique ID.
<--snapshot>     :: Name or ID of a snapshot volume to use as the restore point.
[--duration]     :: Duration in seconds to repeat the disk identification pattern.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== volume-list [v-list] ===
Returns a list of all the storage volumes.


=== volume-get [v-get] ===
=== hw-unit-encrypt [hwu-encrypt] ===
Returns information about a specific storage volume.
Enable hardware SED/FDE encryption for the specified hardware RAID unit.
<pre>
<pre>
<--volume>       :: Name of the storage volume or its unique ID (GUID).
<--unit>         :: Name of a hardware RAID unit or it unique ID.
[--options]      :: Special options to hardware encryption policy.
</pre>
</pre>


=== volume-snapshot [v-snap] ===
 
Creates a space efficient copy of the source volume.
=== hw-unit-create [hwu-create] ===
Creates a new hardware RAID unit using the specified controller.
<pre>
<pre>
<--volume>       :: Name of the storage volume or its unique ID (GUID).
<--raid>         :: Hardware RAID type for a hardware RAID unit. [*AUTO, RAID0, RAID1,  
[--name]        :: Name for the snapshot, if not provided the source volume name will be
                             RAID10, RAID5, RAID50, RAID6, RAID60]
                             used as a prefix.
<--disk-list>    :: Specifies one or more physical disks connected to a hardware RAID
[--desc]         :: A description for the object.
                            controller. Use 'all' to indicate all unused disks.
[--access-mode]  :: Access mode for the volume. [none, readonly, *readwrite]
[--controller]   :: Name or ID of a hardware RAID controller.
[--count]       :: The number of snapshots of the specified volume to create, default is 1.
[--flags]        :: Optional flags for the operation. [async, force, *none]
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== volume-clone [v-clone] ===
 
Creates a complete block copy of the source volume.
=== hw-unit-delete [hwu-delete] ===
Deletes the specified RAID unit.  Note that you must first delete the Storage Pool before you delete the RAID unit.
<pre>
<pre>
<--volume>       :: Name of the storage volume or its unique ID (GUID).
<--unit>         :: Name of a hardware RAID unit or it unique ID.
[--name]        :: Name for the clone, if not provided the source volume name will be used
[--duration]     :: Duration in seconds to repeat the disk identification pattern.
                            as a prefix.
[--desc]        :: A description for the object.
[--access-mode]  :: Access mode for the volume. [none, readonly, *readwrite]
[--flags]       :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== volume-assign [va-add] ===
 
Enables access to the specific volume from the specified host.
=== hw-disk-identify [hwd-identify] ===
Flashes the LED indicator light on the specified disk so that it can be identified in the enclosure chassis.
<pre>
<pre>
<--volume>       :: Name of the storage volume or its unique ID (GUID).
<--unit>         :: Name of a hardware RAID unit or it unique ID.
<--host-list>    :: A list of one or more hosts by name or ID.
[--duration]    :: Duration in seconds to repeat the disk identification pattern.
</pre>
</pre>


=== volume-unassign [va-remove] ===
 
Disables access to the specific volume from the specified host.
=== hw-disk-delete [hwd-delete] ===
Marks the specified disk so that it can be removed from the enclosure.  Disks marked as hot-spares will return to normal status after being deleted.
<pre>
<pre>
<--volume>       :: Name of the storage volume or its unique ID (GUID).
<--disk>         :: Specifies a physical disk connected to a hardware RAID controller.
<--host-list>    :: A list of one or more hosts by name or ID.
[--duration]    :: Duration in seconds to repeat the disk identification pattern.
</pre>
</pre>


=== volume-unassign-all [va-remove-all] ===
 
Disables all access to the specified volume, host, or host group.
=== hw-disk-list [hwd-list] ===
Returns a list of all the disks managed by the specified hardware controller.
<pre>
<pre>
<--volume>      :: Name of the storage volume or its unique ID (GUID).
[--controller]  :: Name or ID of a hardware RAID controller.
</pre>
</pre>


=== volume-assign-list [va-list] ===
Returns a list of all the volume to host assignments, optionally filtered by host or storage volume.
<pre>
[--volume]      :: Name of the storage volume or its unique ID (GUID).
[--host]        :: Name of the host or its unique ID (GUID).


=== hw-disk-get [hwd-get] ===
Returns information about a specific disk managed by a hardware RAID controller.
<pre>
<--disk>        :: Specifies a physical disk connected to a hardware RAID controller.
</pre>
</pre>


==Storage Volume Utilization Metrics==
 
=== volume-utilization-list [vu-list] ===
=== hw-disk-mark-spare [hwd-mark-spare] ===
Returns volume utilization information for a specific storage volume or all storage volumes
Marks the specified disk as a universal hot spare within the group of RAID units managed by the controller in which the disk is attached.
if no volume is specified.
<pre>
<pre>
[--volume]      :: Name of the storage volume or its unique ID (GUID).
<--disk>        :: Specifies a physical disk connected to a hardware RAID controller.
</pre>
</pre>


=== volume-utilization-get [vu-get] ===
 
Returns a specific volume utilization metrics for a single volume and specific date.
=== hw-disk-mark-good [hwd-mark-good] ===
Marks the specified disk as 'good' or 'ready'.  You can use this to correct the disk status for good disks that the controller has in 'bad' or 'failed' state.
<pre>
<pre>
<--id>           :: Unique identifer (GUID) for the object.
<--disk>         :: Specifies a physical disk connected to a hardware RAID controller.
</pre>
</pre>


==Storage Volume Group Management==
 
=== volume-group-create [vg-create] ===
=== hw-alarm-list [hwa-list] ===
Creates a new storage volume group comprised of the specified storage volumes
Returns a list of all the current hardware alarms/alert messages generated from the controller.
<pre>
<pre>
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
[--controller]   :: Name or ID of a hardware RAID controller.
                            not allowed.
<--volume-list>  :: A list of one or more storage volumes.
[--desc]         :: A description for the object.
[--flags]        :: Optional flags for the operation. [async]
</pre>
</pre>


=== volume-group-modify [vg-modify] ===
 
Modifies the name and/or description of a storage volume group.
=== hw-alarm-get [hwa-get] ===
Returns information about a specific hardware alarm.
<pre>
<pre>
<--volume-group> :: An arbirary group of one or more storage volumes.
<--id>           :: Unique identifier (GUID) for the object.
[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are
</pre>
                            not allowed.
 
[--desc]        :: A description for the object.
 
=== hw-alarm-clear-all [hwa-clear-all] ===
Clears all the hardware alarms that have been recorded for the specified hardware RAID controller.
<pre>
<--controller>  :: Name or ID of a hardware RAID controller.
</pre>
</pre>


=== volume-group-delete [vg-delete] ===
 
Deletes a storage volume group, the volumes are not deleted unless the delete-volumes flag is set.
== SAS Switch Management ==
 
=== hw-switch-get [hws-get] ===
Returns detailed information about a storage switch
<pre>
<pre>
<--volume-group> :: An arbirary group of one or more storage volumes.
<--switch>       :: Name or ID of a SAS/FC storage switch
[--destroy-volumes] :: If 'true' all the volumes in the group will be deleted with the volume
                            group, default is 'false'.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== volume-group-snapshot [vg-snap] ===
 
Creates a space efficient copy of all volumes in the group.
=== hw-switch-list [hws-list] ===
Returns a list of all the discovered storage switches
<pre>
<pre>
<--volume-group> :: An arbirary group of one or more storage volumes.
[--switch-adapter] :: Storage switch adapter module ID
[--name-suffix]  :: Name for the snapshot/clone; if unspecified the snapshot/clone will use
                            the original name with '_snapNN'/'_cloneNN' appended.
[--desc]        :: A description for the object.
[--access-mode] :: Access mode for the volume. [none, readonly, *readwrite]
[--count]        :: The number of snapshots of the specified volume to create, default is 1.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== volume-group-clone [vg-clone] ===
 
Creates a complete block by block copy of all volumes in the group.
=== hw-switch-adapter-get [hwsa-get] ===
Returns information about the specified HW switch management module.
<pre>
<pre>
<--volume-group> :: An arbirary group of one or more storage volumes.
<--switch-adapter> :: Storage switch adapter module ID
[--pool]        :: Name of the storage pool or its unique ID (GUID).
[--name-suffix]  :: Name for the snapshot/clone; if unspecified the snapshot/clone will use
                            the original name with '_snapNN'/'_cloneNN' appended.
[--desc]        :: A description for the object.
[--access-mode]  :: Access mode for the volume. [none, readonly, *readwrite]
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>
=== volume-group-list [vg-list] ===
Returns a list of all the storage volume groups.


=== volume-group-get [vg-get] ===  
 
Returns information about a specific storage volume group.
=== hw-switch-adapter-list [hwsa-list] ===
Returns a list of all the storage switch management adapters
 
=== hw-switch-cred-get [hwsc-get] ===
Returns information about specific storage switch login credentials
<pre>
<pre>
<--volume-group> :: An arbirary group of one or more storage volumes.
<--creds>       :: Storage switch credentials (user/pass)
</pre>
</pre>
=== volume-group-volume-add [vgv-add] ===
 
Adds one or more volumes to the specified volume group.
 
=== hw-switch-cred-list [hwsc-list] ===
Returns a list of all the storage switch login credentials
<pre>
<pre>
<--volume-group> :: An arbirary group of one or more storage volumes.
[--switch-adapter] :: Storage switch adapter module ID
<--volume-list>  :: A list of one or more storage volumes.
</pre>
</pre>
=== volume-group-volume-remove [vgv-remove] ===
 
Removes one or more volumes from the specified volume group
 
=== hw-switch-cred-add [hwsc-add] ===
Adds storage switch login credentials for a specific switch management adapter
<pre>
<pre>
<--volume-group> :: An arbirary group of one or more storage volumes.
<--username>    :: Administrator user name for the host, typically 'Administrator' for
<--volume-list> :: A list of one or more storage volumes.
                            Windows hosts.
<--password>     :: Administrator password for the host; enables auto-configuration of  
                            host's iSCSI initiator.
<--domain-password> :: Password for the committing zoneset changes to a storage switch.
<--ip-address>   :: IP Address of the host being added; if unspecified the service will look
                            it up.
[--switch-adapter] :: Storage switch adapter module ID
[--primary]      :: Primary storage system responsible for managing and discovering the
                            switch(es)
[--secondary]    :: Secondary storage system responsible for managing and discovering the
                            switch(es)
</pre>
</pre>
==Snapshot Schedule Management==
 
=== snap-schedule-create [sch-create] ===
 
Creates a new snapshot schedule comprised of the specified storage volumes
=== hw-switch-cred-remove [hwsc-remove] ===
Removes storage switch login credentials
<pre>
<--creds>        :: Storage switch credentials (user/pass)
</pre>
 
 
=== hw-switch-zoneset-get [hwsz-get] ===
Returns information about a specific switch zoneset
<pre>
<pre>
<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are
<--zoneset>      :: Name or ID of a storage switch zoneset
                            not allowed.
[--volume-list]  :: A list of one or more storage volumes.
[--share-list]  :: A list of one or more network shares.
[--start-date]  :: Start date at which the system will begin creating snapshots for a given
                            schedule.
[--enabled]     :: While the schedule is enabled snapshots will be taken at the designated
                            times.
[--desc]        :: A description for the object.
[--quota]        :: Name or ID of a storage quota.
[--max-snaps]    :: Maximum number of snapshots to retain for this schedule, after which the
                            oldest snapshot is removed before a new one is created.
[--days]        :: The days of the week on which this schedule should create snapshots.
                            [fri, mon, sat, *sun, thu, tue, wed]
[--hours]        :: For the specified days of the week, snapshots will be created at the
                            specified hours. [10am, 10pm, 11am, 11pm, 12am, 12pm, 1am, 1pm, 2am, 2pm,
                            *3am, 3pm, 4am, 4pm, 5am, 5pm, 6am, 6pm, 7am, 7pm, 8am, 8pm, 9am, 9pm]
[--flags]        :: Optional flags for the operation. [async]
</pre>
</pre>
=== snap-schedule-modify [sch-modify] ===
 
Modifies the name, description or other properties of a snapshot schedule.
 
=== hw-switch-zoneset-list [hwsz-list] ===
Returns a list of all the discovered zonesets
<pre>
<pre>
<--schedule>    :: Name of a snapshot schedule or its unique ID (GUID).
[--switch]      :: Name or ID of a SAS/FC storage switch
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
</pre>
                            not allowed.
 
[--start-date]  :: Start date at which the system will begin creating snapshots for a given
 
                            schedule.
=== hw-switch-zoneset-activate [hwsz-activate] ===
[--enabled]     :: While the schedule is enabled snapshots will be taken at the designated
Activates a specific storage switch zonset
                            times.
<pre>
[--desc]        :: A description for the object.
<--zoneset>      :: Name or ID of a storage switch zoneset
[--quota]        :: Name or ID of a storage quota.
[--switch]       :: Name or ID of a SAS/FC storage switch
[--max-snaps]   :: Maximum number of snapshots to retain for this schedule, after which the
                            oldest snapshot is removed before a new one is created.
[--days]        :: The days of the week on which this schedule should create snapshots.
                            [fri, mon, sat, *sun, thu, tue, wed]
[--hours]        :: For the specified days of the week, snapshots will be created at the
                            specified hours. [10am, 10pm, 11am, 11pm, 12am, 12pm, 1am, 1pm, 2am, 2pm,
                            *3am, 3pm, 4am, 4pm, 5am, 5pm, 6am, 6pm, 7am, 7pm, 8am, 8pm, 9am, 9pm]
[--flags]        :: Optional flags for the operation. [async]
</pre>
</pre>
=== snap-schedule-delete [sch-delete] ===
 
Deletes a snapshot schedule, snapshots associated with the schedule are not removed.
 
=== hw-switch-failover-group-get [hwsfg-get] ===
Returns information about a specific switch failover group
<pre>
<pre>
<--schedule>     :: Name of a snapshot schedule or its unique ID (GUID).
<--failover-group> :: Name/ID of a storage switch failover group
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>
=== snap-schedule-enable [sch-enable] ===
 
Enables the specified snapshot schedule.
 
=== hw-switch-failover-group-list [hwsfg-list] ===
Returns a list of all the switch failover groups
<pre>
<pre>
<--schedule>    :: Name of a snapshot schedule or its unique ID (GUID).
[--switch]      :: Name or ID of a SAS/FC storage switch
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>
=== snap-schedule-disable [sch-disable] ===  
 
Disables the specified snapshot schedule.
 
=== hw-switch-failover-group-create [hwsfg-create] ===
Creates a new switch failover group
<pre>
<pre>
<--schedule>     :: Name of a snapshot schedule or its unique ID (GUID).
<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are
[--flags]       :: Optional flags for the operation. [async, force]
                            not allowed.
<--pool-list>    :: List of one or more storage pools.
<--sys-primary>  :: Storage system associated with the failover group primary node
<--zoneset-primary> :: Zoneset to be associated with the failover group primary node
<--sys-secondary> :: Storage system associated with the failover group secondary node
<--zoneset-secondary> :: Zoneset to be associated with the failover group secondary node
[--ip-address]  :: IP Address of the host being added; if unspecified the service will look
                            it up.
[--netmask]      :: Subnet IP mask (ex: 255.255.255.0)
[--gateway]      :: IP address of the network gateway
[--desc]         :: A description for the object.
</pre>
</pre>


=== snap-schedule-list [sch-list] ===
Returns a list of all the snapshot schedules.


=== snap-schedule-get [sch-get] ===  
=== hw-switch-failover-group-modify [hwsfg-modify] ===
Returns information about a specific snapshot schedule.
Modifies the properties of a failover group
<pre>
<pre>
<--schedule>     :: Name of a snapshot schedule or its unique ID (GUID).
<--failover-group> :: Name/ID of a storage switch failover group
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
[--ip-address]  :: IP Address of the host being added; if unspecified the service will look
                            it up.
[--netmask]      :: Subnet IP mask (ex: 255.255.255.0)
[--gateway]      :: IP address of the network gateway
[--pool-list]    :: List of one or more storage pools.
[--sys-primary]  :: Storage system associated with the failover group primary node
[--zoneset-primary] :: Zoneset to be associated with the failover group primary node
[--sys-secondary] :: Storage system associated with the failover group secondary node
[--zoneset-secondary] :: Zoneset to be associated with the failover group secondary node
[--desc]        :: A description for the object.
</pre>
</pre>


=== snap-schedule-volume-add [sch-v-add] ===  
 
Adds one or more volumes to the specified schedule.
=== hw-switch-failover-group-delete [hwsfg-delete] ===
Deletes a failover group
<pre>
<pre>
<--schedule>     :: Name of a snapshot schedule or its unique ID (GUID).
<--failover-group> :: Name/ID of a storage switch failover group
[--volume-list]  :: A list of one or more storage volumes.
[--share-list]  :: A list of one or more network shares.
</pre>
</pre>


=== snap-schedule-volume-remove [sch-v-remove] ===  
 
Removes one or more volumes from the specified schedule.
=== hw-switch-failover-group-activate [hwsfg-activate] ===
Activates the pools in a switch failover group on the specified storage system
<pre>
<pre>
<--schedule>     :: Name of a snapshot schedule or its unique ID (GUID).
<--failover-group> :: Name/ID of a storage switch failover group
[--volume-list]  :: A list of one or more storage volumes.
<--storage-system> :: Name or ID of a storage system in a management grid.
[--share-list]  :: A list of one or more network shares.
</pre>
</pre>


==Remote Replication / Storage System Link Commands==
 
===link-get [sl-get] ===
== License Mangement ==
Get information about the storage system link.
 
=== license-get [lic-get] ===
Shows the current license key info, and any activation request code.
<pre>
<pre>
<--link>         :: Storage system link ID or name.
<--key>         :: Unique license key identifier, use key-enum to get a list of these.
</pre>
</pre>


===link-list [sl-list] ===
List the existing storage system remote replication links.


===link-delete [sl-delete] ===
=== license-list [lic-list] ===
Delete an existing storage system link.
Returns a list of all the registered license keys.
 
=== license-add [lic-add] ===
Adds a license key using a license key block specified in a key file. In general, you have 7 days to activate your license using online activation of activation via email. If you do not activate after the 7 days the system will continue to run but you will not be able to make configuration changes.
<pre>
<pre>
<--link>         :: Storage system link ID or name.
[--storage-system] :: Name or ID of a storage system in a management grid.
<--key-file>     :: Key file you received which contains a key block section.
</pre>
</pre>


=== link-create [sl-create] ===
 
Create a new storage system link so that storage volumes may be replicated between storage systems.
=== license-remove [lic-remove] ===
Removes the specified license key.
<pre>
<pre>
        <--storage-system> :: Name or ID of a storage system in a management grid.
<--key>         :: Unique license key identifier, use key-enum to get a list of these.
<--remote-ip>   :: IP Address of the host being added; if unspecified the service will look
                            it up.
[--remote-admin] :: Remote admin user account to establish remote storage system link with.
[--remote-passwd] :: Remote admin user password.
[--local-ip]    :: IP Address of the host being added; if unspecified the service will look
                            it up.
[--bw-limit]    :: Limits the replication bandwidth between two storage systems to a set
                            level specified in units of kilobytes per second (KB/sec). Specify 0 to
                            indicate no limit.
[--link-type]    :: Type of storage system link to establish.
[--desc]        :: A description for the object.
</pre>
</pre>


=== link-modify [sl-modify] ===
 
Modify the properties of the storage system link.
=== license-activate [lic-act] ===
Activates the system using a activation key received from customer support.
<pre>
<pre>
<--link>        :: Storage system link ID or name.
<--activation-key> :: Activation key you'll receive from customer support after you send the  
<--remote-ip>   :: IP Address of the host being added; if unspecified the service will look
                             activation request code.
                            it up.
[--local-ip]    :: IP Address of the host being added; if unspecified the service will look
                            it up.
[--desc]        :: A description for the object.
[--bw-limit]    :: Limits the replication bandwidth between two storage systems to a set
                             level specified in units of kilobytes per second (KB/sec). Specify 0 to
                            indicate no limit.
[--link-type]    :: Type of storage system link to establish.
</pre>
</pre>


=== link-set-credentials [sl-setcred] ===
 
Change the credentials for an existing storage system link.
=== license-activate-online [lic-aon] ===
Requests automatic activation via the online activation service.
<pre>
<pre>
<--link>        :: Storage system link ID or name.
[--key]         :: Unique license key identifier, use key-enum to get a list of these.
[--remote-admin] :: Remote admin user account to establish remote storage system link with.
[--remote-passwd] :: Remote admin user password.
</pre>
</pre>


==Hardware Controller Management Commands==
=== hw-controller-group-list [hwcg-list] ===
Returns a list of all the hardware controller groups.


=== hw-controller-group-get [hwcg-get] ===
== Cloud I/O Stats Management ==
Returns information about all the support hardware RAID controller group types.
 
=== metrics-get [lm-get] ===
Get the current username, token, and interval settings for Librato Metrics.
<pre>
<pre>
<--controller-group> :: Name or ID of a hardware RAID controller group.
<--storage-system> :: Name or ID of a storage system in a management grid.
</pre>
</pre>


=== hw-controller-list [hwc-list] ===
 
Returns a list of all the hardware controllers.
=== metrics-set [lm-set] ===
Set the username, token, and interval for Librato Metrics posting.
<pre>
<pre>
[--controller-group] :: Name or ID of a hardware RAID controller group.
[--storage-system] :: Name or ID of a storage system in a management grid.
<--username>    :: The username/email of the Librato Metrics account.
<--token>        :: The API token associated with the Librato Metrics account.
[--interval]    :: The interval in seconds of how often Quantastor should post data to
                            Librato Metrics.
[--dashboards]  :: Autmatically create the QuantaStor system dashboard in Librato Metrics
[--alert-anno]  :: Add alert annotations to the Librato Metrics postings.
[--config-anno]  :: Add config annotations to the Librato Metrics postings.
</pre>
</pre>


=== hw-controller-get [hwc-get] ===
Returns information about a specific hardware RAID controller.
<pre>
<--controller>  :: Name or ID of a hardware RAID controller.
</pre>


=== hw-controller-rescan [hwc-rescan] ===
== Network Share Management ==
Rescans the hardware controller to look for new disks and RAID units.
 
=== share-create [shr-create] ===
Creates a new NFSv3 network share.
<pre>
<pre>
<--controller>   :: Name or ID of a hardware RAID controller.
<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
<--pool>        :: Name of the storage pool or its unique ID (GUID).
[--desc]        :: A description for the object.
[--public]      :: Indicates that the specified network share should be made public and
                            open for read/write access to all systems on the network.
[--active]      :: Indicates that the network share should be activated.
[--cifs-enable]  :: Enables Samba support for network share.
[--user-access-list] :: List of users with permission to access the network share.
[--cifs-options] :: Additional CIFS/Samba configuration options specified as
                            'key=value,key2=value2,...'.
[--space-quota]  :: Size of the quota for the network share (optional).
[--disable-snap-browsing] :: When this is true, ability to browse snapshot directories over CIFS is
                            disabled.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== hw-enclosure-list [hwe-list] ===
Returns a list of all the enclosures managed by the specified hardware RAID controller.
<pre>
[--controller]  :: Name or ID of a hardware RAID controller.
</pre>


=== hw-enclosure-get [hwe-get] ===
=== share-modify [shr-modify] ===
Returns information about a specific enclosure managed by the specified hardware RAID controller.
Modifies the properties of the specified network share.
<pre>
<pre>
<--enclosure>   :: Name of a hardware RAID enclosure or it unique ID.
<--share>       :: Name or ID of a network share.
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
[--desc]        :: A description for the object.
[--active]      :: Indicates that the network share should be activated.
[--space-quota]  :: Size of the quota for the network share (optional).
[--sync]        :: Synchroniztion policy to use for handling writes to the storage pool
                            (standard, always, none).  standard mode is a hybrid of write-through and
                            write-back caching based on the O_SYNC flag, always mode is write-through
                            to ZIL which could be SSD cache, and disabled indicates to always use
                            async writes. [always, disabled, *standard]
[--compression-type] :: Type of compression to be used. (on | off | lzjb | gzip | gzip-[1-9] |
                            zle | lz4)
[--copies]      :: Indicates the number of copies of each block should be maintained in the
                            storage pool.  This is a way of getting duplicates for bit-rot protection
                            on a single device.
[--cifs-enable]  :: Enables Samba support for network share.
[--user-access-list] :: List of users with permission to access the network share.
[--cifs-options] :: Additional CIFS/Samba configuration options specified as
                            'key=value,key2=value2,...'.
[--disable-snap-browsing] :: When this is true, ability to browse snapshot directories over CIFS is
                            disabled.
</pre>
</pre>


=== hw-unit-list [hwu-list] ===
 
Returns a list of all the RAID units managed by the specified hardware controller.
=== share-delete [shr-delete] ===
Deletes the specified network share
<pre>
<pre>
[--controller]  :: Name or ID of a hardware RAID controller.
<--share>        :: Name or ID of a network share.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== hw-unit-get [hwu-get] ===
 
Returns information about a specific RAID unit managed by the specified hardware RAID controller.
=== share-snapshot [shr-snap] ===
Creates and instant space efficient snapshot of the specified network share (requires Advanced Storage Pool)
<pre>
<pre>
<--unit>         :: Name of a hardware RAID unit or it unique ID.
<--share>       :: Name or ID of a network share.
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
[--desc]        :: A description for the object.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== hw-unit-identify [hwu-identify] ===
 
Flashes the LED indicator light on all the disks in the RAID unit so that it can be identified in the enclosure.
=== share-clone [shr-clone] ===
Creates a full copy of the specified network share to another storage pool.
<pre>
<pre>
<--unit>        :: Name of a hardware RAID unit or it unique ID.
<--share>        :: Name or ID of a network share.
[--duration]     :: Duration in seconds to repeat the disk identification pattern.
<--pool>        :: Name of the storage pool or its unique ID (GUID).
</pre>
[--name]         :: Name for the clone, if not provided the source volume name will be used
                            as a prefix.
[--desc]        :: A description for the object.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
 


=== hw-unit-create [hwu-create] ===
=== share-list [shr-list] ===
Creates a new hardware RAID unit using the specified controller.
Returns a list of all the network shares in the system.
 
=== share-get [shr-get] ===
Returns information about the specified network share.
<pre>
<pre>
<--controller>   :: Name or ID of a hardware RAID controller.
<--share>       :: Name or ID of a network share.
<--raid-type>    :: RAID type for the storage pool. [*AUTO, RAID0, RAID1, RAID5, RAID6]
<--disk-list>    :: Specifies one or more physical disks connected to a hardware RAID
                            controller. Use 'all' to indicate all unused disks.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
</pre>


=== hw-unit-delete [hwu-delete] ===
Deletes the specified RAID unit.  Note that you must first delete the Storage Pool before you delete the RAID unit.
<pre>
<--unit>        :: Name of a hardware RAID unit or it unique ID.
[--duration]    :: Duration in seconds to repeat the disk identification pattern.
</pre>


=== hw-disk-identify [hwd-identify] ===
=== share-client-add [shr-cadd] ===
Flashes the LED indicator light on the specified disk so that it can be identified in the enclosure chassis.
Adds a client for the specified network share.
<pre>
<pre>
<--unit>         :: Name of a hardware RAID unit or it unique ID.
<--share>       :: Name or ID of a network share.
[--duration]     :: Duration in seconds to repeat the disk identification pattern.
<--filter>      :: A filter string for the client
[--async]       :: Use asynchronous communication between NFS server and client
[--secure]      :: Requires the requests to originate from an Internet port less than
                            IPPORT_RESERVED
[--subtree]      :: Enables subtree checking
[--rdonly]      :: Allow only read requests for the NFS volume
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== hw-disk-delete [hwd-delete] ===
 
Marks the specified disk so that it can be removed from the enclosure.  Disks marked as hot-spares will return to normal status after being deleted.
=== share-client-remove [shr-cremove] ===
Removes a client for the specified network share.
<pre>
<pre>
<--disk>         :: Specifies a physical disk connected to a hardware RAID controller.
<--share>       :: Name or ID of a network share.
[--duration]     :: Duration in seconds to repeat the disk identification pattern.
<--filter>      :: A filter string for the client
[--flags]       :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== hw-disk-list [hwd-list] ===
Returns a list of all the disks managed by the specified hardware controller.
<pre>
[--controller]  :: Name or ID of a hardware RAID controller.
</pre>


=== hw-disk-get [hwd-get] ===
=== share-client-modify [shr-cmodify] ===
Returns information about a specific disk managed by a hardware RAID controller.
Modifies a client for the specified network share.
<pre>
<pre>
<--disk>         :: Specifies a physical disk connected to a hardware RAID controller.
<--share>       :: Name or ID of a network share.
<--filter>      :: A filter string for the client
[--rdonly]      :: Allow only read requests for the NFS volume
[--secure]      :: Requires the requests to originate from an Internet port less than
                            IPPORT_RESERVED
[--async]        :: Use asynchronous communication between NFS server and client
[--subtree]      :: Enables subtree checking
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>
=== hw-disk-mark-spare [hwd-mark-spare] ===
 
Marks the specified disk as a universal hot spare within the group of RAID units managed by the controller in which the disk is attached.
 
=== share-client-enum [shr-cenum] ===
Returns a list of clients for the specified network share.
<pre>
<pre>
<--disk>         :: Specifies a physical disk connected to a hardware RAID controller.
<--share>       :: Name or ID of a network share.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>
=== hw-alarm-list [hwa-list] ===
 
Returns a list of all the current hardware alarms/alert messages generated from the controller.
 
=== share-client-get [shr-cget] ===
Returns information about the specific network share client.
<pre>
<pre>
[--controller]  :: Name or ID of a hardware RAID controller.
<--share>        :: Name or ID of a network share.
<--filter>      :: A filter string for the client
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>
=== hw-alarm-get [hwa-get] ===
 
Returns information about a specific hardware alarm.
 
=== share-leave-domain [shr-ldomain] ===
Leaves the current domain.
<pre>
<pre>
<--id>           :: Unique identifer (GUID) for the object.
<--storage-system> :: Name or ID of a storage system in a management grid.
[--ad-admin]    :: The administrator account of the domain that QuantaStor is a member of.
[--ad-password]  :: The password to the administrator account of the domain that QuantaStor
                            is a member of.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>
=== hw-alarm-clear-all [hwa-clear-all] ===
 
Clears all the hardware alarms that have been recorded for the specified hardware RAID controller.
 
=== share-join-domain [shr-jdomain] ===
Joins the specified domain/realm.
<pre>
<pre>
<--controller>   :: Name or ID of a hardware RAID controller.
<--storage-system> :: Name or ID of a storage system in a management grid.
<--domain>      :: The name of the domain to have the QuantaStor system join. (DOMAIN)
<--realm>        :: The name of the realm that the domain is in. (DOMAIN.COM)
<--kdc>          :: The name of the active directory machine.
<--ad-admin>    :: The administrator account of the domain that QuantaStor is a member of.
<--ad-password>  :: The password to the administrator account of the domain that QuantaStor
                            is a member of.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


==Network Share Management Commands==
 
=== share-create [shr-create] ===
=== share-ad-user-group-enum [shr-ad-ug-enum] ===
Creates a new NFS network share.
Returns a list of all the users and groups in the domain that QuantaStor is in.
<pre>
<pre>
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
<--storage-system> :: Name or ID of a storage system in a management grid.
                            not allowed.
[--share]       :: Name or ID of a network share.
<--pool>         :: Name of the storage pool or its unique ID (GUID).
[--desc]        :: A description for the object.
[--public]      :: Indicates that the specified network share should be made public and
                            open for read/write access to all systems on the network.
[--active]       :: Indicates that the network share should be activated.
[--flags]        :: Optional flags for the operation. [async, force]
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>
=== share-modify [shr-modify] ===
 
Modifies the properties of the specified network share.
 
== Remote Replication Management ==
 
=== replication-schedule-create [rsch-create] ===
Creates a new replication schedule to replicate the specified storage volumes and shares to the specified target pool on a schedule.
<pre>
<pre>
<--share>       :: share
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are  
[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are  
                             not allowed.
                             not allowed.
[--desc]        :: A description for the object.
<--target-pool>  :: Target storage pool on remote system to replicate to.
[--public]       :: Indicates that the specified network share should be made public and
[--volume-list]  :: A list of one or more storage volumes.
                             open for read/write access to all systems on the network.
[--share-list]  :: A list of one or more network shares.
[--active]       :: Indicates that the network share should be activated.
[--start-date]  :: Start date at which the system will begin creating snapshots for a given
                            schedule.
[--enabled]      :: While the schedule is enabled snapshots will be taken at the designated
                            times.
[--desc]        :: A description for the object.
[--cloud]       :: Name of a Storage Cloud or its unique id.
[--max-replicas] :: Maximum number of replica snapshot checkpoints to retain for this
                            schedule, after which the oldest snapshot is removed before a new one is
                            created.
[--days]        :: The days of the week on which this schedule should create snapshots.
                            [fri, mon, sat, *sun, thu, tue, wed]
[--hours]        :: For the specified days of the week, snapshots will be created at the
                             specified hours. [10am, 10pm, 11am, 11pm, 12am, 12pm, 1am, 1pm, 2am, 2pm,
                            *3am, 3pm, 4am, 4pm, 5am, 5pm, 6am, 6pm, 7am, 7pm, 8am, 8pm, 9am, 9pm]
[--interval]    :: Interval in minutes between replications, minimum is 15 minutes.
[--flags]       :: Optional flags for the operation. [async]
</pre>
</pre>
=== share-delete [shr-delete] ===
Deletes the specified network share
<pre>
<--share>        :: Name or ID of a network share.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
=== share-list [shr-list] ===
Returns a list of all the network shares in the system.


=== share-get [shr-get] ===
 
Returns information about the specified network share.
=== replication-schedule-modify [rsch-modify] ===
Modifies the name, description or other properties of a replication schedule.
<pre>
<pre>
<--share>        :: Name or ID of a network share.
<--schedule>     :: Name or ID of a replication schedule.
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
[--start-date]  :: Start date at which the system will begin creating snapshots for a given
                            schedule.
[--enabled]      :: While the schedule is enabled snapshots will be taken at the designated
                            times.
[--desc]        :: A description for the object.
[--cloud]       :: Name of a Storage Cloud or its unique id.
[--max-replicas] :: Maximum number of replica snapshot checkpoints to retain for this
                            schedule, after which the oldest snapshot is removed before a new one is
                            created.
[--days]        :: The days of the week on which this schedule should create snapshots.
                            [fri, mon, sat, *sun, thu, tue, wed]
[--hours]        :: For the specified days of the week, snapshots will be created at the
                            specified hours. [10am, 10pm, 11am, 11pm, 12am, 12pm, 1am, 1pm, 2am, 2pm,
                            *3am, 3pm, 4am, 4pm, 5am, 5pm, 6am, 6pm, 7am, 7pm, 8am, 8pm, 9am, 9pm]
[--interval]    :: Interval in minutes between replications, minimum is 15 minutes.
[--flags]        :: Optional flags for the operation. [async]
</pre>
</pre>
=== share-client-add [shr-cadd] ===
 
Adds a client for the specified network share.
 
=== replication-schedule-delete [rsch-delete] ===
Deletes a replication schedule, snapshots associated with the schedule are not removed.
<pre>
<pre>
<--share>       :: share
<--schedule>     :: Name or ID of a replication schedule.
<--filter>      :: A filter string for the client
[--async]        :: Use asynchronous communication between NFS server and client
[--secure]      :: Requires the requests to originate from an Internet port less than
                            IPPORT_RESERVED
[--subtree]      :: Enables subtree checking
[--rdonly]      :: Allow only read requests for the NFS volume
[--flags]        :: Optional flags for the operation. [async, force]
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>
=== share-client-remove [shr-cremove] ===
 
Removes a client for the specified network share.
 
=== replication-schedule-add [rsch-add] ===
Adds one or more volumes/shares to the specified schedule.
<pre>
<pre>
<--share>       :: share
<--schedule>     :: Name or ID of a replication schedule.
<--filter>      :: A filter string for the client
[--volume-list]  :: A list of one or more storage volumes.
[--flags]       :: Optional flags for the operation. [async, force]
[--share-list]   :: A list of one or more network shares.
</pre>
</pre>
=== share-client-modify [shr-cmodify] ===
 
Modifies a client for the specified network share.
 
=== replication-schedule-remove [rsch-remove] ===
Removes one or more volumes/shares from the specified schedule.
<pre>
<pre>
<--share>       :: share
<--schedule>     :: Name or ID of a replication schedule.
<--filter>      :: A filter string for the client
[--volume-list] :: A list of one or more storage volumes.
[--rdonly]      :: Allow only read requests for the NFS volume
[--share-list]   :: A list of one or more network shares.
[--secure]       :: Requires the requests to originate from an Internet port less than
                            IPPORT_RESERVED
[--async]        :: Use asynchronous communication between NFS server and client
[--subtree]     :: Enables subtree checking
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== share-client-enum [shr-cenum] ===
 
Returns a list of clients for the specified network share.
=== replication-schedule-enable [rsch-enable] ===
Enables the specified replication schedule.
<pre>
<pre>
<--share>       :: share
<--schedule>     :: Name or ID of a replication schedule.
[--flags]        :: Optional flags for the operation. [async, force]
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>
=== share-client-get [shr-cget] ===
 
Returns information about the specific network share client.
 
=== replication-schedule-disable [rsch-disable] ===
Disables the specified replication schedule.
<pre>
<pre>
<--share>       :: share
<--schedule>     :: Name or ID of a replication schedule.
<--filter>      :: A filter string for the client
[--flags]        :: Optional flags for the operation. [async, force]
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>
==Amazon S3 Cloud Backup Commands==
 
=== cloud-backup-provider-get [cbp-get] ===
 
Returns detailed information about the specified cloud provider.
=== replication-schedule-trigger [rsch-trigger] ===
Triggers the specified schedule to run immediately.
<pre>
<pre>
<--provider>    :: A cloud provider is a storage provider like Amazon S3 which QuantaStor
<--schedule>    :: Name or ID of a replication schedule.
                            utilizes for backup in the cloud.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>
=== cloud-backup-provider-list [cbp-list] ===


Returns the list of supported cloud providers.


=== cloud-backup-credentials-add [cbcred-add] ===
=== replication-schedule-list [rsch-list] ===
Adds cloud provider credentials to enable cloud backup to cloud backup containers.
Returns a list of all the replication schedules.
 
=== replication-schedule-get [rsch-get] ===
Returns information about a specific replication schedule.
<pre>
<pre>
<--access-key>   :: The access key provided by your cloud storage provider for accessing
<--schedule>     :: Name or ID of a replication schedule.
                            your cloud storage account.
<--secret-key>  :: The secret key provided by your cloud storage provider for accessing
                            your cloud storage account.
</pre>
</pre>


=== cloud-backup-credentials-remove [cbcred-remove] ===
 
Removes the specified cloud provider credentials
=== replica-assoc-stop [rep-assoc-stop] ===
Attempts to stop the replication process between a source/target pair of volumes or shares.
<pre>
<pre>
<--provider-creds> :: Credentials for accessing your cloud storage provider account.  With
<--replica-assoc> :: Name or ID of a replica association between a source/target volume or
                             Amazon S3 this is your 'Access Key ID' and your 'Secret Access Key'.
                             share
</pre>
</pre>


=== cloud-backup-credentials-get [cbcred-get] ===
 
Returns information about the specified cloud provider credential.
=== replica-assoc-rollback [rep-assoc-rollback] ===
Reverses the replication to send the changes on the target back to the source volume/share.  Requires the --force flag.
<pre>
<pre>
<--provider-creds> :: Credentials for accessing your cloud storage provider account.  With
<--replica-assoc> :: Name or ID of a replica association between a source/target volume or
                             Amazon S3 this is your 'Access Key ID' and your 'Secret Access Key'.
                             share
</pre>
</pre>


=== cloud-backup-credentials-list [cbcred-list] ===
Returns a list of all the cloud provider credentials in the system. Passwords are masked.


=== cloud-backup-container-get [cbc-get] ===
=== replica-assoc-sync [rep-assoc-sync] ===
Returns detailed information on a specific cloud backup container.
Restarts the replication process between a source/target pair of volumes or shares.
<pre>
<pre>
<--container>   :: A cloud backup container into which storage volumes can be backed up.  A
<--replica-assoc> :: Name or ID of a replica association between a source/target volume or
                             cloud backup container is like an unlimited storage pool in the cloud.
                             share
</pre>
</pre>


=== cloud-backup-container-list [cbc-list] ===
Returns a list of cloud backup containers in the system.


=== cloud-backup-container-create [cbc-create] ===
=== replica-assoc-delete [rep-assoc-delete] ===
Creates a cloud backup container into which cloud backups of storage volumes can be made.
Deletes the specified replication association between a source/target pair of volumes or shares.
<pre>
<pre>
<--name>          :: Names may include any alpha-numeric characters '_' and '-', spaces are
<--replica-assoc> :: Name or ID of a replica association between a source/target volume or
                            not allowed.
                             share
<--desc>          :: A description for the object.
<--provider-creds> :: Credentials for accessing your cloud storage provider account.  With
                            Amazon S3 this is your 'Access Key ID' and your 'Secret Access Key'.
<--locaiton>      :: Cloud storage provider endpoint location.
<--encryption-key> :: A pass-phrase which is used to encrypt all the data sent to the cloud
                             container.
</pre>
</pre>


=== cloud-backup-container-delete [cbc-delete] ===
 
Deletes the specified cloud backup container. WARNING, all data in the container will be destroyed.
=== replica-assoc-get [rep-assoc-get] ===
Returns details of the specified replication association.
<pre>
<pre>
<--container>   :: A cloud backup container into which storage volumes can be backed up.  A
<--replica-assoc> :: Name or ID of a replica association between a source/target volume or
                             cloud backup container is like an unlimited storage pool in the cloud.
                             share
</pre>
</pre>
=== cloud-backup-container-add [cbc-add] ===
 
Recovers a cloud backup container that was previously removed or used with a prior installation.
 
=== replica-assoc-list [rep-assoc-list] ===
Returns a list of all the replication associations.
 
== RBAC Role Management ==
 
=== role-add [r-add] ===
Adds a new role to the role based access control (RBAC) system.
<pre>
<pre>
<--provider-creds> :: Credentials for accessing your cloud storage provider account.  With
<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            Amazon S3 this is your 'Access Key ID' and your 'Secret Access Key'.
                            not allowed.
<--locaiton>    :: Cloud storage provider endpoint location.
[--desc]        :: A description for the object.
<--encryption-key> :: A pass-phrase which is used to encrypt all the data sent to the cloud
[--permissions] :: List of permissions and/or permission groups to add to the specified  
                            container.
                             role.
<--storage-url> :: The Amazon S3 or other storage URL used to identify a cloud backup
                            container.
</pre>
=== cloud-backup-container-remove [cbc-remove] ===
Removes the specified cloud backup container from the system but does not delete any backup data in the cloud.
<pre>
<--container>    :: A cloud backup container into which storage volumes can be backed up.  A
                            cloud backup container is like an unlimited storage pool in the cloud.
</pre>
=== cloud-backup-container-enable [cbc-enable] ===
Enables a cloud container that was previously disabled or was inaccessible due to network connection issues.
<pre>
<--container>    :: A cloud backup container into which storage volumes can be backed up.  A
                            cloud backup container is like an unlimited storage pool in the cloud.
</pre>
=== cloud-backup-container-disable [cbc-disable] ===
Disables access to the specified cloud container without having to remove it.
<pre>
<--container>    :: A cloud backup container into which storage volumes can be backed up.  A
                             cloud backup container is like an unlimited storage pool in the cloud.
</pre>
</pre>


== Grid Management Commands ==
 
=== grid-get [mg-get] ===  
=== role-modify [r-modify] ===
Get general information about the storage system management grid.
Modifies the name and/or description of a role
=== grid-create [mg-create] ===
Creates a new management grid.  A given storage system can only be a member of one grid at a time.
<pre>
<pre>
<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are not allowed.
<--role>        :: Name of a security role or its unique ID (GUID).
[--vif-ipaddress] :: Virtual host IP address to be associated with the master node in a the management grid.
[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are  
                            not allowed.
[--desc]        :: A description for the object.
[--desc]        :: A description for the object.
[--vif-hostname] :: Cluster virtual host name to be associated with the master node in the management grid
[--port]        :: Default physical target port to associate the management grid virtual host IP address with.
</pre>
</pre>


=== grid-modify [mg-modify] ===  
 
Modify the management grid properties.
=== role-remove [r-remove] ===
Removes the specified role identified by name or ID
<pre>
<pre>
        <--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
<--role>        :: Name of a security role or its unique ID (GUID).
                            not allowed.
        [--vif-enable]  :: Enables the use of a virtual interface for grid management.
        [--vif-ipaddress] :: Virtual host IP address to be associated with the master node in a the
                            management grid.
        [--desc]        :: A description for the object.
        [--vif-hostname] :: Cluster virtual host name to be associated with the master node in the
                            management grid
        [--port]        :: Default physical target port to associate the management grid virtual
                            host IP address with.
        [--bind-port]    :: This is the network address to bind with the Corosync cluster.
        [--grid-num]    :: Defaults to zero (0), increment this to a unique value between 0-9 if
                            you have more than one grid on your network.
</pre>
</pre>


=== grid-delete [mg-delete] ===
Deletes the management grid.  After the grid is deleted each node in the grid operates independently again.


=== grid-add [mg-add] ===  
=== role-list [r-list] ===
Adds the specified storage system to the management grid.
Returns a list of all the defined roles the RBAC system.
 
=== role-get [r-get] ===
Gets information about the specified role.
<pre>
<pre>
<--node-ipaddress> :: IP address of a storage system node.
<--role>         :: Name of a security role or its unique ID (GUID).
[--node-username] :: Admin user account with permissions to add/remove nodes from the grid.
[--node-password] :: Admin user account password.
</pre>
</pre>
=== grid-remove [mg-remove] ===  
 
Removes the specified storage system from the management grid.
 
=== role-permission-add [rp-add] ===
Adds additional permissions and/or permission groups to the specified role.
<pre>
<pre>
<--storage-system> :: Name or ID of a storage system in a management grid.
<--role>         :: Name of a security role or its unique ID (GUID).
<--permissions>  :: List of permissions and/or permission groups to add to the specified
                            role.
</pre>
</pre>
==Quota Management Commands==


=== quota-create [q-create] ===
 
Creates a new storage quota on a pool for the specified storage cloud.
=== role-permission-remove [rp-remove] ===
Removes one or more permissions and/or permission groups from the specified role.
<pre>
<pre>
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
<--role>        :: Name of a security role or its unique ID (GUID).
                            not allowed.
<--permissions> :: List of permissions and/or permission groups to add to the specified
        <--pool>        :: Name of the storage pool or its unique ID (GUID).
                             role.
        <--cloud>       :: Name of a Storage Cloud or its unique id.
        [--policy]      :: Indicates the type of quota to be created.
[--desc]        :: A description for the object.
[--psize]        :: The total thin-provisionable space allowed by this quota.
[--usize]        :: The total utilizable space allowed by this quota which may be less than
                            the provisionable space.
[--max-volumes]  :: The maximum number of volumes that can be created using this quota,
                            specify 0 for no limit.
[--max-shares]  :: The maximum number of share that can be created using this quota,
                             specify 0 for no limit.
[--flags]        :: Optional flags for the operation. [async]
</pre>
</pre>


=== quota-modify [q-modify] ===  
 
Modifies one to change the name and/or description of a storage quota.
== iSCSI Session Management ==
 
=== session-list [sn-list] ===
Returns a list of all the active iSCSI sessions.
<pre>
<pre>
<--quota>        :: Name or ID of a storage quota.
[--volume]      :: Name of the storage volume or its unique ID (GUID).
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
[--host]        :: Name of the host or its unique ID (GUID).
                            not allowed.
</pre>
[--desc]        :: A description for the object.
 
[--psize]        :: The total thin-provisionable space allowed by this quota.
 
[--usize]        :: The total utilizable space allowed by this quota which may be less than
=== session-get [sn-get] ===
                            the provisionable space.
Returns detailed information on a specific iSCSI session.
[--max-volumes] :: The maximum number of volumes that can be created using this quota,
<pre>
                            specify 0 for no limit.
<--session>      :: iSCSI session identifier for an active iSCSI session.
[--max-shares]  :: The maximum number of share that can be created using this quota,
                            specify 0 for no limit.
[--flags]        :: Optional flags for the operation. [async]
</pre>
</pre>


=== quota-delete [q-delete] ===
 
Deletes a storage quota, the associated volumes are not deleted.
=== session-close [sn-close] ===
Forcibly closes the specified iSCSI session; generally not recommended, use acl-remove instead.
<pre>
<pre>
<--quota>       :: Name or ID of a storage quota.
<--session>     :: iSCSI session identifier for an active iSCSI session.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== quota-list [q-list] ===
Returns a list of all the storage quotas.


=== quota-get [q-get] ===
== Snapshot Schedule Management ==
Returns information about a specific storage quota.
<pre>
<--quota>        :: Name or ID of a storage quota.
</pre>


=== quota-volume-add [qv-add] ===  
=== snap-schedule-create [sch-create] ===
Adds one or more volumes to the specified quota.
Creates a new snapshot schedule comprised of the specified storage volumes.
<pre>
<pre>
<--quota>       :: Name or ID of a storage quota.
<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are
<--volume-list> :: A list of one or more storage volumes.
                            not allowed.
</pre>
[--volume-list] :: A list of one or more storage volumes.
=== quota-volume-remove [qv-remove] ===
[--share-list]   :: A list of one or more network shares.
Removes one or more volumes from the specified quota
[--start-date]  :: Start date at which the system will begin creating snapshots for a given
<pre>
                            schedule.
<--quota>       :: Name or ID of a storage quota.
[--enabled]      :: While the schedule is enabled snapshots will be taken at the designated
<--volume-list>  :: A list of one or more storage volumes.
                            times.
</pre>
[--desc]        :: A description for the object.
=== quota-share-assoc-list [qs-alist] ===
[--cloud]       :: Name of a Storage Cloud or its unique id.
Returns a list of all the associated shares of a specified quota
[--max-snaps]    :: Maximum number of snapshots to retain for this schedule, after which the
<pre>
                            oldest snapshot is removed before a new one is created.
<--share-list>  :: A list of one or more network shares.
[--days]        :: The days of the week on which this schedule should create snapshots.
                            [fri, mon, sat, *sun, thu, tue, wed]
[--hours]       :: For the specified days of the week, snapshots will be created at the
                            specified hours. [10am, 10pm, 11am, 11pm, 12am, 12pm, 1am, 1pm, 2am, 2pm,
                            *3am, 3pm, 4am, 4pm, 5am, 5pm, 6am, 6pm, 7am, 7pm, 8am, 8pm, 9am, 9pm]
[--flags]        :: Optional flags for the operation. [async]
</pre>
</pre>


=== quota-volume-assoc-list [qv-alist] ===
Returns a list of all the associated volumes of a specified quota
<pre>
<--volume-list>  :: volume-list
</pre>


=== quota-share-add [qs-add] ===
=== snap-schedule-modify [sch-modify] ===
Adds one or more shares to the specified quota
Modifies the name, description or other properties of a snapshot schedule.
<pre>
<pre>
<--quota>       :: Name or ID of a storage quota.
<--schedule>     :: Name of a snapshot schedule or its unique ID (GUID).
<--share-list>  :: A list of one or more network shares.
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
[--start-date]  :: Start date at which the system will begin creating snapshots for a given
                            schedule.
[--enabled]      :: While the schedule is enabled snapshots will be taken at the designated
                            times.
[--desc]        :: A description for the object.
[--cloud]        :: Name of a Storage Cloud or its unique id.
[--max-snaps]    :: Maximum number of snapshots to retain for this schedule, after which the
                            oldest snapshot is removed before a new one is created.
[--days]        :: The days of the week on which this schedule should create snapshots.
                            [fri, mon, sat, *sun, thu, tue, wed]
[--hours]        :: For the specified days of the week, snapshots will be created at the
                            specified hours. [10am, 10pm, 11am, 11pm, 12am, 12pm, 1am, 1pm, 2am, 2pm,
                            *3am, 3pm, 4am, 4pm, 5am, 5pm, 6am, 6pm, 7am, 7pm, 8am, 8pm, 9am, 9pm]
[--flags]        :: Optional flags for the operation. [async]
</pre>
</pre>


=== quota-share-remove [qs-remove] ===  
 
Removes one or more shares from the specified quota
=== snap-schedule-delete [sch-delete] ===
Deletes a snapshot schedule, snapshots associated with the schedule are not removed.
<pre>
<pre>
<--quota>       :: Name or ID of a storage quota.
<--schedule>     :: Name of a snapshot schedule or its unique ID (GUID).
<--share-list>  :: A list of one or more network shares.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


==Cloud Management Commands==


=== cloud-create [c-create] ===  
=== snap-schedule-enable [sch-enable] ===
Creates a new storage cloud compiresed of the specifed users, resources and chap information.
Enables the specified snapshot schedule.
<pre>
<pre>
<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are
<--schedule>     :: Name of a snapshot schedule or its unique ID (GUID).
                            not allowed.
[--flags]        :: Optional flags for the operation. [async, force]
[--desc]        :: A description for the object.
</pre>
[--subject-list] :: A list subjects in the following format name:type. Ex:
                            userName:user,groupName:user_group...
[--resource-list] :: A list resources in the following format name:type. Ex:
                            vol:volume,hostname:host...
[--parent-cloud] :: The name or unique id of a storage cloud.
[--tier]        :: The tier of the storage cloud.
[--organization] :: The name of the organization this storage cloud is assigned to.
[--chap-user]    :: An optional iSCSI CHAP username.
[--chap-pass]    :: An optional iSCSI CHAP password.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>


=== cloud-modify [c-modify] ===
Modifys the name, description, parent storage cloud, tier, organization, and chap information of a storage cloud.
<pre>
<--cloud>        :: Name of a Storage Cloud or its unique id.
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
[--desc]        :: A description for the object.
[--parent-cloud] :: The name or unique id of a storage cloud.
[--tier]        :: The tier of the storage cloud.
[--organization] :: The name of the organization this storage cloud is assigned to.
[--chap-user]    :: An optional iSCSI CHAP username.
[--chap-pass]    :: An optional iSCSI CHAP password.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>


=== cloud-delete [c-delete] ===  
=== snap-schedule-disable [sch-disable] ===
Deletes a storage cloud, the resources and users will not be deleted.
Disables the specified snapshot schedule.
<pre>
<pre>
<--cloud>       :: Name of a Storage Cloud or its unique id.
<--schedule>     :: Name of a snapshot schedule or its unique ID (GUID).
[--flags]        :: Optional flags for the operation. [async, force]
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== cloud-get [c-get] ===
 
Returns information of the specified storage clouds.
=== snap-schedule-list [sch-list] ===
Returns a list of all the snapshot schedules.
 
=== snap-schedule-get [sch-get] ===
Returns information about a specific snapshot schedule.
<pre>
<pre>
<--cloud>       :: Name of a Storage Cloud or its unique id.
<--schedule>     :: Name of a snapshot schedule or its unique ID (GUID).
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== cloud-list [c-list] ===
 
Returns a list of all the storage clouds.
=== snap-schedule-add [sch-add] ===
Adds one or more volumes/shares to the specified schedule.
<pre>
<pre>
[--flags]       :: Optional flags for the operation. [async, force]
<--schedule>    :: Name of a snapshot schedule or its unique ID (GUID).
[--volume-list] :: A list of one or more storage volumes.
[--share-list]   :: A list of one or more network shares.
</pre>
</pre>


=== cloud-user-add [cu-add] ===  
 
Add one or more users to the specified storage cloud.
=== snap-schedule-remove [sch-remove] ===
Removes one or more volumes/shares from the specified schedule.
<pre>
<pre>
<--cloud>       :: Name of a Storage Cloud or its unique id.
<--schedule>     :: Name of a snapshot schedule or its unique ID (GUID).
<--subject-list> :: A list subjects in the following format name:type. Ex:
[--volume-list:: A list of one or more storage volumes.
                            userName:user,groupName:user_group...
[--share-list]  :: A list of one or more network shares.
</pre>
</pre>


=== cloud-user-remove [cu-remove] ===  
 
Remove one or more users from specified storage cloud.
=== snap-schedule-trigger [sch-trigger] ===
Triggers the specified schedule to run immediately.
<pre>
<pre>
<--cloud>       :: Name of a Storage Cloud or its unique id.
<--schedule>     :: Name of a snapshot schedule or its unique ID (GUID).
<--subject-list> :: A list subjects in the following format name:type. Ex:
                            userName:user,groupName:user_group...
</pre>
</pre>


=== cloud-resource-add [cr-add] ===
 
Add one or more resources to the specified storage cloud.
=== cloud-create [c-create] ===
Creates a new storage cloud comprised of the specified users, resources and chap information.
<pre>
<pre>
<--cloud>       :: Name of a Storage Cloud or its unique id.
<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are
<--resource-list> :: A list resources in the following format name:type. Ex:  
                            not allowed.
[--desc]        :: A description for the object.
[--subject-list] :: A list subjects in the following format name:type. Ex:
                            userName:user,groupName:user_group...
[--resource-list] :: A list resources in the following format name:type. Ex:  
                             vol:volume,hostname:host...
                             vol:volume,hostname:host...
[--parent-cloud] :: The name or unique id of a storage cloud.
[--tier]        :: The tier of the storage cloud.
[--organization] :: The name of the organization this storage cloud is assigned to.
[--chap-user]    :: An optional iSCSI CHAP username.
[--chap-pass]    :: An optional iSCSI CHAP password.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
</pre>


=== cloud-resource-remove [cr-remove] ===  
 
Remove one or more resource from the specified storage cloud.
=== cloud-modify [c-modify] ===
Modifies the name, description, parent storage cloud, tier, organization, and chap information of a storage cloud.
<pre>
<pre>
<--cloud>        :: Name of a Storage Cloud or its unique id.
<--cloud>        :: Name of a Storage Cloud or its unique id.
<--resource-list> :: A list resources in the following format name:type. Ex:  
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            vol:volume,hostname:host...
                            not allowed.
</pre>
[--desc]        :: A description for the object.
 
[--parent-cloud] :: The name or unique id of a storage cloud.
=== cloud-subject-assoc-list [csub-alist] ===  
[--tier]        :: The tier of the storage cloud.
Returns a list of associated storage clouds to the specified subject.
[--organization] :: The name of the organization this storage cloud is assigned to.
[--chap-user]    :: An optional iSCSI CHAP username.
[--chap-pass]    :: An optional iSCSI CHAP password.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== cloud-delete [c-delete] ===
Deletes a storage cloud, the resources and users will not be deleted.
<pre>
<pre>
<--subject>     :: The unique id of a user or user group.
<--cloud>       :: Name of a Storage Cloud or its unique id.
[--flags]        :: Optional flags for the operation. [async, force]
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== cloud-resource-mode [cr-mode] ===
 
Set the mode of a specified resource in the storage cloud.
=== cloud-get [c-get] ===
Returns information of the specified storage clouds.
<pre>
<pre>
<--cloud>        :: Name of a Storage Cloud or its unique id.
<--cloud>        :: Name of a Storage Cloud or its unique id.
<--resource>    :: The unique id of a volume or volume group or share or host or host group.
[--flags]        :: Optional flags for the operation. [async, force]
<--access-mode>  :: Access mode for the volume.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
</pre>
==Gluster Management Controls==


=== gluster-volume-list [gv-list] ===
Returns a list of all the Gluster volumes in the grid


=== gluster-volume-get [gv-get] ===
=== cloud-list [c-list] ===
Gets information about the specified Gluster volume
Returns a list of all the storage clouds.
<pre>
<pre>
        <--gluster-volume> :: Name or ID of the Gluster volume
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
</pre>


=== gluster-brick-list [gb-list] ===
Returns a list of all the Gluster bricks


=== gluster-brick-get [gb-get] ===
=== cloud-user-add [cu-add] ===
Gets information about a specific Gluster brick.
Add one or more users to the specified storage cloud.
<pre>
<pre>
        <--gluster-brick> :: Name or ID of a Gluster brick
<--cloud>       :: Name of a Storage Cloud or its unique id.
<--subject-list> :: A list subjects in the following format name:type. Ex:
                            userName:user,groupName:user_group...
</pre>
</pre>


=== gluster-peer-list [gp-list] ===
Returns a list of all the Gluster peer systems.


=== gluster-ha-intf-get [gi-get] ===
=== cloud-user-remove [cu-remove] ===
Returns a list of all the Gluster HA failover interface definitions.
Remove one or more users from specified storage cloud.
<pre>
<pre>
        <--ha-interface> :: High-availability interface for a specific Gluster Volume.
<--cloud>        :: Name of a Storage Cloud or its unique id.
<--subject-list> :: A list subjects in the following format name:type. Ex:
                            userName:user,groupName:user_group...
</pre>
</pre>


=== gluster-ha-intf-list [gi-list] ===
Gets information about a specific Gluster HA failover interface definition.


=== gluster-peer-get [gp-get] ===
=== cloud-resource-add [cr-add] ===
Gets information about a specific Gluster peer system
Add one or more resources to the specified storage cloud.
<pre>
<pre>
        <--gluster-peer> :: Name or ID of the Gluster peer
<--cloud>       :: Name of a Storage Cloud or its unique id.
<--resource-list> :: A list resources in the following format name:type. Ex:
                            vol:volume,hostname:host...
</pre>
</pre>


=== gluster-volume-create [gv-create] ===
 
Create a new Gluster volume with new Bricks on the specified Storage Pools.
=== cloud-resource-remove [cr-remove] ===
Remove one or more resource from the specified storage cloud.
<pre>
<pre>
        <--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are
<--cloud>       :: Name of a Storage Cloud or its unique id.
                            not allowed.
<--resource-list> :: A list resources in the following format name:type. Ex:  
        [--desc]        :: A description for the object.
                            vol:volume,hostname:host...
        <--pool-list>    :: List of one or more storage pools.
</pre>
        <--replica-count> :: Number of replia copies to have of each file in the Gluster volume
        <--stripe-volume> :: Enable striping of files across Gluster bricks
        [--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>


=== gluster-volume-delete [gv-delete] ===
Deletes the specified Gluster volume.
<pre>
        <--gluster-volume> :: Name or ID of the Gluster volume
</pre>


=== gluster-volume-modify [gv-modify] ===
=== cloud-subject-assoc-list [csub-alist] ===
Modifies the name and/or description of the specified Gluster volume.
Returns a list of associated storage clouds to the specified subject.
<pre>
<pre>
        <--gluster-volume> :: Name or ID of the Gluster volume
<--subject>     :: The unique id of a user or user group.
        <--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
[--flags]        :: Optional flags for the operation. [async, force]
                            not allowed.
        [--desc]        :: A description for the object.
        [--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
</pre>


=== gluster-volume-start [gv-start] ===
Starts the specified Gluster volume
<pre>
        <--gluster-volume> :: Name or ID of the Gluster volume
        [--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>


=== gluster-volume-stop [gv-stop] ===
=== cloud-resource-mode [cr-mode] ===
Stops the specified Gluster volume.
Set the mode of a specified resource in the storage cloud.
<pre>
<pre>
        <--gluster-volume> :: Name or ID of the Gluster volume
<--cloud>       :: Name of a Storage Cloud or its unique id.
        [--flags]        :: Optional flags for the operation. [async, force, *none]
<--resource>    :: The unique id of a volume or volume group or share or host or host group.
<--access-mode>  :: Access mode for the volume.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
</pre>


=== gluster-volume-rebalance [gv-rebalance] ===
Rebalances files across the bricks in the specified Gluster volume
<pre>
        <--gluster-volume> :: Name or ID of the Gluster volume
</pre>


=== gluster-volume-add-bricks [gv-add-bricks] ===
== Storage Pool Management ==
Adds one or more bricks on the specified volume.
 
=== pool-create [p-create] ===
Creates a new storage pool from which storage volumes can be created.
<pre>
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
<--disk-list>    :: Comma delimited list of drives (no spaces) to be used for the operation.
[--raid-type]    :: RAID type for the storage pool. [*AUTO, RAID0, RAID1, RAID10, RAID5,
                            RAID6]
[--pool-type]    :: The type of storage pool to be created. [btrfs, ext4, jfs, *xfs, zfs]
[--desc]        :: A description for the object.
[--is-default]  :: Indicates that this pool should be utilized as the default storage pool.
[--ssd]          :: Enable solid state disk (SSD) storage pool optimizations.
[--compress]    :: Enable storage volume compression on the pool, this boosts both read and
                            write performance on most IO loads.
[--nobarriers]  :: Enable storage pool write optimizations.  This requires that you have a
                            hardware controller with a battery backup unit.
[--profile]      :: Specifies an optional IO optimization profile for the storage pool. 
                            Storage pool profiles control elements like read-ahead, queue depth and
                            other device configurable settings.
[--raid-set-size] :: Then number of disks to use in each set of disks when creating a RAID50
                            or RAID60 storage pool.
[--flags]        :: Optional flags for the operation. [async]
</pre>
 
 
=== pool-grow [p-grow] ===
Grows the specified storage pool by adding an additional disk.  You can only grow storage pools that are using the RAID5 or RAID6 layout.
<pre>
<--pool>        :: Name of the storage pool or its unique ID (GUID).
<--disk-list>    :: Comma delimited list of drives (no spaces) to be used for the operation.
[--raid-type]    :: RAID type for the storage pool. [*AUTO, RAID0, RAID1, RAID10, RAID5,
                            RAID6]
[--flags]        :: Optional flags for the operation. [async]
</pre>
 
 
=== pool-expand [p-expand] ===
Expands a storage pool after the underlying hardware RAID unit has been grown underneath.
<pre>
<pre>
         <--gluster-volume> :: Name or ID of the Gluster volume
<--pool>        :: Name of the storage pool or its unique ID (GUID).
         <--pool-list>    :: List of one or more storage pools.
[--flags]        :: Optional flags for the operation. [async]
         <--restripe-volume> :: Restripe files across the new Gluster bricks
</pre>
 
 
=== pool-add-spare [p-add] ===
Adds a dedicated hot-spare to the specified storage pool.
<pre>
<--pool>        :: Name of the storage pool or its unique ID (GUID).
<--disk-list>    :: Comma delimited list of drives (no spaces) to be used for the operation.
[--flags]        :: Optional flags for the operation. [async]
</pre>
 
 
=== pool-remove-spare [p-remove] ===
Removes the specified hot-spare from the specified pool.
<pre>
<--pool>         :: Name of the storage pool or its unique ID (GUID).
<--disk-list>    :: Comma delimited list of drives (no spaces) to be used for the operation.
[--flags]        :: Optional flags for the operation. [async]
</pre>
 
 
=== pool-modify [p-modify] ===
Modifies the properties of the storage pool such as its name and description.
<pre>
<--pool>        :: Name of the storage pool or its unique ID (GUID).
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
[--is-default]  :: Indicates that this pool should be utilized as the default storage pool.
[--ssd]          :: Enable solid state disk (SSD) storage pool optimizations.
[--compress]    :: Enable storage volume compression on the pool, this boosts both read and
                            write performance on most IO loads.
[--nobarriers]  :: Enable storage pool write optimizations.  This requires that you have a
                            hardware controller with a battery backup unit.
[--profile]      :: Specifies an optional IO optimization profile for the storage pool. 
                            Storage pool profiles control elements like read-ahead, queue depth and
                            other device configurable settings.
[--desc]        :: A description for the object.
[--sync]        :: Synchroniztion policy to use for handling writes to the storage pool
                            (standard, always, none).  standard mode is a hybrid of write-through and
                            write-back caching based on the O_SYNC flag, always mode is write-through
                            to ZIL which could be SSD cache, and disabled indicates to always use
                            async writes. [always, disabled, *standard]
[--compression-type] :: Type of compression to be used. (on | off | lzjb | gzip | gzip-[1-9] |
                            zle | lz4)
[--copies]      :: Indicates the number of copies of each block should be maintained in the
                            storage pool.  This is a way of getting duplicates for bit-rot protection
                            on a single device.
[--flags]        :: Optional flags for the operation. [async]
</pre>
 
 
=== pool-destroy [p-destroy] ===
Deletes a storage pool, *WARNING* any data in the pool will be lost.
<pre>
<--pool>        :: Name of the storage pool or its unique ID (GUID).
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
 
 
=== pool-start [p-start] ===
Starts up a previously stopped storage pool.
<pre>
<--pool>        :: Name of the storage pool or its unique ID (GUID).
</pre>
 
 
=== pool-stop [p-stop] ===
Stops all volume activity to the pool and disables it for maintenance.
<pre>
<--pool>         :: Name of the storage pool or its unique ID (GUID).
</pre>
 
 
=== pool-scrub-start [p-scrub-start] ===
Starts a zpool scrub/verify operation which verifies data integrity and prevents bit-rot.  Use 'zpoolscrub --cron' to setup an automatic monthly scrub.
<pre>
<--pool>        :: Name of the storage pool or its unique ID (GUID).
</pre>
 
 
=== pool-scrub-stop [p-scrub-stop] ===
Stops the zpool scrub/verify operation if it is currently active on the storage pool.  Only applies to ZFS based storage pools.
<pre>
<--pool>        :: Name of the storage pool or its unique ID (GUID).
</pre>
 
 
=== pool-export [p-export] ===
Deactivate and removes the storage pool from the storage system database so that it can be exported and used on another system.
<pre>
<--pool>        :: Name of the storage pool or its unique ID (GUID).
</pre>
 
 
=== pool-list [p-list] ===
Returns a list of all the storage pools.
 
=== pool-get [p-get] ===
Gets information about a specific storage pool.
<pre>
<--pool>        :: Name of the storage pool or its unique ID (GUID).
</pre>
 
 
=== pool-scan [p-scan] ===
Rescans the specified storage system for storage pools.
<pre>
[--storage-system] :: Name or ID of a storage system in a management grid.
</pre>
 
 
=== pool-identify [p-id] ===
Pulses the disk activity lights for all disks in the pool so they can be identified in the chassis.
<pre>
<--pool>        :: Name of the storage pool or its unique ID (GUID).
[--pattern]      :: Pattern to flash the disk LED lights in, p = short pulse, P = long
                            pulse, d = short delay, D = long delay, ex: pattern=pppD
[--duration]    :: Duration in seconds to repeat the disk identification pattern.
</pre>
 
 
=== path-list [pdp-list] ===
Enumerates all physical disk paths for multipath devices.
 
=== disk-list [pd-list] ===
Enumerates all physical disks.
 
=== disk-scan [pd-scan] ===
Scans for any new physical disks that may have been hot-plugged into the storage system.
<pre>
[--storage-system] :: Name or ID of a storage system in a management grid.
</pre>
 
 
=== disk-get [pd-get] ===
Gets information about a specific physical disk.
<pre>
<--disk>        :: Name of the physical disk or its unique ID/serial number.
</pre>
 
 
=== disk-identify [pd-id] ===
Pulses the disk activity light so that the specified disk can be identified in the cassis.
<pre>
<--disk>        :: Name of the physical disk or its unique ID/serial number.
[--pattern]      :: Pattern to flash the disk LED lights in, p = short pulse, P = long
                            pulse, d = short delay, D = long delay, ex: pattern=pppD
[--duration]    :: Duration in seconds to repeat the disk identification pattern.
</pre>
 
 
=== disk-add-spare [pd-add] ===
Adds one or more dedicated hot-spares to the global hotspare pool.
<pre>
<--disk-list>    :: Comma delimited list of drives (no spaces) to be used for the operation.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== disk-remove-spare [pd-remove] ===
Removes one or more dedicated hot-spares from the global hotspare pool.
<pre>
<--disk-list>    :: Comma delimited list of drives (no spaces) to be used for the operation.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== pool-device-get [spd-get] ===
Gets information about a specific storage pool device.
<pre>
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
</pre>
 
 
=== pool-device-list [spd-list] ===
Returns a list of all the storage pool devices.
 
=== pool-profile-get [pp-get] ===
Gets information about a specific storage pool profile.
<pre>
<--profile>      :: Specifies an optional IO optimization profile for the storage pool. 
                            Storage pool profiles control elements like read-ahead, queue depth and
                            other device configurable settings.
</pre>
 
 
=== pool-profile-list [pp-list] ===
Returns a list of all the storage pool profiles.
 
== Pool Replication Management (DEPRECATED) ==
 
=== pool-replink-create [prl-create] ===
Create a async remote replication link between two storage pools.
<pre>
<--primary-pool> :: Primary storage pool, source of data transfer for replication.
<--secondary-pool> :: Secondary storage pool, target of data transfer for replication.
<--primary-address> :: Primary system target port.
<--secondary-address> :: Secondary system target port.
[--protocol-type] :: Replication protocol type
[--resync-rate]  :: Resync rate in KB/sec
[--flags]        :: Optional flags for the operation. [async]
</pre>
 
 
=== pool-replink-modify [prl-modify] ===
Modify the async remote replication link between pools.
<pre>
<--replication-link> :: Name or ID of the storage pool replication link/configuration
[--sendbuf-size] :: Maximum network send-buffer size.
[--cong-policy]  :: Congestion policy.
[--cong-fill-size] :: Congestion fill size.
[--resync-rate]  :: Resync rate in KB/sec
[--barriers]    :: Disk barriers
[--disk-flushes] :: Disk flushes IO
[--resource]    :: Enable DRBD Proxy
[--source-ip]    :: Source system IP address or port name.
[--target-ip]    :: Target system IP address or port name.
[--replication-portnum] :: Port number on which the replication data flows between the source and
                            target systems (7789-7799)
[--flags]        :: Optional flags for the operation. [async]
</pre>
 
 
=== pool-replink-delete [prl-delete] ===
Delete the remote replication link between two storage pools.
<pre>
<--replication-link> :: Name or ID of the storage pool replication link/configuration
</pre>
 
 
=== pool-replink-demote [prl-demote] ===
Demote the specified storage pool to be a secondary.
<pre>
<--replication-link> :: Name or ID of the storage pool replication link/configuration
</pre>
 
 
=== pool-replink-promote [prl-promote] ===
Promote the specified pool to be a primary.
<pre>
<--replication-link> :: Name or ID of the storage pool replication link/configuration
</pre>
 
 
=== pool-replink-suspend [prl-suspend] ===
Suspend the replication for the specified pool remote replication link.
<pre>
<--replication-link> :: Name or ID of the storage pool replication link/configuration
</pre>
 
 
=== pool-replink-resume [prl-resume] ===
Resume the replication for the specified pool remote replication link.
<pre>
<--replication-link> :: Name or ID of the storage pool replication link/configuration
</pre>
 
 
=== pool-replink-list [prl-list] ===
List the remote replication links between pools
 
=== pool-replink-get [prl-get] ===
Get info about a specific remote replication link between two pools
<pre>
<--replication-link> :: Name or ID of the storage pool replication link/configuration
</pre>
 
 
== Storage Pool HA Failover Management ==
 
=== ha-group-create [hag-create] ===
Creates a new storage pool high-availability group.
<pre>
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
<--pool>        :: Name of the storage pool or its unique ID (GUID).
<--sys-secondary> :: Storage system associated with the failover group secondary node
[--sys-primary]  :: Storage system associated with the failover group primary node
[--desc]        :: A description for the object.
[--ha-module]    :: Name or UUID of a storage pool high-availability module
</pre>
 
 
=== ha-group-modify [hag-modify] ===
Modifies the settings for the specified high-availability group
<pre>
<--ha-group>    :: Name or UUID of a storage pool high-availability group
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
[--desc]        :: A description for the object.
[--sys-secondary] :: Storage system associated with the failover group secondary node
[--ha-module]    :: Name or UUID of a storage pool high-availability module
</pre>
 
 
=== ha-group-delete [hag-delete] ===
Deletes the specified high-availability group
<pre>
<--ha-group>    :: Name or UUID of a storage pool high-availability group
</pre>
 
 
=== ha-group-failover [hag-failover] ===
Manually triggers a failover of the specified storage pool using the associated storage pool HA group policy.
<pre>
<--ha-group>    :: Name or UUID of a storage pool high-availability group
<--storage-system> :: Name or ID of a storage system in a management grid.
</pre>
 
 
=== ha-group-activate [hag-activate] ===
Activates/enables the specified high-availability group to failover can occur on a system outage.
<pre>
<--ha-group>    :: Name or UUID of a storage pool high-availability group
</pre>
 
 
=== ha-group-deactivate [hag-deactivate] ===
Deactivates the specified high-availability group so that failover policies are disabled.
<pre>
<--ha-group>    :: Name or UUID of a storage pool high-availability group
</pre>
 
 
=== ha-group-get [hag-get] ===
Gets information about the specified storage pool HA group
<pre>
<--ha-group>    :: Name or UUID of a storage pool high-availability group
</pre>
 
 
=== ha-group-list [hag-list] ===
Returns a list of all the HA groups
 
=== ha-module-get [ham-get] ===
Gets information about the specified storage pool HA module
<pre>
<--ha-module>    :: Name or UUID of a storage pool high-availability module
</pre>
 
 
=== ha-module-list [ham-list] ===
Returns a list of all the HA failover modules
 
=== ha-interface-create [hai-create] ===
Creates a new virtual network interface for the specified HA failover group.
<pre>
<--ha-group>    :: Name or UUID of a storage pool high-availability group
<--parent-port>  :: Parent network port like 'eth0' which the virtual interface should be
                            attached to.  On failover the virtual interface will attach to the port
                            with the same name on the failover/secondary node.
<--ip-address>  :: IP Address of the host being added; if unspecified the service will look
                            it up.
[--netmask]      :: Subnet IP mask (ex: 255.255.255.0)
[--interface-tag] :: Tags are a alpha-numeric tag which is appended onto a given HA virtual
                            interface for easy identification.
[--desc]         :: A description for the object.
[--gateway]      :: IP address of the network gateway
[--mac-address]  :: MAC Address
[--iscsi-enable] :: Enables or disables iSCSI access to the specified port(s).
</pre>
 
 
=== ha-interface-delete [hai-delete] ===
Deletes the specified virtual network interface resource from the HA group
<pre>
<--ha-interface> :: Name or UUID of a storage pool high-availability virtual network
                            interface
</pre>
 
 
=== ha-interface-get [hai-get] ===
Gets information about the specified storage pool HA virtual network interface
<pre>
<--ha-interface> :: Name or UUID of a storage pool high-availability virtual network
                            interface
</pre>
 
 
=== ha-interface-list [hai-list] ===
Returns a list of all the HA interfaces on the specified group
 
== Resource Group Quota Management ==
 
=== quota-create [q-create] ===
Creates a new storage quota on a pool for the specified storage cloud.
<pre>
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
<--pool>        :: Name of the storage pool or its unique ID (GUID).
<--cloud>        :: Name of a Storage Cloud or its unique id.
[--policy]      :: Indicates the type of quota to be created. [hard, *soft]
[--desc]        :: A description for the object.
[--psize]        :: The total thin-provisionable space allowed by this quota.
[--usize]        :: The total utilizable space allowed by this quota which may be less than
                            the provisionable space.
[--max-volumes]  :: The maximum number of volumes that can be created using this quota,
                            specify 0 for no limit.
[--max-shares]  :: The maximum number of share that can be created using this quota,
                            specify 0 for no limit.
[--flags]        :: Optional flags for the operation. [async]
</pre>
 
 
=== quota-modify [q-modify] ===
Modifies one to change the name and/or description of a storage quota.
<pre>
<--quota>        :: Name or ID of a storage quota.
<--cloud>        :: Name of a Storage Cloud or its unique id.
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
[--desc]        :: A description for the object.
[--psize]        :: The total thin-provisionable space allowed by this quota.
[--usize]        :: The total utilizable space allowed by this quota which may be less than
                            the provisionable space.
[--max-volumes]  :: The maximum number of volumes that can be created using this quota,
                            specify 0 for no limit.
[--max-shares]  :: The maximum number of share that can be created using this quota,
                            specify 0 for no limit.
[--policy]      :: Indicates the type of quota to be created. [hard, *soft]
[--flags]        :: Optional flags for the operation. [async]
</pre>
 
 
=== quota-delete [q-delete] ===
Deletes a storage quota, the associated volumes are not deleted.
<pre>
<--quota>        :: Name or ID of a storage quota.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
 
 
=== quota-list [q-list] ===
Returns a list of all the storage quotas.
 
=== quota-get [q-get] ===
Returns information about a specific storage quota.
<pre>
<--quota>        :: Name or ID of a storage quota.
</pre>
 
 
=== quota-volume-add [qv-add] ===
Adds one or more volumes to the specified quota.
<pre>
<--quota>        :: Name or ID of a storage quota.
<--volume-list>  :: A list of one or more storage volumes.
</pre>
 
 
=== quota-volume-remove [qv-remove] ===
Removes one or more volumes from the specified quota
<pre>
<--quota>        :: Name or ID of a storage quota.
<--volume-list>  :: A list of one or more storage volumes.
</pre>
 
 
=== quota-share-assoc-list [qs-alist] ===
Returns a list of all the associated quotas of a specified share.
<pre>
<--share>        :: Name or ID of a network share.
</pre>
 
 
=== quota-volume-assoc-list [qv-alist] ===
Returns a list of all the associated quotas of a specified volume.
<pre>
<--volume>      :: Name of the storage volume or its unique ID (GUID).
</pre>
 
 
=== quota-share-add [qs-add] ===
Adds one or more shares to the specified quota.
<pre>
<--quota>        :: Name or ID of a storage quota.
<--share-list>  :: A list of one or more network shares.
</pre>
 
 
=== quota-share-remove [qs-remove] ===
Removes one or more shares from the specified quota.
<pre>
<--quota>        :: Name or ID of a storage quota.
<--share-list>  :: A list of one or more network shares.
</pre>
 
 
== Storage System Management ==
 
=== system-get [sys-get] ===
Get general information about the storage system.
<pre>
[--storage-system] :: Name or ID of a storage system in a management grid.
</pre>
 
 
=== system-list [sys-list] ===
Returns a list of all the managed storage systems. This is always a single system unless the system is a member of a management grid.
 
=== system-shutdown [shutdown] ===
Shutdown the storage system.
<pre>
[--storage-system] :: Name or ID of a storage system in a management grid.
[--service-only] :: Shutdown just the management service and not the system.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== system-restart [restart] ===
Restarts the entire storage system.
<pre>
[--storage-system] :: Name or ID of a storage system in a management grid.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== system-upgrade [upgrade] ===
Upgrade to the latest version of the core packages.
<pre>
[--storage-system] :: Name or ID of a storage system in a management grid.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== system-modify [sys-modify] ===
Modifies the name and/or description of the storage system.
<pre>
[--storage-system] :: Name or ID of a storage system in a management grid.
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
[--desc]        :: A description for the object.
[--location]    :: Optional description indicating the location of the storage system.
[--domain]      :: The domain name suffix for your network such as example.com
[--search]      :: The default domain search suffix for your network such as example.com
[--arp-filter-mode] :: ARP filtering should be enabled when you have more than one network card
                            on the same network. [*auto, disabled, enabled]
[--bond-mode]    :: Round-robin balancing is the default mode but if you are using bonding
                            across switches you must use LACP and have switch infrastructure that
                            supports it. [lacp, *round-robin]
[--ext-hostname] :: Specifies the external hostname for the system.  This is useful for
                            creating grids of systems in the cloud like in Amazon's EC2.
[--grid-port]    :: Designated port for grid communication
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== system-metadata-recovery-point-list [smrp-list] ===
Returns a list of all the available system metadata recovery points.  Recovery points allow you to restore system information such as network, host, users, and other system information from a prior automatic backup.
<pre>
[--storage-system] :: Name or ID of a storage system in a management grid.
</pre>
 
 
== Network Interface Management ==
 
=== target-port-get [tp-get] ===
Returns information about the specified target port.
<pre>
<--port>        :: Name or MAC address of the target port.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== target-port-list [tp-list] ===
Returns a list of all the target ports in the system.
 
=== target-port-restart [tp-restart] ===
Restarts the specified target port.
<pre>
<--port>        :: Name or MAC address of the target port.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== target-port-disable [tp-disable] ===
Disables the specified target port.
<pre>
<--port>        :: Name or MAC address of the target port.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== target-port-enable [tp-enable] ===
Enables the specified target port.
<pre>
<--port>        :: Name or MAC address of the target port.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== target-port-rescan [tp-rescan] ===
Discovers new target ports and/or any manual modifications made to the configuration of the target ports.
<pre>
[--storage-system] :: Name or ID of a storage system in a management grid.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== target-port-modify [tp-modify] ===
Modifies target port settings including IP address, gateway, mtu, etc.
<pre>
<--port>        :: Name or MAC address of a target port, or 'all' to modify all ports.
[--port-type]    :: Port configuration type. (static, dhcp)
[--ip-address]  :: IP Address of the host being added; if unspecified the service will look
                            it up.
[--netmask]      :: Subnet IP mask (ex: 255.255.255.0)
[--gateway]      :: IP address of the network gateway
[--mtu]          :: Maximum transmission unit (MTU) for the target port, commonly set to
                            9000 to enable jumbo frames.
[--iscsi-enable] :: Enables or disables iSCSI access to the specified port(s).
[--desc]        :: A description for the object.
[--float-list]  :: List of physical ports and/or bonded ports that the virtual interface is
                            allowed to float between.  If a physical port goes offline the system
                            will automatically float the virtual interface to one of the online
                            physical ports in the float list.
[--bond-mode]    :: Round-robin balancing is the default mode but if you are using bonding
                            across switches you must use LACP and have switch infrastructure that
                            supports it. [lacp, *round-robin]
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== infiniband-port-list [ibp-list] ===
Returns a list of all the infiniband ports in the system.
 
=== infiniband-port-get [ibp-get] ===
Returns information about the specified infiniband port.
<pre>
<--port>        :: Name or MAC address of the target port.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== fiber-channel-port-list [fcp-list] ===
Returns a list of all the fiber channel target ports in the system.
 
=== fiber-channel-port-get [fcp-get] ===
Returns information about the specified fiber channel target port.
<pre>
<--port>        :: Name or MAC address of the target port.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== fiber-channel-port-disable [fcp-disable] ===
Disables the specified fiber channel port.
<pre>
<--port>        :: Name or MAC address of the target port.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== fiber-channel-port-enable [fcp-enable] ===
Enables the specified fiber channel port.
<pre>
<--port>        :: Name or MAC address of the target port.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== virtual-interface-create [vif-create] ===
Creates a new virtual network interface which is linked to a physical network port.
<pre>
<--parent-port>  :: Port that the virtual interface should initially be attached to.
<--ip-address>  :: IP Address of the host being added; if unspecified the service will look
                            it up.
[--storage-system] :: Name or ID of a storage system in a management grid.
[--netmask]      :: Subnet IP mask (ex: 255.255.255.0)
[--gateway]      :: IP address of the network gateway
[--float-list]  :: List of physical ports and/or bonded ports that the virtual interface is
                            allowed to float between.  If a physical port goes offline the system
                            will automatically float the virtual interface to one of the online
                            physical ports in the float list.
[--mtu]          :: Maximum transmission unit (MTU) for the target port, commonly set to
                            9000 to enable jumbo frames.
[--desc]        :: A description for the object.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== virtual-interface-delete [vif-delete] ===
Deletes the specified virtual network interface.
<pre>
<--port>        :: Name of unique ID of a physical network port/target port.
</pre>
 
 
=== virtual-interface-move [vif-move] ===
Moves the specified virtual network interface to a different physical network port.
<pre>
<--vif>          :: Name of unique ID (GUID) for the virtual interface.
<--port>        :: Name of unique ID of a physical network port/target port.
</pre>
 
 
=== bonded-interface-create [bond-create] ===
Creates a bonded network interface by bonding/teaming together a group of one or more physical network ports.
<pre>
<--ip-address>  :: IP Address of the host being added; if unspecified the service will look
                            it up.
<--port-list>    :: List of target ports to be bonded together.
[--storage-system] :: Name or ID of a storage system in a management grid.
[--netmask]      :: Subnet IP mask (ex: 255.255.255.0)
[--gateway]      :: IP address of the network gateway
[--mtu]          :: Maximum transmission unit (MTU) for the target port, commonly set to
                            9000 to enable jumbo frames.
[--desc]        :: A description for the object.
[--bond-mode]    :: Round-robin balancing is the default mode but if you are using bonding
                            across switches you must use LACP and have switch infrastructure that
                            supports it. [lacp, *round-robin]
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== bonded-interface-delete [bond-delete] ===
Deletes the specified bonded network interface.
<pre>
<--port>        :: Name of unique ID of a physical network port/target port.
</pre>
 
 
=== vlan-interface-create [vlan-create] ===
Creates a new VLAN interface on the specified physical port.
<pre>
<--parent-port>  :: Port that the virtual interface should initially be attached to.
<--ip-address>  :: IP Address of the host being added; if unspecified the service will look
                            it up.
<--vlan-id>      :: VLAN ID (typically 1-255)
[--storage-system] :: Name or ID of a storage system in a management grid.
[--netmask]      :: Subnet IP mask (ex: 255.255.255.0)
[--gateway]      :: IP address of the network gateway
[--vlan-qos]    :: VLAN Quality of Service (QoS) can be in the range of 0 (lowest, default)
                            to 7 (highest) and represents the Class of Service (CoS) user priority of
                            the VLAN traffic.
[--mtu]          :: Maximum transmission unit (MTU) for the target port, commonly set to
                            9000 to enable jumbo frames.
[--desc]        :: A description for the object.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== vlan-interface-delete [vlan-delete] ===
Deletes the specified VLAN interface.
<pre>
<--port>        :: Name of unique ID of a physical network port/target port.
</pre>
 
 
== Storage Volume Management ==
 
=== volume-create [v-create] ===
Creates a new storage volume in the specified storage pool.
<pre>
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
<--size>        :: Size may be specified in MiB, GiB, or TiB. examples: 4G, 100M, 1.4T
<--pool>        :: Name of the storage pool or its unique ID (GUID).
[--desc]        :: A description for the object.
[--thin]        :: Thin provision (sparse allocate) the storage volume.
[--access-mode]  :: Access mode for the volume. [none, readonly, *readwrite]
[--chap-policy]  :: CHAP setting can be 'target' which is unique to a storage volume, 'user'
                            or 'resource-group' which inherits the chap user/pass from your user
                            account or storage cloud respectively. [cloud-defaults, *disabled,
                            target, user-defaults]
[--chap-user]    :: An optional iSCSI CHAP username.
[--chap-pass]    :: An optional iSCSI CHAP password.
[--count]        :: The number of volumes to create, default is 1.
[--blocksize]    :: Volume block size in KB, valid values are 8, 16, 32, 64, 128. Larger
                            values deliver higher performance for workloads with high sequential IO.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
 
 
=== volume-modify [v-modify] ===
Modifies a the name, description or other properties of the storage volume.
<pre>
<--volume>      :: Name of the storage volume or its unique ID (GUID).
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
[--desc]        :: A description for the object.
[--access-mode]  :: Access mode for the volume. [none, readonly, *readwrite]
[--flags]        :: Optional flags for the operation. [async]
[--chap-policy]  :: CHAP setting can be 'target' which is unique to a storage volume, 'user'
                            or 'resource-group' which inherits the chap user/pass from your user
                            account or storage cloud respectively. [cloud-defaults, *disabled,
                            target, user-defaults]
[--chap-user]    :: An optional iSCSI CHAP username.
[--chap-pass]    :: An optional iSCSI CHAP password.
[--clear-snap-flag] :: Promotes a snapshot volume to standard (non-snapshot) volume.
[--enable-wb-cache] :: Enables the write-back cache on the iSCSI target driver, this option
                            uses volatile system RAM for cache and is not recommended.
[--is-active-checkpoint] :: Tags the checkpoint device so that it cannot be replicated over.  Use
                            this for DR failover and this flag is set automatically when a failover
                            checkpoint volume has an active iSCSI session.
[--sync]        :: Synchroniztion policy to use for handling writes to the storage pool
                            (standard, always, none).  standard mode is a hybrid of write-through and
                            write-back caching based on the O_SYNC flag, always mode is write-through
                            to ZIL which could be SSD cache, and disabled indicates to always use
                            async writes. [always, disabled, *standard]
[--compression-type] :: Type of compression to be used. (on | off | lzjb | gzip | gzip-[1-9] |
                            zle | lz4)
[--copies]      :: Indicates the number of copies of each block should be maintained in the
                            storage pool.  This is a way of getting duplicates for bit-rot protection
                            on a single device.
</pre>
 
 
=== volume-delete [v-delete] ===
Deletes a storage volume, *WARNING* any data in the volume will be lost.
<pre>
<--volume>      :: Name of the storage volume or its unique ID (GUID).
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
 
 
=== volume-resize [v-resize] ===
Resizes a storage volume to make it larger, volumes cannot be reduced in size.
<pre>
<--volume>      :: Name of the storage volume or its unique ID (GUID).
<--new-size>    :: New larger size for the volume specified in MiB, GiB, or TiB. examples:
                            4G, 100M, 1.4T
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
 
 
=== volume-restore [v-restore] ===
Restores a storage volume to a previous point in time using a snapshot.
<pre>
<--volume>      :: Name of the storage volume or its unique ID (GUID).
<--snapshot>    :: Name or ID of a snapshot volume to use as the restore point.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
 
 
=== volume-list [v-list] ===
Returns a list of all the storage volumes.
 
=== volume-get [v-get] ===
Returns information about a specific storage volume.
<pre>
<--volume>      :: Name of the storage volume or its unique ID (GUID).
</pre>
 
 
=== volume-snapshot [v-snap] ===
Creates a space efficient copy of the source volume.
<pre>
<--volume>      :: Name of the storage volume or its unique ID (GUID).
[--name]        :: Name for the snapshot, if not provided the source volume name will be
                            used as a prefix.
[--desc]        :: A description for the object.
[--access-mode]  :: Access mode for the volume. [none, readonly, *readwrite]
[--count]        :: The number of snapshots of the specified volume to create, default is 1.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
 
 
=== volume-clone [v-clone] ===
Creates a complete block copy of the source volume.
<pre>
<--volume>      :: Name of the storage volume or its unique ID (GUID).
[--name]        :: Name for the clone, if not provided the source volume name will be used
                            as a prefix.
[--desc]        :: A description for the object.
[--access-mode]  :: Access mode for the volume. [none, readonly, *readwrite]
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
 
 
=== volume-utilization-list [vu-list] ===
Returns volume utilization information for a specific storage volume or all storage volumes if no volume is specified.
<pre>
[--volume]      :: Name of the storage volume or its unique ID (GUID).
</pre>
 
 
=== volume-utilization-get [vu-get] ===
Returns a specific volume utilization metrics for a single volume and specific date.
<pre>
<--id>          :: Unique identifier (GUID) for the object.
</pre>
 
 
== Storage Volume Group Management ==
 
=== volume-group-create [vg-create] ===
Creates a new storage volume group comprised of the specified storage volumes
<pre>
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
<--volume-list>  :: A list of one or more storage volumes.
[--desc]        :: A description for the object.
[--flags]        :: Optional flags for the operation. [async]
</pre>
 
 
=== volume-group-modify [vg-modify] ===
Modifies the name and/or description of a storage volume group.
<pre>
<--volume-group> :: An arbirary group of one or more storage volumes.
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
[--desc]        :: A description for the object.
</pre>
 
 
=== volume-group-delete [vg-delete] ===
Deletes a storage volume group, the volumes are not deleted unless the delete-volumes flag is set.
<pre>
<--volume-group> :: An arbirary group of one or more storage volumes.
[--destroy-volumes] :: If 'true' all the volumes in the group will be deleted with the volume
                            group, default is 'false'.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
 
 
=== volume-group-snapshot [vg-snap] ===
Creates a space efficient copy of all volumes in the group.
<pre>
<--volume-group> :: An arbirary group of one or more storage volumes.
[--name-suffix]  :: Name for the snapshot/clone; if unspecified the snapshot/clone will use
                            the original name with '_snapNN'/'_cloneNN' appended.
[--desc]        :: A description for the object.
[--access-mode]  :: Access mode for the volume. [none, readonly, *readwrite]
[--count]        :: The number of snapshots of the specified volume to create, default is 1.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
 
 
=== volume-group-clone [vg-clone] ===
Creates a complete block by block copy of all volumes in the group.
<pre>
<--volume-group> :: An arbirary group of one or more storage volumes.
[--pool]        :: Name of the storage pool or its unique ID (GUID).
[--name-suffix]  :: Name for the snapshot/clone; if unspecified the snapshot/clone will use
                            the original name with '_snapNN'/'_cloneNN' appended.
[--desc]        :: A description for the object.
[--access-mode]  :: Access mode for the volume. [none, readonly, *readwrite]
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
 
 
=== volume-group-list [vg-list] ===
Returns a list of all the storage volume groups.
 
=== volume-group-get [vg-get] ===
Returns information about a specific storage volume group.
<pre>
<--volume-group> :: An arbirary group of one or more storage volumes.
</pre>
 
 
=== volume-group-volume-add [vgv-add] ===
Adds one or more volumes to the specified volume group.
<pre>
<--volume-group> :: An arbirary group of one or more storage volumes.
<--volume-list>  :: A list of one or more storage volumes.
</pre>
 
 
=== volume-group-volume-remove [vgv-remove] ===
Removes one or more volumes from the specified volume group
<pre>
<--volume-group> :: An arbirary group of one or more storage volumes.
<--volume-list>  :: A list of one or more storage volumes.
</pre>
 
 
== Storage System Replication Link Management ==
 
=== link-get [sl-get] ===
Get information about the storage system link.
<pre>
<--link>        :: Storage system link ID or name.
</pre>
 
 
=== link-list [sl-list] ===
List the existing storage system remote replication links.
 
=== link-delete [sl-delete] ===
Delete an existing storage system link.
<pre>
<--link>        :: Storage system link ID or name.
</pre>
 
 
=== link-create [sl-create] ===
Create a new storage system link so that storage volumes may be replicated between storage systems.
<pre>
<--storage-system> :: Name or ID of a storage system in a management grid.
<--remote-ip>    :: IP Address of the host being added; if unspecified the service will look
                            it up.
[--remote-admin] :: Remote admin user account to establish remote storage system link with.
[--remote-passwd] :: Remote admin user password.
[--local-ip]    :: IP Address of the host being added; if unspecified the service will look
                            it up.
[--bw-limit]    :: Limits the replication bandwidth between two storage systems to a set
                            level specified in units of kilobytes per second (KB/sec). Specify 0 to
                            indicate no limit.
[--link-type]    :: Type of storage system link to establish.
[--desc]        :: A description for the object.
</pre>
 
 
=== link-modify [sl-modify] ===
Modify the properties of the storage system link.
<pre>
<--link>        :: Storage system link ID or name.
<--remote-ip>    :: IP Address of the host being added; if unspecified the service will look
                            it up.
[--local-ip]    :: IP Address of the host being added; if unspecified the service will look
                            it up.
[--desc]        :: A description for the object.
[--bw-limit]    :: Limits the replication bandwidth between two storage systems to a set
                            level specified in units of kilobytes per second (KB/sec). Specify 0 to
                            indicate no limit.
[--link-type]    :: Type of storage system link to establish.
</pre>
 
 
=== link-set-credentials [sl-setcred] ===
Change the credentials for an existing storage system link.
<pre>
<--link>        :: Storage system link ID or name.
[--remote-admin] :: Remote admin user account to establish remote storage system link with.
[--remote-passwd] :: Remote admin user password.
</pre>
 
 
== Storage System Grid Management ==
 
=== grid-get [mg-get] ===
Get general information about the storage system management grid.
 
=== grid-create [mg-create] ===
Creates a new management grid.  A given storage system can only be a member of one grid at a time.
<pre>
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
[--vif-enable]  :: Enables the use of a virtual interface for grid management.
[--vif-ipaddress] :: Virtual host IP address to be associated with the master node in a the
                            management grid.
[--vif-netmask]  :: Virtual host netmask to be used with the specified IP address.
[--desc]        :: A description for the object.
[--vif-hostname] :: Cluster virtual host name to be associated with the master node in the
                            management grid
[--port]        :: Default physical target port to associate the management grid virtual
                            host IP address with.
[--bind-port]    :: This is the network address to bind with the Corosync cluster.
[--grid-num]    :: Defaults to zero (0), increment this to a unique value between 0-9 if
                            you have more than one grid on your network.
</pre>
 
 
=== grid-modify [mg-modify] ===
Modify the management grid properties.
<pre>
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
[--vif-enable]  :: Enables the use of a virtual interface for grid management.
[--vif-ipaddress] :: Virtual host IP address to be associated with the master node in a the
                            management grid.
[--vif-netmask]  :: Virtual host netmask to be used with the specified IP address.
[--desc]        :: A description for the object.
[--vif-hostname] :: Cluster virtual host name to be associated with the master node in the
                            management grid
[--port]        :: Default physical target port to associate the management grid virtual
                            host IP address with.
[--bind-port]    :: This is the network address to bind with the Corosync cluster.
[--grid-num]    :: Defaults to zero (0), increment this to a unique value between 0-9 if
                            you have more than one grid on your network.
</pre>
 
 
=== grid-delete [mg-delete] ===
Deletes the management grid.  After the grid is deleted each node in the grid operates independently again.
 
=== grid-add [mg-add] ===
Adds the specified storage system to the management grid.
<pre>
<--node-ipaddress> :: IP address of a storage system node.
[--node-username] :: Admin user account with permissions to add/remove nodes from the grid.
[--node-password] :: Admin user account password.
</pre>
 
 
=== grid-remove [mg-remove] ===
Removes the specified storage system from the management grid.
<pre>
<--storage-system> :: Name or ID of a storage system in a management grid.
</pre>
 
 
=== grid-set-hosts [mg-set-hosts] ===
Configures the /etc/hosts configuration file on all systems to facilitate host name based gluster volume configurations.
<pre>
<--portid-list>  :: List of UUIDs for the ethernet ports to be used for grid wide /etc/hosts
                            file configuration.
</pre>
 
 
=== grid-get-hosts [mg-get-hosts] ===
Returns the /etc/hosts configuration file configuration for grid nodes.
 
=== grid-assoc-list [mg-alist] ===
Returns a list of the associated storage system nodes in the grid.
 
=== grid-assoc-get [mg-aget] ===
Get general information about the associated storage system management grid.
<pre>
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
<--storage-system> :: Name or ID of a storage system in a management grid.
[--flags]        :: Optional flags for the operation. [async, force, *none]
</pre>
 
 
=== grid-set-master [mg-set] ===
Sets the master node for a storage system.
<pre>
<--storage-system> :: Name or ID of a storage system in a management grid.
</pre>
 
 
== Storage Tier Management ==
 
=== storage-tier-create [st-create] ===
Creates a new storage storage tier comprised of the specified storage pools
<pre>
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
<--pool-list>    :: List of storage pools.
[--desc]        :: A description for the object.
[--storage-class] :: The classification/primary use case of the storage such as
                            Backup/Archive, High-Performance, or General Purpose.
[--storage-type] :: Type of the storage pools included in this tier: SATA, SAS, SSD, SSHD,
                            MULTI, Unknown [AOE, MULTI, *SAS, SATA, SSD, SSHD, UNKNOWN]
[--perf-level]  :: An estimation of the relative performance of the storage teir as a
                            simplified number in the range of 1 to 100.
[--flags]        :: Optional flags for the operation. [async]
</pre>
 
 
=== storage-tier-modify [st-modify] ===
Modifies the name, description or other property of the specified storage tier.
<pre>
<--tier>        :: Storage tier is a group of one or more storage pools used to simplify
                            storage provisioning by teir/category/classification.
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
[--desc]        :: A description for the object.
[--storage-class] :: The classification/primary use case of the storage such as
                            Backup/Archive, High-Performance, or General Purpose.
[--storage-type] :: Type of the storage pools included in this tier: SATA, SAS, SSD, SSHD,
                            MULTI, Unknown [AOE, MULTI, *SAS, SATA, SSD, SSHD, UNKNOWN]
[--perf-level]  :: An estimation of the relative performance of the storage teir as a
                            simplified number in the range of 1 to 100.
</pre>
 
 
=== storage-tier-delete [st-delete] ===
Deletes the specified storage storage tier (pools are not deleted).
<pre>
<--tier>        :: Storage tier is a group of one or more storage pools used to simplify
                            storage provisioning by teir/category/classification.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
 
 
=== storage-tier-list [st-list] ===
Returns a list of all the storage storage tiers.
 
=== storage-tier-get [st-get] ===
Returns information about a specific storage storage tier.
<pre>
<--tier>        :: Storage tier is a group of one or more storage pools used to simplify
                            storage provisioning by teir/category/classification.
</pre>
 
 
=== storage-tier-pool-add [stp-add] ===
Adds one or more pools to the specified storage tier.
<pre>
<--tier>        :: Storage tier is a group of one or more storage pools used to simplify
                            storage provisioning by teir/category/classification.
<--pool-list>    :: List of storage pools.
</pre>
 
 
=== storage-tier-pool-remove [stp-remove] ===
Removes one or more pools from the specified storage tier.
<pre>
<--tier>        :: Storage tier is a group of one or more storage pools used to simplify
                            storage provisioning by teir/category/classification.
<--pool-list>    :: List of storage pools.
</pre>
 
 
== Task Management ==
 
=== task-list [t-list] ===
Returns a list of all the tasks including active, completed, and failed tasks. Whenever you run a command in QuantaStor it is queued in the task manager and then executed automatically once the necessary resource locks are aquired. This means that you can run commands synchronously and/or asynchronously to run multiple operations concurrently. By default the CLI waits for the task to complete so it blocks by default. You can have the CLI not wait by specifying the --async flag to any operation. In such cases the CLI will return immediately.
 
=== task-get [t-get] ===
Returns information about the specified task.
<pre>
<--task>        :: ID of a task.
</pre>
 
 
=== task-cancel [t-cancel] ===
Cancels the specified task that is in the queue or is running.
<pre>
<--task>        :: ID of a task.
</pre>
 
 
=== task-clear-all [t-clear-all] ===
Clears all the completed and/or failed tasks from the task log so that only the running and queued tasks remain, if any.
 
== User Management ==
 
=== user-add [u-add] ===
Adds a new user account to the system.  A matching console level account is created on all grid nodes but by default SSH access is not allowed. Rather, management accounts do allow the use of qs CLI commands and QuantaStor web management interface access as per the limits of the assigned user role.
<pre>
<--name>        :: User names may include any alpha-numeric characters '_' and '-', no
                            spaces are allowed.
<--password>    :: A password for the user to use when accessing the QuantaStor management
                            interface.
<--role>        :: Name of a security role or its unique ID (GUID).
[--first-name]  :: User's first name; enclose in double-quotes if it contains spaces.
[--last-name]    :: User's last name; enclose in double-quotes if it contains spaces.
[--email]        :: An email address of the form 'user@example.com' without the quotes.
[--desc]        :: A description for the object.
[--default-chap-user] :: Default CHAP username for storage volumes owned by a user account which
                            have the CHAP policy set to 'use user default CHAP settings'
[--default-chap-pass] :: Default CHAP password for storage volumes owned by a user account which
                            have the CHAP policy set to 'use user default CHAP settings'
[--alerts]      :: Alert types to subscribe to. Alerts at the subscribed level are sent to
                            the user's email address automatically when a SMTP server is configured.
                            [critical, error, info, *none, warning]
</pre>
 
 
=== user-modify [u-modify] ===
Modifies the specified user name, role, and/or description.
<pre>
<--user>        :: Name or ID (GUID) of a existing user.
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
[--role]        :: Name of a security role or its unique ID (GUID).
[--desc]        :: A description for the object.
[--default-chap-user] :: Default CHAP username for storage volumes owned by a user account which
                            have the CHAP policy set to 'use user default CHAP settings'
[--default-chap-pass] :: Default CHAP password for storage volumes owned by a user account which
                            have the CHAP policy set to 'use user default CHAP settings'
[--alerts]      :: Alert types to subscribe to. Alerts at the subscribed level are sent to
                            the user's email address automatically when a SMTP server is configured.
                            [critical, error, info, *none, warning]
</pre>
 
 
=== user-password-set [passwd] ===
Changes the password for the specified user
<pre>
<--user>        :: Name or ID (GUID) of a existing user.
<--new-password> :: New password for the user.
[--old-password] :: Old password for the user.
</pre>
 
 
=== user-remove [u-remove] ===
Removes the specified user identified by name or ID.
<pre>
<--user>        :: Name or ID (GUID) of a existing user.
</pre>
 
 
=== user-list [u-list] ===
Returns a list of all the users.
 
=== user-get [u-get] ===
Gets information about the specified user.
<pre>
<--user>        :: Name or ID (GUID) of a existing user.
</pre>
 
 
== User Group Management ==
 
=== user-group-create [ug-create] ===
Creates a new storage user group comprised of the specified users.
<pre>
<--name>        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
<--user-list>    :: A list of one or more users.
[--desc]        :: A description for the object.
[--flags]        :: Optional flags for the operation. [async]
</pre>
 
 
=== user-group-modify [ug-modify] ===
Modifies the name and/or description of a storage user group.
<pre>
<--user-group>  :: An arbirary group of one or more users.
[--name]        :: Names may include any alpha-numeric characters '_' and '-', spaces are
                            not allowed.
[--desc]        :: A description for the object.
</pre>
 
 
=== user-group-delete [ug-delete] ===
Deletes a storage user group, the users are not deleted unless the delete-users flag is set.
<pre>
<--user-group>  :: An arbirary group of one or more users.
[--flags]        :: Optional flags for the operation. [async, force]
</pre>
 
 
=== user-group-list [ug-list] ===
Returns a list of all the storage user groups.
 
=== user-group-get [ug-get] ===
Returns information about a specific storage user group.
<pre>
<--user-group>  :: An arbirary group of one or more users.
</pre>
 
 
=== user-group-user-add [ugu-add] ===
Adds one or more users to the specified user group.
<pre>
<--user-group>  :: An arbirary group of one or more users.
<--user-list>    :: A list of one or more users.
</pre>
 
 
=== user-group-user-remove [ugu-remove] ===
Removes one or more users from the specified user group
<pre>
<--user-group>  :: An arbirary group of one or more users.
<--user-list>    :: A list of one or more users.
</pre>
</pre>

Revision as of 01:18, 8 October 2014

The QuantaStor command line interface (CLI) can be used to remotely manage your QuantaStor based systems via a Windows or Linux system, and it is also a powerful tool for scripting the configuration and provisioning of storage volumes, network shares, and other resources. The command line utility for managing your QuantaStor system is called simply 'qs'. You can run 'qs' after logging into your QuantaStor system via an SSH connection, or you can download the QuantaStor Remote CLI client installer for Windows which is available for download from the OSNEXUS web site.

How to use the CLI

QuantaStor CLI is a full featured interface into all of the QuantaStor management features and can communicates with the local core management service as well as remote storage appliances.

Authentication

It is important to note that running the qs CLI locally as root affords no additional access privileges. Each command run via the CLI must include the --server specification which includes which server and what credentials should be used to access the appliance with.

Usage

The general usage format for all CLI commands is as follows:

    
qs command <-mandatory-arg=val> [-optional-arg=val] [-flags=force,async,...] [-server=ipaddress[,username,password]] [-xml] [-min] 

As you read through the CLI documentation note that all arguments that are specified in angle backets <> are mandatory required arguments. Arguments in square brackets [] are optional and you'll generally see the default argument specified in the documentation. Note that the qs CLI is installed on your QuantaStor system so you can run it from there, or from a Windows system using our Remote Management CLI Installer found on the downloads page. All commands can be run against a remote QuantaStor storage system using the --server= argument as outlined above.

Note also that anytime you must specify an object argument like host= volume= share= or others you can refer to the object by name or by its unique ID (UUID). For scripting it is always best to be more exact and use the UUID but it can be a big time-saver to be able to refer to objects by name as well, hence this capability.

Output Modes

XML Output Mode

Use --xml with any command to get the results in XML. Example:

qs disk-list --server=localhost,admin,password --xml
qs volume-list --server=localhost,admin,password

Minimal Output Mode

Use --min with any list or enumeration command where you want the results in a more compact format.

Interactive Mode

You can use the qs command line utility in an interactive mode where you will not have to run it from the shell each time. To enter the interactive mode just run the CLI like so:

qs i

To exit the interactive command line mode simply press CTRL-C to exit.

Built-in CLI Help

All of the commands covered in the documentation are also documented within the command line utility itself. Simply run the CLI with the 'help' argument to get the full list of all the different CLI commands. This list is pretty long so it's often best to pipe it to more

qs help | more

.

You can also use the help system to get information on a specific command:

    qs help command=CMD-NAME

As an example you can get help on how to use the pool-create command like so:

    qs help command=pool-create

Another way to get information on a group of commands is to specify a category. Help will then be printed for all commands that have a partial name match to the category specified. For example, to see all the commands that have 'pool' in their name:

    qs help category=pool

Or to see all list or get commands:

    qs help category=list
    qs help category=get

In this way you can reduce down help results to just what you need.

Remote System Specification

You can use the CLI to manage remote QuantaStor systems, but in such cases you'll need to specify the IP address and username/password of the remote storage system using the 'server' argument.

qs command [--server=ipaddress[,username,password]] [command-args]
example: qs disk-list --server=192.168.0.88,admin,password --xml

Note that the The service specification must be comma delimited with no spaces. If no username and password are supplied the default Administrator username 'admin' and the default password 'password' will be tried.

CLI Usage Examples

It's always nice to see some common examples of how the CLI can be used so here's a number of commands so you can see the general syntax of how the CLI is used. You'll notice that sometimes we specify arguments with a single hyphen (-), other times with the double hyphen (--) and sometimes it is omitted. All three are supported. The only hard rule is that the command name must be the first argument after the 'qs' command-line utility name. After that the arguments can be specified in any order with or without hyphens.

    qs help -min
    qs pool-list
    qs volume-list -xml
    qs volume-create name=vol1 size=100G pool=pool0
    qs volume-create vol1 100G pool0 -xml --server=192.168.0.88,admin,password 

CLI Commands

The following list of commands is the complete list of everything you can do from the CLI. In fact, the list of CLI commands is a pretty close 1-to-1 match with our SOAP based management interface API set. As such, anything you can do via the web management interface, you can do through the CLI, and with the XML output mode you can easily integrate your QuantaStor system with any automated provisioning system in any language. Note that we list the command names along with a short version in square brackets (ex: help [h]). If you find yourself using the CLI frequently learning the short command names can make the CLI easier to work with as it reduces the amount of typing required. For scripting, it's often better to use the long command names as it makes your script easier to read and maintain.

General Commands

help [h]

Help page for all commands. Try 'help --min' for a compacted list of commands, or just 'help' by itself for a verbose listing of all commands with their input parameters. Optionally you can get help on a specific category or command (ex: help --category=volume).

	[--command]      :: A specific CLI command to get detailed help with.
	[--category]     :: Category of commands to get help with (acl, alert, host, host-group, 
                            license, role, session, schedule, pool, quota, system, volume, 
                            volume-group, task, user, user-group).

Storage Volume Access Control (LUN Masking)

volume-assign [va-add]

Enables access to the specific volume from the specified host.

	<--volume>       :: Name of the storage volume or its unique ID (GUID).
	<--host-list>    :: A list of one or more hosts by name or ID.


volume-unassign [va-remove]

Disables access to the specific volume from the specified host.

	<--volume>       :: Name of the storage volume or its unique ID (GUID).
	<--host-list>    :: A list of one or more hosts by name or ID.


volume-unassign-all [va-remove-all]

Disables all access to the specified volume, host, or host group.

	<--volume>       :: Name of the storage volume or its unique ID (GUID).


volume-assign-list [va-list]

Returns a list of all the volume to host assignments, optionally filtered by host or storage volume.

	[--volume]       :: Name of the storage volume or its unique ID (GUID).
	[--host]         :: Name of the host or its unique ID (GUID).


Alert Mangement

alert-list [a-list]

Returns a list of all the alerts from all systems in the grid. Adjust the settings for the 'admin' or custom user account(s) to indicate alerts to be sent out via email call-home mechanism.

alert-get [a-get]

Gets information about a specific alert.

	<--id>           :: Unique identifier (GUID) for the object.


alert-raise [a-raise]

Allows one to raise a user generated alert for testing the SMTP server configuration settings.

	<--message>      :: Message string to be echoed back from the server.
	[--alert-severity] :: Severity of the user generated alert to be raise. [always, critical, 
                            error, *info, warning]


alert-clear [a-clear]

Deletes the alert with the specified ID.

	<--id>           :: Unique identifier (GUID) for the object.


alert-clear-all [a-clear-all]

Clears all the alerts.

alert-config-get [ac-get]

Alert configuration settings indicate where alert notifications should be sent.

alert-config-set [ac-set]

Sets the alert configuration settings such as the administrator email address, SMTP server address, etc. Be sure to use the alert-raise command to generate a test alert after you modify the alert configuration settings to ensure that emails are being properly sent.

	[--sender-email] :: Sender email address to be used for alert emails sent from the storage 
                            system.
	[--smtp-server]  :: IP Address of the SMTP service where emails should be routed through.
	[--smtp-user]    :: SMTP user name to use for secure SMTP access to your SMTP server for 
                            sending alert emails.
	[--smtp-password] :: SMTP password to use for secure SMTP access to your SMTP server.
	[--smtp-auth]    :: SMTP security mode.
	[--support-email] :: Email address for local customer support.
	[--freespace-warning] :: The percentage of free-space left in a pool at which a warning is sent 
                            to indicate pool growth plans should be made.
	[--freespace-alert] :: The percentage (default=10) of free-space left in a pool at which alerts 
                            are generated.
	[--freespace-critical] :: The percentage (default=5) of free-space left in a pool at which all 
                            provisioning operations are blocked.
	[--pagerduty-key] :: Specifies the service key to which alerts will be posted to PagerDuty.  
                            Please see www.pagerduty.com for more detail on service keys.


event-list [ev-list]

Returns a list of all the internal events in the event queue (used for service monitoring).

	[--index]        :: Starting event index of where to begin listing events from.
	[--max]          :: Maximum number of events to enumerate.
	[--time-stamp]   :: Time-stamp of the service.


Backup Policy Management

backup-job-list [bj-list]

Returns a list of backup jobs in the system.

backup-policy-get [bp-get]

Returns detailed information on a specific backup policy.

	<--policy>       :: A backup policy name or ID which is associated with a network share to 
                            do ingest backups.


backup-policy-list [bp-list]

Returns a list of backup policies in the system.

backup-policy-create [bp-create]

Creates a ingest backup policy which pull data from NFS shares to the QuantaStor appliance.

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	<--desc>         :: A description for the object.
	<--network-share> :: Name or ID of a CIFS/NFS network share.
	<--remote-hostname> :: Name of the remote host containing NFS shares to be backed up
	<--remote-export-path> :: Remote export path to be mounted to access the data to be backed up.
	[--remote-export-type] :: Remote mount type (currently NFS only) [*nfs]
	[--retain-rules] :: Retention rules (atime, ctime, mtime) [atime, ctime, *mtime]
	[--policy-type]  :: Backup policy type [*inbound]
	[--scan-threads] :: Number of concurrent threads for walking/scanning the specified target 
                            export
	[--hours]        :: For the specified days of the week, snapshots will be created at the 
                            specified hours. [10am, 10pm, 11am, 11pm, 12am, 12pm, 1am, 1pm, 2am, 2pm, 
                            *3am, 3pm, 4am, 4pm, 5am, 5pm, 6am, 6pm, 7am, 7pm, 8am, 8pm, 9am, 9pm]
	[--days]         :: The days of the week on which this schedule should create snapshots. 
                            [fri, mon, sat, *sun, thu, tue, wed]
	[--retain-period] :: Number of days of file history on the specified filer export to backup
	[--purge-policy] :: Indicates how old files should be cleaned up / purged from the backup. 
                            [after-backup, *daily, never, weekly]
	[--enabled]      :: Set to enabled to activate the backup policy.


backup-policy-modify [bp-modify]

Modifies the specified backup policy settings.

	<--policy>       :: A backup policy name or ID which is associated with a network share to 
                            do ingest backups.
	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	<--desc>         :: A description for the object.
	<--network-share> :: Name or ID of a CIFS/NFS network share.
	<--remote-hostname> :: Name of the remote host containing NFS shares to be backed up
	<--remote-export-path> :: Remote export path to be mounted to access the data to be backed up.
	[--remote-export-type] :: Remote mount type (currently NFS only) [*nfs]
	[--retain-rules] :: Retention rules (atime, ctime, mtime) [atime, ctime, *mtime]
	[--policy-type]  :: Backup policy type [*inbound]
	[--scan-threads] :: Number of concurrent threads for walking/scanning the specified target 
                            export
	[--hours]        :: For the specified days of the week, snapshots will be created at the 
                            specified hours. [10am, 10pm, 11am, 11pm, 12am, 12pm, 1am, 1pm, 2am, 2pm, 
                            *3am, 3pm, 4am, 4pm, 5am, 5pm, 6am, 6pm, 7am, 7pm, 8am, 8pm, 9am, 9pm]
	[--days]         :: The days of the week on which this schedule should create snapshots. 
                            [fri, mon, sat, *sun, thu, tue, wed]
	[--retain-period] :: retain-period
	[--purge-policy] :: Indicates how old files should be cleaned up / purged from the backup. 
                            [after-backup, *daily, never, weekly]
	[--enabled]      :: Set to enabled to activate the backup policy.


backup-policy-delete [bp-delete]

Deletes the specified backup policy.

	<--policy>       :: A backup policy name or ID which is associated with a network share to 
                            do ingest backups.


backup-policy-enable [bp-enable]

Enables a backup policy that was previously disabled.

	<--policy>       :: A backup policy name or ID which is associated with a network share to 
                            do ingest backups.


backup-policy-disable [bp-disable]

Disables the specified backup policy so job are not automatically run.

	<--policy>       :: A backup policy name or ID which is associated with a network share to 
                            do ingest backups.


backup-policy-trigger [bp-trigger]

Triggers the specified backup policy which in turn starts a backup job.

	<--policy>       :: A backup policy name or ID which is associated with a network share to 
                            do ingest backups.


Cloud Container Management

cloud-backup-provider-get [cbp-get]

Returns detailed information about the specified cloud provider.

	<--provider>     :: A cloud provider is a storage provider like Amazon S3 which QuantaStor 
                            utilizes for backup in the cloud.


cloud-backup-provider-list [cbp-list]

Returns the list of supported cloud providers.

cloud-backup-credentials-add [cbcred-add]

Adds cloud provider credentials to enable cloud backup to cloud backup containers.

	<--access-key>   :: The access key provided by your cloud storage provider for accessing 
                            your cloud storage account.
	<--secret-key>   :: The secret key provided by your cloud storage provider for accessing 
                            your cloud storage account.


cloud-backup-credentials-remove [cbcred-remove]

Removes the specified cloud provider credentials

	<--provider-creds> :: Credentials for accessing your cloud storage provider account.  With 
                            Amazon S3 this is your 'Access Key ID' and your 'Secret Access Key'.


cloud-backup-credentials-get [cbcred-get]

Returns information about the specified cloud provider credential.

	<--provider-creds> :: Credentials for accessing your cloud storage provider account.  With 
                            Amazon S3 this is your 'Access Key ID' and your 'Secret Access Key'.


cloud-backup-credentials-list [cbcred-list]

Returns a list of all the cloud provider credentials in the system. Passwords are masked.

cloud-backup-container-get [cbc-get]

Returns detailed information on a specific cloud backup container.

	<--container>    :: A cloud backup container into which storage volumes can be backed up.  A 
                            cloud backup container is like an unlimited storage pool in the cloud.


cloud-backup-container-list [cbc-list]

Returns a list of cloud backup containers in the system.

cloud-backup-container-create [cbc-create]

Creates a cloud backup container into which cloud backups of storage volumes can be made.

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	<--desc>         :: A description for the object.
	<--provider-creds> :: Credentials for accessing your cloud storage provider account.  With 
                            Amazon S3 this is your 'Access Key ID' and your 'Secret Access Key'.
	<--locaiton>     :: Cloud storage provider endpoint location.
	<--encryption-key> :: A passphrase which is used to encrypt all the data sent to the cloud 
                            container.
	<--enable-nfs>   :: Enable NFS sharing of the cloud container.


cloud-backup-container-delete [cbc-delete]

Deletes the specified cloud backup container. WARNING, all data in the container will be destroyed.

	<--container>    :: A cloud backup container into which storage volumes can be backed up.  A 
                            cloud backup container is like an unlimited storage pool in the cloud.


cloud-backup-container-add [cbc-add]

Recovers a cloud backup container that was previously removed or used with a prior installation.

	<--provider-creds> :: Credentials for accessing your cloud storage provider account.  With 
                            Amazon S3 this is your 'Access Key ID' and your 'Secret Access Key'.
	<--locaiton>     :: Cloud storage provider endpoint location.
	<--encryption-key> :: A passphrase which is used to encrypt all the data sent to the cloud 
                            container.
	<--storage-url>  :: The Amazon S3 or other storage URL used to identify a cloud backup 
                            container.
	<--enable-nfs>   :: Enable NFS sharing of the cloud container.


cloud-backup-container-modify [cbc-modify]

Modifies the specified cloud backup container settings.

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	<--desc>         :: A description for the object.
	<--container>    :: A cloud backup container into which storage volumes can be backed up.  A 
                            cloud backup container is like an unlimited storage pool in the cloud.
	<--encryption-key> :: A passphrase which is used to encrypt all the data sent to the cloud 
                            container.
	<--enable-nfs>   :: Enable NFS sharing of the cloud container.


cloud-backup-container-remove [cbc-remove]

Removes the specified cloud backup container from the system but does not delete any backup data in the cloud.

	<--container>    :: A cloud backup container into which storage volumes can be backed up.  A 
                            cloud backup container is like an unlimited storage pool in the cloud.


cloud-backup-container-enable [cbc-enable]

Enables a cloud container that was previously disabled or was inaccessible due to network connection issues.

	<--container>    :: A cloud backup container into which storage volumes can be backed up.  A 
                            cloud backup container is like an unlimited storage pool in the cloud.


cloud-backup-container-disable [cbc-disable]

Disables access to the specified cloud container without having to remove it.

	<--container>    :: A cloud backup container into which storage volumes can be backed up.  A 
                            cloud backup container is like an unlimited storage pool in the cloud.


cloud-backup-container-repair [cbc-repair]

Repairs the specified cloud backup container.

	<--container>    :: A cloud backup container into which storage volumes can be backed up.  A 
                            cloud backup container is like an unlimited storage pool in the cloud.


Gluster Management

gluster-volume-list [gv-list]

Returns a list of all the Gluster volumes in the grid

gluster-volume-get [gv-get]

Gets information about the specified Gluster volume

	<--gluster-volume> :: Name or ID of the Gluster volume


gluster-brick-list [gb-list]

Returns a list of all the Gluster bricks

gluster-brick-get [gb-get]

Gets information about a specific Gluster brick.

	<--gluster-brick> :: Name or ID of a Gluster brick


gluster-peer-list [gp-list]

Returns a list of all the Gluster peer systems.

gluster-ha-intf-get [gi-get]

Returns a list of all the Gluster HA failover interface definitions.

	<--ha-interface> :: High-availability interface for a specific Gluster Volume.


gluster-ha-intf-list [gi-list]

Gets information about a specific Gluster HA failover interface definition.

gluster-peer-get [gp-get]

Gets information about a specific Gluster peer system

	<--gluster-peer> :: Name or ID of the Gluster peer


gluster-volume-create [gv-create]

Create a new Gluster volume with new Bricks on the specified Storage Pools.

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--desc]         :: A description for the object.
	<--pool-list>    :: List of one or more storage pools.
	<--replica-count> :: Number of replia copies to have of each file in the Gluster volume
	<--stripe-volume> :: Enable striping of files across Gluster bricks
	[--flags]        :: Optional flags for the operation. [async, force, *none]


gluster-volume-delete [gv-delete]

Deletes the specified Gluster volume.

	<--gluster-volume> :: Name or ID of the Gluster volume


gluster-volume-modify [gv-modify]

Modifies the name and/or description of the specified Gluster volume.

	<--gluster-volume> :: Name or ID of the Gluster volume
	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--desc]         :: A description for the object.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


gluster-volume-start [gv-start]

Starts the specified Gluster volume

	<--gluster-volume> :: Name or ID of the Gluster volume
	[--flags]        :: Optional flags for the operation. [async, force, *none]


gluster-volume-stop [gv-stop]

Stops the specified Gluster volume.

	<--gluster-volume> :: Name or ID of the Gluster volume
	[--flags]        :: Optional flags for the operation. [async, force, *none]


gluster-volume-rebalance [gv-rebalance]

Rebalances files across the bricks in the specified Gluster volume

	<--gluster-volume> :: Name or ID of the Gluster volume


gluster-volume-add-bricks [gv-add-bricks]

Adds one or more bricks on the specified volume.

	<--gluster-volume> :: Name or ID of the Gluster volume
	<--pool-list>    :: List of one or more storage pools.
	<--restripe-volume> :: Restripe files across the new Gluster bricks


Ceph Management

ceph-block-device-get [cebd-get]

Gets information about a specific Ceph RDB / block device

	<--ceph-rbd>     :: Ceph RBD/Block Device name or ID


ceph-block-device-list [cebd-list]

Returns a list of all the Ceph RDB / block devices.

ceph-rbd-create [cebd-create]

Creates a new Ceph block device (RBD) in the specified Ceph pool.

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	<--ceph-pool>    :: ceph-pool
	<--size>         :: Size may be specified in MiB, GiB, or TiB. examples: 4G, 100M, 1.4T
	[--desc]         :: A description for the object.


ceph-rbd-delete [cebd-delete]

Deletes the specified Ceph block device (RBD)

	<--ceph-rbd>     :: Ceph RBD/Block Device name or ID


ceph-pool-list [cep-list]

Returns a list of all the Ceph storage pools.

ceph-pool-get [cep-get]

Gets information about a specific Ceph storage pool.

	<--ceph-pool>    :: Ceph Pool name or ID


ceph-pool-create [cep-create]

Creates a new Ceph pool using the specified OSDs or Storage Pools

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	<--pool-list>    :: List of one or more storage pools.
	[--desc]         :: A description for the object.
	[--placement-groups] :: Number of placement groups to assign to the Ceph pool.
	[--max-replicas] :: Maximum number of replicas (redundancy level) to be created of each 
                            block in the Ceph pool.
	[--min-replicas] :: Minimum number of replicas to have of each block while still allowing 
                            write access to the Ceph pool.
	[--pool-type]    :: Type of Ceph pool, 'replica' (mirror based, default) or 'erasure' which 
                            is like network RAID5.


ceph-pool-delete [cep-delete]

Deletes the specified Ceph pool

	<--ceph-pool>    :: Ceph Pool name or ID


ceph-ha-intf-get [ci-get]

Returns a list of all the Ceph HA failover interface definitions.

	<--ceph-ha-interface> :: Ceph HA failover interface name, ID, or IP address


ceph-ha-intf-list [ci-list]

Gets information about a specific Ceph HA failover interface definition.

ceph-osd-list [ceosd-list]

Returns a list of all the Ceph Object Storage Daemons

ceph-osd-get [ceosd-get]

Gets information about a specific Ceph Object Storage Daemon.

	<--ceph-osd>     :: Ceph Object Storage Daemon name or ID


ceph-osd-create [ceosd-create]

Creates a new Ceph OSD on the specified storage pool

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	<--pool>         :: Name of the storage pool or its unique ID (GUID).
	[--desc]         :: A description for the object.


ceph-osd-delete [ceosd-delete]

Deletes the specified Ceph OSD

	<--ceph-osd>     :: Ceph Object Storage Daemon name or ID


ceph-monitor-get [cem-get]

Gets information about a specific Ceph Monitor

	<--ceph-monitor> :: Ceph Monitor service name or ID.


ceph-monitor-list [cem-list]

Returns a list of all the Ceph Monitors

ceph-cluster-get [cec-get]

Gets information about a specific Ceph Cluster

	<--ceph-cluster> :: Ceph Cluster name or ID, default is 'ceph'


ceph-cluster-list [cec-list]

Returns a list of all the Ceph Clusters

Host Mangement

host-add [h-add]

Modifies a host entry. The username/password fields are optional and are not yet leveraged by the QuantaStor system. Later this may be used to provide additional levels of integration such as automatic host side configuration of your iSCSI initiator.

	<--hostname>     :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--iqn]          :: IQN (iSCSI Qualified Name) of the host's iSCSI initiator
	[--ip-address]   :: IP Address of the host being added; if unspecified the service will look 
                            it up.
	[--desc]         :: A description for the object.
	[--username]     :: Administrator user name for the host, typically 'Administrator' for 
                            Windows hosts.
	[--password]     :: Administrator password for the host; enables auto-configuration of 
                            host's iSCSI initiator.
	[--host-type]    :: Operating system type of the host. [aix, hpux, linux, other, solaris, 
                            vmware, *windows, xenserver]
	[--flags]        :: Optional flags for the operation. [async]


host-modify [h-modify]

Modifies a host.

	<--host>         :: Name of the host or its unique ID (GUID).
	[--desc]         :: A description for the object.
	[--ip-address]   :: IP Address of the host being added; if unspecified the service will look 
                            it up.
	[--username]     :: Administrator user name for the host, typically 'Administrator' for 
                            Windows hosts.
	[--password]     :: Administrator password for the host; enables auto-configuration of 
                            host's iSCSI initiator.
	[--host-type]    :: Operating system type of the host. [aix, hpux, linux, other, solaris, 
                            vmware, *windows, xenserver]
	[--flags]        :: Optional flags for the operation. [async]


host-remove [h-remove]

Removes the specified host, *WARNING* host's active iSCSI sessions will be dropped.

	<--host>         :: Name of the host or its unique ID (GUID).
	[--flags]        :: Optional flags for the operation. [async, force]


host-list [h-list]

Returns a list of all the hosts that you have added to the QuantaStor system. Host groups allow you to assign storage to multiple host all at once. This is especially useful when you have a VMware or Windows cluster as you can assign and unassign storage to all nodes in the cluster in one operation.

host-get [h-get]

Gets information about a specific host.

	<--host>         :: Name of the host or its unique ID (GUID).


host-initiator-get [hi-get]

Gets information about a specific host identified by its initiator IQN.

	<--iqn>          :: IQN (iSCSI Qualified Name) of the host's iSCSI initiator


host-initiator-add [hi-add]

Adds an additional iSCSI host initiator IQN to the specified host.

	<--host>         :: Name of the host or its unique ID (GUID).
	<--iqn>          :: IQN (iSCSI Qualified Name) of the host's iSCSI initiator


host-initiator-list [hi-list]

Returns a list of all the initiators (IQN) of the specified host

	<--host>         :: Name of the host or its unique ID (GUID).


host-initiator-remove [hi-remove]

Removes a iSCSI host initiator (IQN) from the specified host.

	<--host>         :: Name of the host or its unique ID (GUID).
	<--iqn>          :: IQN (iSCSI Qualified Name) of the host's iSCSI initiator


Host Group Management

host-group-create [hg-create]

Creates a new host group with the specified name.

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	<--host-list>    :: A list of one or more hosts by name or ID.
	[--desc]         :: A description for the object.
	[--flags]        :: Optional flags for the operation. [async]


host-group-modify [hg-modify]

Modifies the properties of a host group such as its name and/or description.

	<--host-group>   :: An arbitrary collection of hosts used to simplify volume ACL management 
                            for grids and other groups of hosts.
	[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--desc]         :: A description for the object.


host-group-delete [hg-delete]

Removes the specified host group.

	<--host-group>   :: An arbitrary collection of hosts used to simplify volume ACL management 
                            for grids and other groups of hosts.
	[--flags]        :: Optional flags for the operation. [async, force]


host-group-list [hg-list]

Returns a list of all the host groups.

host-group-get [hg-get]

Gets information about a specific host group.

	<--host-group>   :: An arbitrary collection of hosts used to simplify volume ACL management 
                            for grids and other groups of hosts.


host-group-host-add [hg-host-add]

Adds a host to the specified host group.

	<--host-group>   :: An arbitrary collection of hosts used to simplify volume ACL management 
                            for grids and other groups of hosts.
	<--host-list>    :: A list of one or more hosts by name or ID.


host-group-host-remove [hg-host-remove]

Removes a host from the specified host group.

	<--host-group>   :: An arbitrary collection of hosts used to simplify volume ACL management 
                            for grids and other groups of hosts.
	<--host-list>    :: A list of one or more hosts by name or ID.


Hardware RAID Management

hw-controller-group-list [hwcg-list]

Returns a list of all the hardware controller groups.

hw-controller-group-get [hwcg-get]

Returns information about all the support hardware RAID controller group types.

	<--controller-group> :: Name or ID of a hardware RAID controller group.


hw-controller-list [hwc-list]

Returns a list of all the hardware controllers.

	[--controller-group] :: Name or ID of a hardware RAID controller group.


hw-controller-get [hwc-get]

Returns information about a specific hardware RAID controller.

	<--controller>   :: Name or ID of a hardware RAID controller.


hw-controller-rescan [hwc-rescan]

Rescans the hardware controller to look for new disks and RAID units.

	<--controller>   :: Name or ID of a hardware RAID controller.


hw-controller-import-units [hwc-import-units]

Scan and import foreign disks associated with RAID groups that were attached to another RAID controller or that require re-importing to the local appliance.

	<--controller>   :: Name or ID of a hardware RAID controller.


hw-controller-create-security-key [hwc-create-security-key]

Create the security key for encryption on SED/FDE-enabled drives on hardware RAID controller.

	<--controller>   :: Name or ID of a hardware RAID controller.
	<--security-key> :: Security key on HW Controller card for encryption on FDE-enabled secure 
                            disk drives.


hw-controller-change-security-key [hwc-change-security-key]

Change the security key for encryption on SED/FDE-enabled drives on hardware RAID controller.

	<--controller>   :: Name or ID of a hardware RAID controller.
	<--old-security-key> :: Prior security key on HW Controller card, for changing key, for 
                            encryption on FDE-enabled secure disk drives.
	<--security-key> :: Security key on HW Controller card for encryption on FDE-enabled secure 
                            disk drives.


hw-enclosure-list [hwe-list]

Returns a list of all the enclosures managed by the specified hardware RAID controller.

	[--controller]   :: Name or ID of a hardware RAID controller.


hw-enclosure-get [hwe-get]

Returns information about a specific enclosure managed by the specified hardware RAID controller.

	<--enclosure>    :: Name of a hardware RAID enclosure or it unique ID.


hw-unit-list [hwu-list]

Returns a list of all the RAID units managed by the specified hardware controller.

	[--controller]   :: Name or ID of a hardware RAID controller.


hw-unit-get [hwu-get]

Returns information about a specific RAID unit managed by the specified hardware RAID controller.

	<--unit>         :: Name of a hardware RAID unit or it unique ID.


hw-unit-identify [hwu-identify]

Flashes the LED indicator light on all the disks in the RAID unit so that it can be identified in the enclosure.

	<--unit>         :: Name of a hardware RAID unit or it unique ID.
	[--duration]     :: Duration in seconds to repeat the disk identification pattern.


hw-unit-encrypt [hwu-encrypt]

Enable hardware SED/FDE encryption for the specified hardware RAID unit.

	<--unit>         :: Name of a hardware RAID unit or it unique ID.
	[--options]      :: Special options to hardware encryption policy.


hw-unit-create [hwu-create]

Creates a new hardware RAID unit using the specified controller.

	<--raid>         :: Hardware RAID type for a hardware RAID unit. [*AUTO, RAID0, RAID1, 
                            RAID10, RAID5, RAID50, RAID6, RAID60]
	<--disk-list>    :: Specifies one or more physical disks connected to a hardware RAID 
                            controller. Use 'all' to indicate all unused disks.
	[--controller]   :: Name or ID of a hardware RAID controller.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


hw-unit-delete [hwu-delete]

Deletes the specified RAID unit. Note that you must first delete the Storage Pool before you delete the RAID unit.

	<--unit>         :: Name of a hardware RAID unit or it unique ID.
	[--duration]     :: Duration in seconds to repeat the disk identification pattern.


hw-disk-identify [hwd-identify]

Flashes the LED indicator light on the specified disk so that it can be identified in the enclosure chassis.

	<--unit>         :: Name of a hardware RAID unit or it unique ID.
	[--duration]     :: Duration in seconds to repeat the disk identification pattern.


hw-disk-delete [hwd-delete]

Marks the specified disk so that it can be removed from the enclosure. Disks marked as hot-spares will return to normal status after being deleted.

	<--disk>         :: Specifies a physical disk connected to a hardware RAID controller.
	[--duration]     :: Duration in seconds to repeat the disk identification pattern.


hw-disk-list [hwd-list]

Returns a list of all the disks managed by the specified hardware controller.

	[--controller]   :: Name or ID of a hardware RAID controller.


hw-disk-get [hwd-get]

Returns information about a specific disk managed by a hardware RAID controller.

	<--disk>         :: Specifies a physical disk connected to a hardware RAID controller.


hw-disk-mark-spare [hwd-mark-spare]

Marks the specified disk as a universal hot spare within the group of RAID units managed by the controller in which the disk is attached.

	<--disk>         :: Specifies a physical disk connected to a hardware RAID controller.


hw-disk-mark-good [hwd-mark-good]

Marks the specified disk as 'good' or 'ready'. You can use this to correct the disk status for good disks that the controller has in 'bad' or 'failed' state.

	<--disk>         :: Specifies a physical disk connected to a hardware RAID controller.


hw-alarm-list [hwa-list]

Returns a list of all the current hardware alarms/alert messages generated from the controller.

	[--controller]   :: Name or ID of a hardware RAID controller.


hw-alarm-get [hwa-get]

Returns information about a specific hardware alarm.

	<--id>           :: Unique identifier (GUID) for the object.


hw-alarm-clear-all [hwa-clear-all]

Clears all the hardware alarms that have been recorded for the specified hardware RAID controller.

	<--controller>   :: Name or ID of a hardware RAID controller.


SAS Switch Management

hw-switch-get [hws-get]

Returns detailed information about a storage switch

	<--switch>       :: Name or ID of a SAS/FC storage switch


hw-switch-list [hws-list]

Returns a list of all the discovered storage switches

	[--switch-adapter] :: Storage switch adapter module ID


hw-switch-adapter-get [hwsa-get]

Returns information about the specified HW switch management module.

	<--switch-adapter> :: Storage switch adapter module ID


hw-switch-adapter-list [hwsa-list]

Returns a list of all the storage switch management adapters

hw-switch-cred-get [hwsc-get]

Returns information about specific storage switch login credentials

	<--creds>        :: Storage switch credentials (user/pass)


hw-switch-cred-list [hwsc-list]

Returns a list of all the storage switch login credentials

	[--switch-adapter] :: Storage switch adapter module ID


hw-switch-cred-add [hwsc-add]

Adds storage switch login credentials for a specific switch management adapter

	<--username>     :: Administrator user name for the host, typically 'Administrator' for 
                            Windows hosts.
	<--password>     :: Administrator password for the host; enables auto-configuration of 
                            host's iSCSI initiator.
	<--domain-password> :: Password for the committing zoneset changes to a storage switch.
	<--ip-address>   :: IP Address of the host being added; if unspecified the service will look 
                            it up.
	[--switch-adapter] :: Storage switch adapter module ID
	[--primary]      :: Primary storage system responsible for managing and discovering the 
                            switch(es)
	[--secondary]    :: Secondary storage system responsible for managing and discovering the 
                            switch(es)


hw-switch-cred-remove [hwsc-remove]

Removes storage switch login credentials

	<--creds>        :: Storage switch credentials (user/pass)


hw-switch-zoneset-get [hwsz-get]

Returns information about a specific switch zoneset

	<--zoneset>      :: Name or ID of a storage switch zoneset


hw-switch-zoneset-list [hwsz-list]

Returns a list of all the discovered zonesets

	[--switch]       :: Name or ID of a SAS/FC storage switch


hw-switch-zoneset-activate [hwsz-activate]

Activates a specific storage switch zonset

	<--zoneset>      :: Name or ID of a storage switch zoneset
	[--switch]       :: Name or ID of a SAS/FC storage switch


hw-switch-failover-group-get [hwsfg-get]

Returns information about a specific switch failover group

	<--failover-group> :: Name/ID of a storage switch failover group


hw-switch-failover-group-list [hwsfg-list]

Returns a list of all the switch failover groups

	[--switch]       :: Name or ID of a SAS/FC storage switch


hw-switch-failover-group-create [hwsfg-create]

Creates a new switch failover group

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	<--pool-list>    :: List of one or more storage pools.
	<--sys-primary>  :: Storage system associated with the failover group primary node
	<--zoneset-primary> :: Zoneset to be associated with the failover group primary node
	<--sys-secondary> :: Storage system associated with the failover group secondary node
	<--zoneset-secondary> :: Zoneset to be associated with the failover group secondary node
	[--ip-address]   :: IP Address of the host being added; if unspecified the service will look 
                            it up.
	[--netmask]      :: Subnet IP mask (ex: 255.255.255.0)
	[--gateway]      :: IP address of the network gateway
	[--desc]         :: A description for the object.


hw-switch-failover-group-modify [hwsfg-modify]

Modifies the properties of a failover group

	<--failover-group> :: Name/ID of a storage switch failover group
	[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--ip-address]   :: IP Address of the host being added; if unspecified the service will look 
                            it up.
	[--netmask]      :: Subnet IP mask (ex: 255.255.255.0)
	[--gateway]      :: IP address of the network gateway
	[--pool-list]    :: List of one or more storage pools.
	[--sys-primary]  :: Storage system associated with the failover group primary node
	[--zoneset-primary] :: Zoneset to be associated with the failover group primary node
	[--sys-secondary] :: Storage system associated with the failover group secondary node
	[--zoneset-secondary] :: Zoneset to be associated with the failover group secondary node
	[--desc]         :: A description for the object.


hw-switch-failover-group-delete [hwsfg-delete]

Deletes a failover group

	<--failover-group> :: Name/ID of a storage switch failover group


hw-switch-failover-group-activate [hwsfg-activate]

Activates the pools in a switch failover group on the specified storage system

	<--failover-group> :: Name/ID of a storage switch failover group
	<--storage-system> :: Name or ID of a storage system in a management grid.


License Mangement

license-get [lic-get]

Shows the current license key info, and any activation request code.

	<--key>          :: Unique license key identifier, use key-enum to get a list of these.


license-list [lic-list]

Returns a list of all the registered license keys.

license-add [lic-add]

Adds a license key using a license key block specified in a key file. In general, you have 7 days to activate your license using online activation of activation via email. If you do not activate after the 7 days the system will continue to run but you will not be able to make configuration changes.

	[--storage-system] :: Name or ID of a storage system in a management grid.
	<--key-file>     :: Key file you received which contains a key block section.


license-remove [lic-remove]

Removes the specified license key.

	<--key>          :: Unique license key identifier, use key-enum to get a list of these.


license-activate [lic-act]

Activates the system using a activation key received from customer support.

	<--activation-key> :: Activation key you'll receive from customer support after you send the 
                            activation request code.


license-activate-online [lic-aon]

Requests automatic activation via the online activation service.

	[--key]          :: Unique license key identifier, use key-enum to get a list of these.


Cloud I/O Stats Management

metrics-get [lm-get]

Get the current username, token, and interval settings for Librato Metrics.

	<--storage-system> :: Name or ID of a storage system in a management grid.


metrics-set [lm-set]

Set the username, token, and interval for Librato Metrics posting.

	[--storage-system] :: Name or ID of a storage system in a management grid.
	<--username>     :: The username/email of the Librato Metrics account.
	<--token>        :: The API token associated with the Librato Metrics account.
	[--interval]     :: The interval in seconds of how often Quantastor should post data to 
                            Librato Metrics.
	[--dashboards]   :: Autmatically create the QuantaStor system dashboard in Librato Metrics
	[--alert-anno]   :: Add alert annotations to the Librato Metrics postings.
	[--config-anno]  :: Add config annotations to the Librato Metrics postings.


Network Share Management

share-create [shr-create]

Creates a new NFSv3 network share.

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	<--pool>         :: Name of the storage pool or its unique ID (GUID).
	[--desc]         :: A description for the object.
	[--public]       :: Indicates that the specified network share should be made public and 
                            open for read/write access to all systems on the network.
	[--active]       :: Indicates that the network share should be activated.
	[--cifs-enable]  :: Enables Samba support for network share.
	[--user-access-list] :: List of users with permission to access the network share.
	[--cifs-options] :: Additional CIFS/Samba configuration options specified as 
                            'key=value,key2=value2,...'.
	[--space-quota]  :: Size of the quota for the network share (optional).
	[--disable-snap-browsing] :: When this is true, ability to browse snapshot directories over CIFS is 
                            disabled.
	[--flags]        :: Optional flags for the operation. [async, force]


share-modify [shr-modify]

Modifies the properties of the specified network share.

	<--share>        :: Name or ID of a network share.
	[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--desc]         :: A description for the object.
	[--active]       :: Indicates that the network share should be activated.
	[--space-quota]  :: Size of the quota for the network share (optional).
	[--sync]         :: Synchroniztion policy to use for handling writes to the storage pool 
                            (standard, always, none).  standard mode is a hybrid of write-through and 
                            write-back caching based on the O_SYNC flag, always mode is write-through 
                            to ZIL which could be SSD cache, and disabled indicates to always use 
                            async writes. [always, disabled, *standard]
	[--compression-type] :: Type of compression to be used. (on | off | lzjb | gzip | gzip-[1-9] | 
                            zle | lz4)
	[--copies]       :: Indicates the number of copies of each block should be maintained in the 
                            storage pool.  This is a way of getting duplicates for bit-rot protection 
                            on a single device.
	[--cifs-enable]  :: Enables Samba support for network share.
	[--user-access-list] :: List of users with permission to access the network share.
	[--cifs-options] :: Additional CIFS/Samba configuration options specified as 
                            'key=value,key2=value2,...'.
	[--disable-snap-browsing] :: When this is true, ability to browse snapshot directories over CIFS is 
                            disabled.


share-delete [shr-delete]

Deletes the specified network share

	<--share>        :: Name or ID of a network share.
	[--flags]        :: Optional flags for the operation. [async, force]


share-snapshot [shr-snap]

Creates and instant space efficient snapshot of the specified network share (requires Advanced Storage Pool)

	<--share>        :: Name or ID of a network share.
	[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--desc]         :: A description for the object.
	[--flags]        :: Optional flags for the operation. [async, force]


share-clone [shr-clone]

Creates a full copy of the specified network share to another storage pool.

	<--share>        :: Name or ID of a network share.
	<--pool>         :: Name of the storage pool or its unique ID (GUID).
	[--name]         :: Name for the clone, if not provided the source volume name will be used 
                            as a prefix.
	[--desc]         :: A description for the object.
	[--flags]        :: Optional flags for the operation. [async, force]


share-list [shr-list]

Returns a list of all the network shares in the system.

share-get [shr-get]

Returns information about the specified network share.

	<--share>        :: Name or ID of a network share.


share-client-add [shr-cadd]

Adds a client for the specified network share.

	<--share>        :: Name or ID of a network share.
	<--filter>       :: A filter string for the client
	[--async]        :: Use asynchronous communication between NFS server and client
	[--secure]       :: Requires the requests to originate from an Internet port less than 
                            IPPORT_RESERVED
	[--subtree]      :: Enables subtree checking
	[--rdonly]       :: Allow only read requests for the NFS volume
	[--flags]        :: Optional flags for the operation. [async, force]


share-client-remove [shr-cremove]

Removes a client for the specified network share.

	<--share>        :: Name or ID of a network share.
	<--filter>       :: A filter string for the client
	[--flags]        :: Optional flags for the operation. [async, force]


share-client-modify [shr-cmodify]

Modifies a client for the specified network share.

	<--share>        :: Name or ID of a network share.
	<--filter>       :: A filter string for the client
	[--rdonly]       :: Allow only read requests for the NFS volume
	[--secure]       :: Requires the requests to originate from an Internet port less than 
                            IPPORT_RESERVED
	[--async]        :: Use asynchronous communication between NFS server and client
	[--subtree]      :: Enables subtree checking
	[--flags]        :: Optional flags for the operation. [async, force]


share-client-enum [shr-cenum]

Returns a list of clients for the specified network share.

	<--share>        :: Name or ID of a network share.
	[--flags]        :: Optional flags for the operation. [async, force]


share-client-get [shr-cget]

Returns information about the specific network share client.

	<--share>        :: Name or ID of a network share.
	<--filter>       :: A filter string for the client
	[--flags]        :: Optional flags for the operation. [async, force]


share-leave-domain [shr-ldomain]

Leaves the current domain.

	<--storage-system> :: Name or ID of a storage system in a management grid.
	[--ad-admin]     :: The administrator account of the domain that QuantaStor is a member of.
	[--ad-password]  :: The password to the administrator account of the domain that QuantaStor 
                            is a member of.
	[--flags]        :: Optional flags for the operation. [async, force]


share-join-domain [shr-jdomain]

Joins the specified domain/realm.

	<--storage-system> :: Name or ID of a storage system in a management grid.
	<--domain>       :: The name of the domain to have the QuantaStor system join. (DOMAIN)
	<--realm>        :: The name of the realm that the domain is in. (DOMAIN.COM)
	<--kdc>          :: The name of the active directory machine.
	<--ad-admin>     :: The administrator account of the domain that QuantaStor is a member of.
	<--ad-password>  :: The password to the administrator account of the domain that QuantaStor 
                            is a member of.
	[--flags]        :: Optional flags for the operation. [async, force]


share-ad-user-group-enum [shr-ad-ug-enum]

Returns a list of all the users and groups in the domain that QuantaStor is in.

	<--storage-system> :: Name or ID of a storage system in a management grid.
	[--share]        :: Name or ID of a network share.
	[--flags]        :: Optional flags for the operation. [async, force]


Remote Replication Management

replication-schedule-create [rsch-create]

Creates a new replication schedule to replicate the specified storage volumes and shares to the specified target pool on a schedule.

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	<--target-pool>  :: Target storage pool on remote system to replicate to.
	[--volume-list]  :: A list of one or more storage volumes.
	[--share-list]   :: A list of one or more network shares.
	[--start-date]   :: Start date at which the system will begin creating snapshots for a given 
                            schedule.
	[--enabled]      :: While the schedule is enabled snapshots will be taken at the designated 
                            times.
	[--desc]         :: A description for the object.
	[--cloud]        :: Name of a Storage Cloud or its unique id.
	[--max-replicas] :: Maximum number of replica snapshot checkpoints to retain for this 
                            schedule, after which the oldest snapshot is removed before a new one is 
                            created.
	[--days]         :: The days of the week on which this schedule should create snapshots. 
                            [fri, mon, sat, *sun, thu, tue, wed]
	[--hours]        :: For the specified days of the week, snapshots will be created at the 
                            specified hours. [10am, 10pm, 11am, 11pm, 12am, 12pm, 1am, 1pm, 2am, 2pm, 
                            *3am, 3pm, 4am, 4pm, 5am, 5pm, 6am, 6pm, 7am, 7pm, 8am, 8pm, 9am, 9pm]
	[--interval]     :: Interval in minutes between replications, minimum is 15 minutes.
	[--flags]        :: Optional flags for the operation. [async]


replication-schedule-modify [rsch-modify]

Modifies the name, description or other properties of a replication schedule.

	<--schedule>     :: Name or ID of a replication schedule.
	[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--start-date]   :: Start date at which the system will begin creating snapshots for a given 
                            schedule.
	[--enabled]      :: While the schedule is enabled snapshots will be taken at the designated 
                            times.
	[--desc]         :: A description for the object.
	[--cloud]        :: Name of a Storage Cloud or its unique id.
	[--max-replicas] :: Maximum number of replica snapshot checkpoints to retain for this 
                            schedule, after which the oldest snapshot is removed before a new one is 
                            created.
	[--days]         :: The days of the week on which this schedule should create snapshots. 
                            [fri, mon, sat, *sun, thu, tue, wed]
	[--hours]        :: For the specified days of the week, snapshots will be created at the 
                            specified hours. [10am, 10pm, 11am, 11pm, 12am, 12pm, 1am, 1pm, 2am, 2pm, 
                            *3am, 3pm, 4am, 4pm, 5am, 5pm, 6am, 6pm, 7am, 7pm, 8am, 8pm, 9am, 9pm]
	[--interval]     :: Interval in minutes between replications, minimum is 15 minutes.
	[--flags]        :: Optional flags for the operation. [async]


replication-schedule-delete [rsch-delete]

Deletes a replication schedule, snapshots associated with the schedule are not removed.

	<--schedule>     :: Name or ID of a replication schedule.
	[--flags]        :: Optional flags for the operation. [async, force]


replication-schedule-add [rsch-add]

Adds one or more volumes/shares to the specified schedule.

	<--schedule>     :: Name or ID of a replication schedule.
	[--volume-list]  :: A list of one or more storage volumes.
	[--share-list]   :: A list of one or more network shares.


replication-schedule-remove [rsch-remove]

Removes one or more volumes/shares from the specified schedule.

	<--schedule>     :: Name or ID of a replication schedule.
	[--volume-list]  :: A list of one or more storage volumes.
	[--share-list]   :: A list of one or more network shares.


replication-schedule-enable [rsch-enable]

Enables the specified replication schedule.

	<--schedule>     :: Name or ID of a replication schedule.
	[--flags]        :: Optional flags for the operation. [async, force]


replication-schedule-disable [rsch-disable]

Disables the specified replication schedule.

	<--schedule>     :: Name or ID of a replication schedule.
	[--flags]        :: Optional flags for the operation. [async, force]


replication-schedule-trigger [rsch-trigger]

Triggers the specified schedule to run immediately.

	<--schedule>     :: Name or ID of a replication schedule.
	[--flags]        :: Optional flags for the operation. [async, force]


replication-schedule-list [rsch-list]

Returns a list of all the replication schedules.

replication-schedule-get [rsch-get]

Returns information about a specific replication schedule.

	<--schedule>     :: Name or ID of a replication schedule.


replica-assoc-stop [rep-assoc-stop]

Attempts to stop the replication process between a source/target pair of volumes or shares.

	<--replica-assoc> :: Name or ID of a replica association between a source/target volume or 
                            share


replica-assoc-rollback [rep-assoc-rollback]

Reverses the replication to send the changes on the target back to the source volume/share. Requires the --force flag.

	<--replica-assoc> :: Name or ID of a replica association between a source/target volume or 
                            share


replica-assoc-sync [rep-assoc-sync]

Restarts the replication process between a source/target pair of volumes or shares.

	<--replica-assoc> :: Name or ID of a replica association between a source/target volume or 
                            share


replica-assoc-delete [rep-assoc-delete]

Deletes the specified replication association between a source/target pair of volumes or shares.

	<--replica-assoc> :: Name or ID of a replica association between a source/target volume or 
                            share


replica-assoc-get [rep-assoc-get]

Returns details of the specified replication association.

	<--replica-assoc> :: Name or ID of a replica association between a source/target volume or 
                            share


replica-assoc-list [rep-assoc-list]

Returns a list of all the replication associations.

RBAC Role Management

role-add [r-add]

Adds a new role to the role based access control (RBAC) system.

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--desc]         :: A description for the object.
	[--permissions]  :: List of permissions and/or permission groups to add to the specified 
                            role.


role-modify [r-modify]

Modifies the name and/or description of a role

	<--role>         :: Name of a security role or its unique ID (GUID).
	[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--desc]         :: A description for the object.


role-remove [r-remove]

Removes the specified role identified by name or ID

	<--role>         :: Name of a security role or its unique ID (GUID).


role-list [r-list]

Returns a list of all the defined roles the RBAC system.

role-get [r-get]

Gets information about the specified role.

	<--role>         :: Name of a security role or its unique ID (GUID).


role-permission-add [rp-add]

Adds additional permissions and/or permission groups to the specified role.

	<--role>         :: Name of a security role or its unique ID (GUID).
	<--permissions>  :: List of permissions and/or permission groups to add to the specified 
                            role.


role-permission-remove [rp-remove]

Removes one or more permissions and/or permission groups from the specified role.

	<--role>         :: Name of a security role or its unique ID (GUID).
	<--permissions>  :: List of permissions and/or permission groups to add to the specified 
                            role.


iSCSI Session Management

session-list [sn-list]

Returns a list of all the active iSCSI sessions.

	[--volume]       :: Name of the storage volume or its unique ID (GUID).
	[--host]         :: Name of the host or its unique ID (GUID).


session-get [sn-get]

Returns detailed information on a specific iSCSI session.

	<--session>      :: iSCSI session identifier for an active iSCSI session.


session-close [sn-close]

Forcibly closes the specified iSCSI session; generally not recommended, use acl-remove instead.

	<--session>      :: iSCSI session identifier for an active iSCSI session.


Snapshot Schedule Management

snap-schedule-create [sch-create]

Creates a new snapshot schedule comprised of the specified storage volumes.

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--volume-list]  :: A list of one or more storage volumes.
	[--share-list]   :: A list of one or more network shares.
	[--start-date]   :: Start date at which the system will begin creating snapshots for a given 
                            schedule.
	[--enabled]      :: While the schedule is enabled snapshots will be taken at the designated 
                            times.
	[--desc]         :: A description for the object.
	[--cloud]        :: Name of a Storage Cloud or its unique id.
	[--max-snaps]    :: Maximum number of snapshots to retain for this schedule, after which the 
                            oldest snapshot is removed before a new one is created.
	[--days]         :: The days of the week on which this schedule should create snapshots. 
                            [fri, mon, sat, *sun, thu, tue, wed]
	[--hours]        :: For the specified days of the week, snapshots will be created at the 
                            specified hours. [10am, 10pm, 11am, 11pm, 12am, 12pm, 1am, 1pm, 2am, 2pm, 
                            *3am, 3pm, 4am, 4pm, 5am, 5pm, 6am, 6pm, 7am, 7pm, 8am, 8pm, 9am, 9pm]
	[--flags]        :: Optional flags for the operation. [async]


snap-schedule-modify [sch-modify]

Modifies the name, description or other properties of a snapshot schedule.

	<--schedule>     :: Name of a snapshot schedule or its unique ID (GUID).
	[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--start-date]   :: Start date at which the system will begin creating snapshots for a given 
                            schedule.
	[--enabled]      :: While the schedule is enabled snapshots will be taken at the designated 
                            times.
	[--desc]         :: A description for the object.
	[--cloud]        :: Name of a Storage Cloud or its unique id.
	[--max-snaps]    :: Maximum number of snapshots to retain for this schedule, after which the 
                            oldest snapshot is removed before a new one is created.
	[--days]         :: The days of the week on which this schedule should create snapshots. 
                            [fri, mon, sat, *sun, thu, tue, wed]
	[--hours]        :: For the specified days of the week, snapshots will be created at the 
                            specified hours. [10am, 10pm, 11am, 11pm, 12am, 12pm, 1am, 1pm, 2am, 2pm, 
                            *3am, 3pm, 4am, 4pm, 5am, 5pm, 6am, 6pm, 7am, 7pm, 8am, 8pm, 9am, 9pm]
	[--flags]        :: Optional flags for the operation. [async]


snap-schedule-delete [sch-delete]

Deletes a snapshot schedule, snapshots associated with the schedule are not removed.

	<--schedule>     :: Name of a snapshot schedule or its unique ID (GUID).
	[--flags]        :: Optional flags for the operation. [async, force]


snap-schedule-enable [sch-enable]

Enables the specified snapshot schedule.

	<--schedule>     :: Name of a snapshot schedule or its unique ID (GUID).
	[--flags]        :: Optional flags for the operation. [async, force]


snap-schedule-disable [sch-disable]

Disables the specified snapshot schedule.

	<--schedule>     :: Name of a snapshot schedule or its unique ID (GUID).
	[--flags]        :: Optional flags for the operation. [async, force]


snap-schedule-list [sch-list]

Returns a list of all the snapshot schedules.

snap-schedule-get [sch-get]

Returns information about a specific snapshot schedule.

	<--schedule>     :: Name of a snapshot schedule or its unique ID (GUID).


snap-schedule-add [sch-add]

Adds one or more volumes/shares to the specified schedule.

	<--schedule>     :: Name of a snapshot schedule or its unique ID (GUID).
	[--volume-list]  :: A list of one or more storage volumes.
	[--share-list]   :: A list of one or more network shares.


snap-schedule-remove [sch-remove]

Removes one or more volumes/shares from the specified schedule.

	<--schedule>     :: Name of a snapshot schedule or its unique ID (GUID).
	[--volume-list]  :: A list of one or more storage volumes.
	[--share-list]   :: A list of one or more network shares.


snap-schedule-trigger [sch-trigger]

Triggers the specified schedule to run immediately.

	<--schedule>     :: Name of a snapshot schedule or its unique ID (GUID).


cloud-create [c-create]

Creates a new storage cloud comprised of the specified users, resources and chap information.

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--desc]         :: A description for the object.
	[--subject-list] :: A list subjects in the following format name:type. Ex: 
                            userName:user,groupName:user_group...
	[--resource-list] :: A list resources in the following format name:type. Ex: 
                            vol:volume,hostname:host...
	[--parent-cloud] :: The name or unique id of a storage cloud.
	[--tier]         :: The tier of the storage cloud.
	[--organization] :: The name of the organization this storage cloud is assigned to.
	[--chap-user]    :: An optional iSCSI CHAP username.
	[--chap-pass]    :: An optional iSCSI CHAP password.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


cloud-modify [c-modify]

Modifies the name, description, parent storage cloud, tier, organization, and chap information of a storage cloud.

	<--cloud>        :: Name of a Storage Cloud or its unique id.
	[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--desc]         :: A description for the object.
	[--parent-cloud] :: The name or unique id of a storage cloud.
	[--tier]         :: The tier of the storage cloud.
	[--organization] :: The name of the organization this storage cloud is assigned to.
	[--chap-user]    :: An optional iSCSI CHAP username.
	[--chap-pass]    :: An optional iSCSI CHAP password.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


cloud-delete [c-delete]

Deletes a storage cloud, the resources and users will not be deleted.

	<--cloud>        :: Name of a Storage Cloud or its unique id.
	[--flags]        :: Optional flags for the operation. [async, force]


cloud-get [c-get]

Returns information of the specified storage clouds.

	<--cloud>        :: Name of a Storage Cloud or its unique id.
	[--flags]        :: Optional flags for the operation. [async, force]


cloud-list [c-list]

Returns a list of all the storage clouds.

	[--flags]        :: Optional flags for the operation. [async, force]


cloud-user-add [cu-add]

Add one or more users to the specified storage cloud.

	<--cloud>        :: Name of a Storage Cloud or its unique id.
	<--subject-list> :: A list subjects in the following format name:type. Ex: 
                            userName:user,groupName:user_group...


cloud-user-remove [cu-remove]

Remove one or more users from specified storage cloud.

	<--cloud>        :: Name of a Storage Cloud or its unique id.
	<--subject-list> :: A list subjects in the following format name:type. Ex: 
                            userName:user,groupName:user_group...


cloud-resource-add [cr-add]

Add one or more resources to the specified storage cloud.

	<--cloud>        :: Name of a Storage Cloud or its unique id.
	<--resource-list> :: A list resources in the following format name:type. Ex: 
                            vol:volume,hostname:host...


cloud-resource-remove [cr-remove]

Remove one or more resource from the specified storage cloud.

	<--cloud>        :: Name of a Storage Cloud or its unique id.
	<--resource-list> :: A list resources in the following format name:type. Ex: 
                            vol:volume,hostname:host...


cloud-subject-assoc-list [csub-alist]

Returns a list of associated storage clouds to the specified subject.

	<--subject>      :: The unique id of a user or user group.
	[--flags]        :: Optional flags for the operation. [async, force]


cloud-resource-mode [cr-mode]

Set the mode of a specified resource in the storage cloud.

	<--cloud>        :: Name of a Storage Cloud or its unique id.
	<--resource>     :: The unique id of a volume or volume group or share or host or host group.
	<--access-mode>  :: Access mode for the volume.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


Storage Pool Management

pool-create [p-create]

Creates a new storage pool from which storage volumes can be created.

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	<--disk-list>    :: Comma delimited list of drives (no spaces) to be used for the operation.
	[--raid-type]    :: RAID type for the storage pool. [*AUTO, RAID0, RAID1, RAID10, RAID5, 
                            RAID6]
	[--pool-type]    :: The type of storage pool to be created. [btrfs, ext4, jfs, *xfs, zfs]
	[--desc]         :: A description for the object.
	[--is-default]   :: Indicates that this pool should be utilized as the default storage pool.
	[--ssd]          :: Enable solid state disk (SSD) storage pool optimizations.
	[--compress]     :: Enable storage volume compression on the pool, this boosts both read and 
                            write performance on most IO loads.
	[--nobarriers]   :: Enable storage pool write optimizations.  This requires that you have a 
                            hardware controller with a battery backup unit.
	[--profile]      :: Specifies an optional IO optimization profile for the storage pool.  
                            Storage pool profiles control elements like read-ahead, queue depth and 
                            other device configurable settings.
	[--raid-set-size] :: Then number of disks to use in each set of disks when creating a RAID50 
                            or RAID60 storage pool.
	[--flags]        :: Optional flags for the operation. [async]


pool-grow [p-grow]

Grows the specified storage pool by adding an additional disk. You can only grow storage pools that are using the RAID5 or RAID6 layout.

	<--pool>         :: Name of the storage pool or its unique ID (GUID).
	<--disk-list>    :: Comma delimited list of drives (no spaces) to be used for the operation.
	[--raid-type]    :: RAID type for the storage pool. [*AUTO, RAID0, RAID1, RAID10, RAID5, 
                            RAID6]
	[--flags]        :: Optional flags for the operation. [async]


pool-expand [p-expand]

Expands a storage pool after the underlying hardware RAID unit has been grown underneath.

	<--pool>         :: Name of the storage pool or its unique ID (GUID).
	[--flags]        :: Optional flags for the operation. [async]


pool-add-spare [p-add]

Adds a dedicated hot-spare to the specified storage pool.

	<--pool>         :: Name of the storage pool or its unique ID (GUID).
	<--disk-list>    :: Comma delimited list of drives (no spaces) to be used for the operation.
	[--flags]        :: Optional flags for the operation. [async]


pool-remove-spare [p-remove]

Removes the specified hot-spare from the specified pool.

	<--pool>         :: Name of the storage pool or its unique ID (GUID).
	<--disk-list>    :: Comma delimited list of drives (no spaces) to be used for the operation.
	[--flags]        :: Optional flags for the operation. [async]


pool-modify [p-modify]

Modifies the properties of the storage pool such as its name and description.

	<--pool>         :: Name of the storage pool or its unique ID (GUID).
	[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--is-default]   :: Indicates that this pool should be utilized as the default storage pool.
	[--ssd]          :: Enable solid state disk (SSD) storage pool optimizations.
	[--compress]     :: Enable storage volume compression on the pool, this boosts both read and 
                            write performance on most IO loads.
	[--nobarriers]   :: Enable storage pool write optimizations.  This requires that you have a 
                            hardware controller with a battery backup unit.
	[--profile]      :: Specifies an optional IO optimization profile for the storage pool.  
                            Storage pool profiles control elements like read-ahead, queue depth and 
                            other device configurable settings.
	[--desc]         :: A description for the object.
	[--sync]         :: Synchroniztion policy to use for handling writes to the storage pool 
                            (standard, always, none).  standard mode is a hybrid of write-through and 
                            write-back caching based on the O_SYNC flag, always mode is write-through 
                            to ZIL which could be SSD cache, and disabled indicates to always use 
                            async writes. [always, disabled, *standard]
	[--compression-type] :: Type of compression to be used. (on | off | lzjb | gzip | gzip-[1-9] | 
                            zle | lz4)
	[--copies]       :: Indicates the number of copies of each block should be maintained in the 
                            storage pool.  This is a way of getting duplicates for bit-rot protection 
                            on a single device.
	[--flags]        :: Optional flags for the operation. [async]


pool-destroy [p-destroy]

Deletes a storage pool, *WARNING* any data in the pool will be lost.

	<--pool>         :: Name of the storage pool or its unique ID (GUID).
	[--flags]        :: Optional flags for the operation. [async, force]


pool-start [p-start]

Starts up a previously stopped storage pool.

	<--pool>         :: Name of the storage pool or its unique ID (GUID).


pool-stop [p-stop]

Stops all volume activity to the pool and disables it for maintenance.

	<--pool>         :: Name of the storage pool or its unique ID (GUID).


pool-scrub-start [p-scrub-start]

Starts a zpool scrub/verify operation which verifies data integrity and prevents bit-rot. Use 'zpoolscrub --cron' to setup an automatic monthly scrub.

	<--pool>         :: Name of the storage pool or its unique ID (GUID).


pool-scrub-stop [p-scrub-stop]

Stops the zpool scrub/verify operation if it is currently active on the storage pool. Only applies to ZFS based storage pools.

	<--pool>         :: Name of the storage pool or its unique ID (GUID).


pool-export [p-export]

Deactivate and removes the storage pool from the storage system database so that it can be exported and used on another system.

	<--pool>         :: Name of the storage pool or its unique ID (GUID).


pool-list [p-list]

Returns a list of all the storage pools.

pool-get [p-get]

Gets information about a specific storage pool.

	<--pool>         :: Name of the storage pool or its unique ID (GUID).


pool-scan [p-scan]

Rescans the specified storage system for storage pools.

	[--storage-system] :: Name or ID of a storage system in a management grid.


pool-identify [p-id]

Pulses the disk activity lights for all disks in the pool so they can be identified in the chassis.

	<--pool>         :: Name of the storage pool or its unique ID (GUID).
	[--pattern]      :: Pattern to flash the disk LED lights in, p = short pulse, P = long 
                            pulse, d = short delay, D = long delay, ex: pattern=pppD
	[--duration]     :: Duration in seconds to repeat the disk identification pattern.


path-list [pdp-list]

Enumerates all physical disk paths for multipath devices.

disk-list [pd-list]

Enumerates all physical disks.

disk-scan [pd-scan]

Scans for any new physical disks that may have been hot-plugged into the storage system.

	[--storage-system] :: Name or ID of a storage system in a management grid.


disk-get [pd-get]

Gets information about a specific physical disk.

	<--disk>         :: Name of the physical disk or its unique ID/serial number.


disk-identify [pd-id]

Pulses the disk activity light so that the specified disk can be identified in the cassis.

	<--disk>         :: Name of the physical disk or its unique ID/serial number.
	[--pattern]      :: Pattern to flash the disk LED lights in, p = short pulse, P = long 
                            pulse, d = short delay, D = long delay, ex: pattern=pppD
	[--duration]     :: Duration in seconds to repeat the disk identification pattern.


disk-add-spare [pd-add]

Adds one or more dedicated hot-spares to the global hotspare pool.

	<--disk-list>    :: Comma delimited list of drives (no spaces) to be used for the operation.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


disk-remove-spare [pd-remove]

Removes one or more dedicated hot-spares from the global hotspare pool.

	<--disk-list>    :: Comma delimited list of drives (no spaces) to be used for the operation.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


pool-device-get [spd-get]

Gets information about a specific storage pool device.

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.


pool-device-list [spd-list]

Returns a list of all the storage pool devices.

pool-profile-get [pp-get]

Gets information about a specific storage pool profile.

	<--profile>      :: Specifies an optional IO optimization profile for the storage pool.  
                            Storage pool profiles control elements like read-ahead, queue depth and 
                            other device configurable settings.


pool-profile-list [pp-list]

Returns a list of all the storage pool profiles.

Pool Replication Management (DEPRECATED)

pool-replink-create [prl-create]

Create a async remote replication link between two storage pools.

	<--primary-pool> :: Primary storage pool, source of data transfer for replication.
	<--secondary-pool> :: Secondary storage pool, target of data transfer for replication.
	<--primary-address> :: Primary system target port.
	<--secondary-address> :: Secondary system target port.
	[--protocol-type] :: Replication protocol type
	[--resync-rate]  :: Resync rate in KB/sec
	[--flags]        :: Optional flags for the operation. [async]


pool-replink-modify [prl-modify]

Modify the async remote replication link between pools.

	<--replication-link> :: Name or ID of the storage pool replication link/configuration
	[--sendbuf-size] :: Maximum network send-buffer size.
	[--cong-policy]  :: Congestion policy.
	[--cong-fill-size] :: Congestion fill size.
	[--resync-rate]  :: Resync rate in KB/sec
	[--barriers]     :: Disk barriers
	[--disk-flushes] :: Disk flushes IO
	[--resource]     :: Enable DRBD Proxy
	[--source-ip]    :: Source system IP address or port name.
	[--target-ip]    :: Target system IP address or port name.
	[--replication-portnum] :: Port number on which the replication data flows between the source and 
                            target systems (7789-7799)
	[--flags]        :: Optional flags for the operation. [async]


pool-replink-delete [prl-delete]

Delete the remote replication link between two storage pools.

	<--replication-link> :: Name or ID of the storage pool replication link/configuration


pool-replink-demote [prl-demote]

Demote the specified storage pool to be a secondary.

	<--replication-link> :: Name or ID of the storage pool replication link/configuration


pool-replink-promote [prl-promote]

Promote the specified pool to be a primary.

	<--replication-link> :: Name or ID of the storage pool replication link/configuration


pool-replink-suspend [prl-suspend]

Suspend the replication for the specified pool remote replication link.

	<--replication-link> :: Name or ID of the storage pool replication link/configuration


pool-replink-resume [prl-resume]

Resume the replication for the specified pool remote replication link.

	<--replication-link> :: Name or ID of the storage pool replication link/configuration


pool-replink-list [prl-list]

List the remote replication links between pools

pool-replink-get [prl-get]

Get info about a specific remote replication link between two pools

	<--replication-link> :: Name or ID of the storage pool replication link/configuration


Storage Pool HA Failover Management

ha-group-create [hag-create]

Creates a new storage pool high-availability group.

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	<--pool>         :: Name of the storage pool or its unique ID (GUID).
	<--sys-secondary> :: Storage system associated with the failover group secondary node
	[--sys-primary]  :: Storage system associated with the failover group primary node
	[--desc]         :: A description for the object.
	[--ha-module]    :: Name or UUID of a storage pool high-availability module


ha-group-modify [hag-modify]

Modifies the settings for the specified high-availability group

	<--ha-group>     :: Name or UUID of a storage pool high-availability group
	[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--desc]         :: A description for the object.
	[--sys-secondary] :: Storage system associated with the failover group secondary node
	[--ha-module]    :: Name or UUID of a storage pool high-availability module


ha-group-delete [hag-delete]

Deletes the specified high-availability group

	<--ha-group>     :: Name or UUID of a storage pool high-availability group


ha-group-failover [hag-failover]

Manually triggers a failover of the specified storage pool using the associated storage pool HA group policy.

	<--ha-group>     :: Name or UUID of a storage pool high-availability group
	<--storage-system> :: Name or ID of a storage system in a management grid.


ha-group-activate [hag-activate]

Activates/enables the specified high-availability group to failover can occur on a system outage.

	<--ha-group>     :: Name or UUID of a storage pool high-availability group


ha-group-deactivate [hag-deactivate]

Deactivates the specified high-availability group so that failover policies are disabled.

	<--ha-group>     :: Name or UUID of a storage pool high-availability group


ha-group-get [hag-get]

Gets information about the specified storage pool HA group

	<--ha-group>     :: Name or UUID of a storage pool high-availability group


ha-group-list [hag-list]

Returns a list of all the HA groups

ha-module-get [ham-get]

Gets information about the specified storage pool HA module

	<--ha-module>    :: Name or UUID of a storage pool high-availability module


ha-module-list [ham-list]

Returns a list of all the HA failover modules

ha-interface-create [hai-create]

Creates a new virtual network interface for the specified HA failover group.

	<--ha-group>     :: Name or UUID of a storage pool high-availability group
	<--parent-port>  :: Parent network port like 'eth0' which the virtual interface should be 
                            attached to.  On failover the virtual interface will attach to the port 
                            with the same name on the failover/secondary node.
	<--ip-address>   :: IP Address of the host being added; if unspecified the service will look 
                            it up.
	[--netmask]      :: Subnet IP mask (ex: 255.255.255.0)
	[--interface-tag] :: Tags are a alpha-numeric tag which is appended onto a given HA virtual 
                            interface for easy identification.
	[--desc]         :: A description for the object.
	[--gateway]      :: IP address of the network gateway
	[--mac-address]  :: MAC Address
	[--iscsi-enable] :: Enables or disables iSCSI access to the specified port(s).


ha-interface-delete [hai-delete]

Deletes the specified virtual network interface resource from the HA group

	<--ha-interface> :: Name or UUID of a storage pool high-availability virtual network 
                            interface


ha-interface-get [hai-get]

Gets information about the specified storage pool HA virtual network interface

	<--ha-interface> :: Name or UUID of a storage pool high-availability virtual network 
                            interface


ha-interface-list [hai-list]

Returns a list of all the HA interfaces on the specified group

Resource Group Quota Management

quota-create [q-create]

Creates a new storage quota on a pool for the specified storage cloud.

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	<--pool>         :: Name of the storage pool or its unique ID (GUID).
	<--cloud>        :: Name of a Storage Cloud or its unique id.
	[--policy]       :: Indicates the type of quota to be created. [hard, *soft]
	[--desc]         :: A description for the object.
	[--psize]        :: The total thin-provisionable space allowed by this quota.
	[--usize]        :: The total utilizable space allowed by this quota which may be less than 
                            the provisionable space.
	[--max-volumes]  :: The maximum number of volumes that can be created using this quota, 
                            specify 0 for no limit.
	[--max-shares]   :: The maximum number of share that can be created using this quota, 
                            specify 0 for no limit.
	[--flags]        :: Optional flags for the operation. [async]


quota-modify [q-modify]

Modifies one to change the name and/or description of a storage quota.

	<--quota>        :: Name or ID of a storage quota.
	<--cloud>        :: Name of a Storage Cloud or its unique id.
	[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--desc]         :: A description for the object.
	[--psize]        :: The total thin-provisionable space allowed by this quota.
	[--usize]        :: The total utilizable space allowed by this quota which may be less than 
                            the provisionable space.
	[--max-volumes]  :: The maximum number of volumes that can be created using this quota, 
                            specify 0 for no limit.
	[--max-shares]   :: The maximum number of share that can be created using this quota, 
                            specify 0 for no limit.
	[--policy]       :: Indicates the type of quota to be created. [hard, *soft]
	[--flags]        :: Optional flags for the operation. [async]


quota-delete [q-delete]

Deletes a storage quota, the associated volumes are not deleted.

	<--quota>        :: Name or ID of a storage quota.
	[--flags]        :: Optional flags for the operation. [async, force]


quota-list [q-list]

Returns a list of all the storage quotas.

quota-get [q-get]

Returns information about a specific storage quota.

	<--quota>        :: Name or ID of a storage quota.


quota-volume-add [qv-add]

Adds one or more volumes to the specified quota.

	<--quota>        :: Name or ID of a storage quota.
	<--volume-list>  :: A list of one or more storage volumes.


quota-volume-remove [qv-remove]

Removes one or more volumes from the specified quota

	<--quota>        :: Name or ID of a storage quota.
	<--volume-list>  :: A list of one or more storage volumes.


quota-share-assoc-list [qs-alist]

Returns a list of all the associated quotas of a specified share.

	<--share>        :: Name or ID of a network share.


quota-volume-assoc-list [qv-alist]

Returns a list of all the associated quotas of a specified volume.

	<--volume>       :: Name of the storage volume or its unique ID (GUID).


quota-share-add [qs-add]

Adds one or more shares to the specified quota.

	<--quota>        :: Name or ID of a storage quota.
	<--share-list>   :: A list of one or more network shares.


quota-share-remove [qs-remove]

Removes one or more shares from the specified quota.

	<--quota>        :: Name or ID of a storage quota.
	<--share-list>   :: A list of one or more network shares.


Storage System Management

system-get [sys-get]

Get general information about the storage system.

	[--storage-system] :: Name or ID of a storage system in a management grid.


system-list [sys-list]

Returns a list of all the managed storage systems. This is always a single system unless the system is a member of a management grid.

system-shutdown [shutdown]

Shutdown the storage system.

	[--storage-system] :: Name or ID of a storage system in a management grid.
	[--service-only] :: Shutdown just the management service and not the system.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


system-restart [restart]

Restarts the entire storage system.

	[--storage-system] :: Name or ID of a storage system in a management grid.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


system-upgrade [upgrade]

Upgrade to the latest version of the core packages.

	[--storage-system] :: Name or ID of a storage system in a management grid.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


system-modify [sys-modify]

Modifies the name and/or description of the storage system.

	[--storage-system] :: Name or ID of a storage system in a management grid.
	[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--desc]         :: A description for the object.
	[--location]     :: Optional description indicating the location of the storage system.
	[--domain]       :: The domain name suffix for your network such as example.com
	[--search]       :: The default domain search suffix for your network such as example.com
	[--arp-filter-mode] :: ARP filtering should be enabled when you have more than one network card 
                            on the same network. [*auto, disabled, enabled]
	[--bond-mode]    :: Round-robin balancing is the default mode but if you are using bonding 
                            across switches you must use LACP and have switch infrastructure that 
                            supports it. [lacp, *round-robin]
	[--ext-hostname] :: Specifies the external hostname for the system.  This is useful for 
                            creating grids of systems in the cloud like in Amazon's EC2.
	[--grid-port]    :: Designated port for grid communication
	[--flags]        :: Optional flags for the operation. [async, force, *none]


system-metadata-recovery-point-list [smrp-list]

Returns a list of all the available system metadata recovery points. Recovery points allow you to restore system information such as network, host, users, and other system information from a prior automatic backup.

	[--storage-system] :: Name or ID of a storage system in a management grid.


Network Interface Management

target-port-get [tp-get]

Returns information about the specified target port.

	<--port>         :: Name or MAC address of the target port.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


target-port-list [tp-list]

Returns a list of all the target ports in the system.

target-port-restart [tp-restart]

Restarts the specified target port.

	<--port>         :: Name or MAC address of the target port.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


target-port-disable [tp-disable]

Disables the specified target port.

	<--port>         :: Name or MAC address of the target port.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


target-port-enable [tp-enable]

Enables the specified target port.

	<--port>         :: Name or MAC address of the target port.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


target-port-rescan [tp-rescan]

Discovers new target ports and/or any manual modifications made to the configuration of the target ports.

	[--storage-system] :: Name or ID of a storage system in a management grid.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


target-port-modify [tp-modify]

Modifies target port settings including IP address, gateway, mtu, etc.

	<--port>         :: Name or MAC address of a target port, or 'all' to modify all ports.
	[--port-type]    :: Port configuration type. (static, dhcp)
	[--ip-address]   :: IP Address of the host being added; if unspecified the service will look 
                            it up.
	[--netmask]      :: Subnet IP mask (ex: 255.255.255.0)
	[--gateway]      :: IP address of the network gateway
	[--mtu]          :: Maximum transmission unit (MTU) for the target port, commonly set to 
                            9000 to enable jumbo frames.
	[--iscsi-enable] :: Enables or disables iSCSI access to the specified port(s).
	[--desc]         :: A description for the object.
	[--float-list]   :: List of physical ports and/or bonded ports that the virtual interface is 
                            allowed to float between.  If a physical port goes offline the system 
                            will automatically float the virtual interface to one of the online 
                            physical ports in the float list.
	[--bond-mode]    :: Round-robin balancing is the default mode but if you are using bonding 
                            across switches you must use LACP and have switch infrastructure that 
                            supports it. [lacp, *round-robin]
	[--flags]        :: Optional flags for the operation. [async, force, *none]


infiniband-port-list [ibp-list]

Returns a list of all the infiniband ports in the system.

infiniband-port-get [ibp-get]

Returns information about the specified infiniband port.

	<--port>         :: Name or MAC address of the target port.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


fiber-channel-port-list [fcp-list]

Returns a list of all the fiber channel target ports in the system.

fiber-channel-port-get [fcp-get]

Returns information about the specified fiber channel target port.

	<--port>         :: Name or MAC address of the target port.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


fiber-channel-port-disable [fcp-disable]

Disables the specified fiber channel port.

	<--port>         :: Name or MAC address of the target port.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


fiber-channel-port-enable [fcp-enable]

Enables the specified fiber channel port.

	<--port>         :: Name or MAC address of the target port.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


virtual-interface-create [vif-create]

Creates a new virtual network interface which is linked to a physical network port.

	<--parent-port>  :: Port that the virtual interface should initially be attached to.
	<--ip-address>   :: IP Address of the host being added; if unspecified the service will look 
                            it up.
	[--storage-system] :: Name or ID of a storage system in a management grid.
	[--netmask]      :: Subnet IP mask (ex: 255.255.255.0)
	[--gateway]      :: IP address of the network gateway
	[--float-list]   :: List of physical ports and/or bonded ports that the virtual interface is 
                            allowed to float between.  If a physical port goes offline the system 
                            will automatically float the virtual interface to one of the online 
                            physical ports in the float list.
	[--mtu]          :: Maximum transmission unit (MTU) for the target port, commonly set to 
                            9000 to enable jumbo frames.
	[--desc]         :: A description for the object.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


virtual-interface-delete [vif-delete]

Deletes the specified virtual network interface.

	<--port>         :: Name of unique ID of a physical network port/target port.


virtual-interface-move [vif-move]

Moves the specified virtual network interface to a different physical network port.

	<--vif>          :: Name of unique ID (GUID) for the virtual interface.
	<--port>         :: Name of unique ID of a physical network port/target port.


bonded-interface-create [bond-create]

Creates a bonded network interface by bonding/teaming together a group of one or more physical network ports.

	<--ip-address>   :: IP Address of the host being added; if unspecified the service will look 
                            it up.
	<--port-list>    :: List of target ports to be bonded together.
	[--storage-system] :: Name or ID of a storage system in a management grid.
	[--netmask]      :: Subnet IP mask (ex: 255.255.255.0)
	[--gateway]      :: IP address of the network gateway
	[--mtu]          :: Maximum transmission unit (MTU) for the target port, commonly set to 
                            9000 to enable jumbo frames.
	[--desc]         :: A description for the object.
	[--bond-mode]    :: Round-robin balancing is the default mode but if you are using bonding 
                            across switches you must use LACP and have switch infrastructure that 
                            supports it. [lacp, *round-robin]
	[--flags]        :: Optional flags for the operation. [async, force, *none]


bonded-interface-delete [bond-delete]

Deletes the specified bonded network interface.

	<--port>         :: Name of unique ID of a physical network port/target port.


vlan-interface-create [vlan-create]

Creates a new VLAN interface on the specified physical port.

	<--parent-port>  :: Port that the virtual interface should initially be attached to.
	<--ip-address>   :: IP Address of the host being added; if unspecified the service will look 
                            it up.
	<--vlan-id>      :: VLAN ID (typically 1-255)
	[--storage-system] :: Name or ID of a storage system in a management grid.
	[--netmask]      :: Subnet IP mask (ex: 255.255.255.0)
	[--gateway]      :: IP address of the network gateway
	[--vlan-qos]     :: VLAN Quality of Service (QoS) can be in the range of 0 (lowest, default) 
                            to 7 (highest) and represents the Class of Service (CoS) user priority of 
                            the VLAN traffic.
	[--mtu]          :: Maximum transmission unit (MTU) for the target port, commonly set to 
                            9000 to enable jumbo frames.
	[--desc]         :: A description for the object.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


vlan-interface-delete [vlan-delete]

Deletes the specified VLAN interface.

	<--port>         :: Name of unique ID of a physical network port/target port.


Storage Volume Management

volume-create [v-create]

Creates a new storage volume in the specified storage pool.

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	<--size>         :: Size may be specified in MiB, GiB, or TiB. examples: 4G, 100M, 1.4T
	<--pool>         :: Name of the storage pool or its unique ID (GUID).
	[--desc]         :: A description for the object.
	[--thin]         :: Thin provision (sparse allocate) the storage volume.
	[--access-mode]  :: Access mode for the volume. [none, readonly, *readwrite]
	[--chap-policy]  :: CHAP setting can be 'target' which is unique to a storage volume, 'user' 
                            or 'resource-group' which inherits the chap user/pass from your user 
                            account or storage cloud respectively. [cloud-defaults, *disabled, 
                            target, user-defaults]
	[--chap-user]    :: An optional iSCSI CHAP username.
	[--chap-pass]    :: An optional iSCSI CHAP password.
	[--count]        :: The number of volumes to create, default is 1.
	[--blocksize]    :: Volume block size in KB, valid values are 8, 16, 32, 64, 128. Larger 
                            values deliver higher performance for workloads with high sequential IO.
	[--flags]        :: Optional flags for the operation. [async, force]


volume-modify [v-modify]

Modifies a the name, description or other properties of the storage volume.

	<--volume>       :: Name of the storage volume or its unique ID (GUID).
	[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--desc]         :: A description for the object.
	[--access-mode]  :: Access mode for the volume. [none, readonly, *readwrite]
	[--flags]        :: Optional flags for the operation. [async]
	[--chap-policy]  :: CHAP setting can be 'target' which is unique to a storage volume, 'user' 
                            or 'resource-group' which inherits the chap user/pass from your user 
                            account or storage cloud respectively. [cloud-defaults, *disabled, 
                            target, user-defaults]
	[--chap-user]    :: An optional iSCSI CHAP username.
	[--chap-pass]    :: An optional iSCSI CHAP password.
	[--clear-snap-flag] :: Promotes a snapshot volume to standard (non-snapshot) volume.
	[--enable-wb-cache] :: Enables the write-back cache on the iSCSI target driver, this option 
                            uses volatile system RAM for cache and is not recommended.
	[--is-active-checkpoint] :: Tags the checkpoint device so that it cannot be replicated over.  Use 
                            this for DR failover and this flag is set automatically when a failover 
                            checkpoint volume has an active iSCSI session.
	[--sync]         :: Synchroniztion policy to use for handling writes to the storage pool 
                            (standard, always, none).  standard mode is a hybrid of write-through and 
                            write-back caching based on the O_SYNC flag, always mode is write-through 
                            to ZIL which could be SSD cache, and disabled indicates to always use 
                            async writes. [always, disabled, *standard]
	[--compression-type] :: Type of compression to be used. (on | off | lzjb | gzip | gzip-[1-9] | 
                            zle | lz4)
	[--copies]       :: Indicates the number of copies of each block should be maintained in the 
                            storage pool.  This is a way of getting duplicates for bit-rot protection 
                            on a single device.


volume-delete [v-delete]

Deletes a storage volume, *WARNING* any data in the volume will be lost.

	<--volume>       :: Name of the storage volume or its unique ID (GUID).
	[--flags]        :: Optional flags for the operation. [async, force]


volume-resize [v-resize]

Resizes a storage volume to make it larger, volumes cannot be reduced in size.

	<--volume>       :: Name of the storage volume or its unique ID (GUID).
	<--new-size>     :: New larger size for the volume specified in MiB, GiB, or TiB. examples: 
                            4G, 100M, 1.4T
	[--flags]        :: Optional flags for the operation. [async, force]


volume-restore [v-restore]

Restores a storage volume to a previous point in time using a snapshot.

	<--volume>       :: Name of the storage volume or its unique ID (GUID).
	<--snapshot>     :: Name or ID of a snapshot volume to use as the restore point.
	[--flags]        :: Optional flags for the operation. [async, force]


volume-list [v-list]

Returns a list of all the storage volumes.

volume-get [v-get]

Returns information about a specific storage volume.

	<--volume>       :: Name of the storage volume or its unique ID (GUID).


volume-snapshot [v-snap]

Creates a space efficient copy of the source volume.

	<--volume>       :: Name of the storage volume or its unique ID (GUID).
	[--name]         :: Name for the snapshot, if not provided the source volume name will be 
                            used as a prefix.
	[--desc]         :: A description for the object.
	[--access-mode]  :: Access mode for the volume. [none, readonly, *readwrite]
	[--count]        :: The number of snapshots of the specified volume to create, default is 1.
	[--flags]        :: Optional flags for the operation. [async, force]


volume-clone [v-clone]

Creates a complete block copy of the source volume.

	<--volume>       :: Name of the storage volume or its unique ID (GUID).
	[--name]         :: Name for the clone, if not provided the source volume name will be used 
                            as a prefix.
	[--desc]         :: A description for the object.
	[--access-mode]  :: Access mode for the volume. [none, readonly, *readwrite]
	[--flags]        :: Optional flags for the operation. [async, force]


volume-utilization-list [vu-list]

Returns volume utilization information for a specific storage volume or all storage volumes if no volume is specified.

	[--volume]       :: Name of the storage volume or its unique ID (GUID).


volume-utilization-get [vu-get]

Returns a specific volume utilization metrics for a single volume and specific date.

	<--id>           :: Unique identifier (GUID) for the object.


Storage Volume Group Management

volume-group-create [vg-create]

Creates a new storage volume group comprised of the specified storage volumes

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	<--volume-list>  :: A list of one or more storage volumes.
	[--desc]         :: A description for the object.
	[--flags]        :: Optional flags for the operation. [async]


volume-group-modify [vg-modify]

Modifies the name and/or description of a storage volume group.

	<--volume-group> :: An arbirary group of one or more storage volumes.
	[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--desc]         :: A description for the object.


volume-group-delete [vg-delete]

Deletes a storage volume group, the volumes are not deleted unless the delete-volumes flag is set.

	<--volume-group> :: An arbirary group of one or more storage volumes.
	[--destroy-volumes] :: If 'true' all the volumes in the group will be deleted with the volume 
                            group, default is 'false'.
	[--flags]        :: Optional flags for the operation. [async, force]


volume-group-snapshot [vg-snap]

Creates a space efficient copy of all volumes in the group.

	<--volume-group> :: An arbirary group of one or more storage volumes.
	[--name-suffix]  :: Name for the snapshot/clone; if unspecified the snapshot/clone will use 
                            the original name with '_snapNN'/'_cloneNN' appended.
	[--desc]         :: A description for the object.
	[--access-mode]  :: Access mode for the volume. [none, readonly, *readwrite]
	[--count]        :: The number of snapshots of the specified volume to create, default is 1.
	[--flags]        :: Optional flags for the operation. [async, force]


volume-group-clone [vg-clone]

Creates a complete block by block copy of all volumes in the group.

	<--volume-group> :: An arbirary group of one or more storage volumes.
	[--pool]         :: Name of the storage pool or its unique ID (GUID).
	[--name-suffix]  :: Name for the snapshot/clone; if unspecified the snapshot/clone will use 
                            the original name with '_snapNN'/'_cloneNN' appended.
	[--desc]         :: A description for the object.
	[--access-mode]  :: Access mode for the volume. [none, readonly, *readwrite]
	[--flags]        :: Optional flags for the operation. [async, force]


volume-group-list [vg-list]

Returns a list of all the storage volume groups.

volume-group-get [vg-get]

Returns information about a specific storage volume group.

	<--volume-group> :: An arbirary group of one or more storage volumes.


volume-group-volume-add [vgv-add]

Adds one or more volumes to the specified volume group.

	<--volume-group> :: An arbirary group of one or more storage volumes.
	<--volume-list>  :: A list of one or more storage volumes.


volume-group-volume-remove [vgv-remove]

Removes one or more volumes from the specified volume group

	<--volume-group> :: An arbirary group of one or more storage volumes.
	<--volume-list>  :: A list of one or more storage volumes.


Storage System Replication Link Management

link-get [sl-get]

Get information about the storage system link.

	<--link>         :: Storage system link ID or name.


link-list [sl-list]

List the existing storage system remote replication links.

link-delete [sl-delete]

Delete an existing storage system link.

	<--link>         :: Storage system link ID or name.


link-create [sl-create]

Create a new storage system link so that storage volumes may be replicated between storage systems.

	<--storage-system> :: Name or ID of a storage system in a management grid.
	<--remote-ip>    :: IP Address of the host being added; if unspecified the service will look 
                            it up.
	[--remote-admin] :: Remote admin user account to establish remote storage system link with.
	[--remote-passwd] :: Remote admin user password.
	[--local-ip]     :: IP Address of the host being added; if unspecified the service will look 
                            it up.
	[--bw-limit]     :: Limits the replication bandwidth between two storage systems to a set 
                            level specified in units of kilobytes per second (KB/sec). Specify 0 to 
                            indicate no limit.
	[--link-type]    :: Type of storage system link to establish.
	[--desc]         :: A description for the object.


link-modify [sl-modify]

Modify the properties of the storage system link.

	<--link>         :: Storage system link ID or name.
	<--remote-ip>    :: IP Address of the host being added; if unspecified the service will look 
                            it up.
	[--local-ip]     :: IP Address of the host being added; if unspecified the service will look 
                            it up.
	[--desc]         :: A description for the object.
	[--bw-limit]     :: Limits the replication bandwidth between two storage systems to a set 
                            level specified in units of kilobytes per second (KB/sec). Specify 0 to 
                            indicate no limit.
	[--link-type]    :: Type of storage system link to establish.


link-set-credentials [sl-setcred]

Change the credentials for an existing storage system link.

	<--link>         :: Storage system link ID or name.
	[--remote-admin] :: Remote admin user account to establish remote storage system link with.
	[--remote-passwd] :: Remote admin user password.


Storage System Grid Management

grid-get [mg-get]

Get general information about the storage system management grid.

grid-create [mg-create]

Creates a new management grid. A given storage system can only be a member of one grid at a time.

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--vif-enable]   :: Enables the use of a virtual interface for grid management.
	[--vif-ipaddress] :: Virtual host IP address to be associated with the master node in a the 
                            management grid.
	[--vif-netmask]  :: Virtual host netmask to be used with the specified IP address.
	[--desc]         :: A description for the object.
	[--vif-hostname] :: Cluster virtual host name to be associated with the master node in the 
                            management grid
	[--port]         :: Default physical target port to associate the management grid virtual 
                            host IP address with.
	[--bind-port]    :: This is the network address to bind with the Corosync cluster.
	[--grid-num]     :: Defaults to zero (0), increment this to a unique value between 0-9 if 
                            you have more than one grid on your network.


grid-modify [mg-modify]

Modify the management grid properties.

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--vif-enable]   :: Enables the use of a virtual interface for grid management.
	[--vif-ipaddress] :: Virtual host IP address to be associated with the master node in a the 
                            management grid.
	[--vif-netmask]  :: Virtual host netmask to be used with the specified IP address.
	[--desc]         :: A description for the object.
	[--vif-hostname] :: Cluster virtual host name to be associated with the master node in the 
                            management grid
	[--port]         :: Default physical target port to associate the management grid virtual 
                            host IP address with.
	[--bind-port]    :: This is the network address to bind with the Corosync cluster.
	[--grid-num]     :: Defaults to zero (0), increment this to a unique value between 0-9 if 
                            you have more than one grid on your network.


grid-delete [mg-delete]

Deletes the management grid. After the grid is deleted each node in the grid operates independently again.

grid-add [mg-add]

Adds the specified storage system to the management grid.

	<--node-ipaddress> :: IP address of a storage system node.
	[--node-username] :: Admin user account with permissions to add/remove nodes from the grid.
	[--node-password] :: Admin user account password.


grid-remove [mg-remove]

Removes the specified storage system from the management grid.

	<--storage-system> :: Name or ID of a storage system in a management grid.


grid-set-hosts [mg-set-hosts]

Configures the /etc/hosts configuration file on all systems to facilitate host name based gluster volume configurations.

	<--portid-list>  :: List of UUIDs for the ethernet ports to be used for grid wide /etc/hosts 
                            file configuration.


grid-get-hosts [mg-get-hosts]

Returns the /etc/hosts configuration file configuration for grid nodes.

grid-assoc-list [mg-alist]

Returns a list of the associated storage system nodes in the grid.

grid-assoc-get [mg-aget]

Get general information about the associated storage system management grid.

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	<--storage-system> :: Name or ID of a storage system in a management grid.
	[--flags]        :: Optional flags for the operation. [async, force, *none]


grid-set-master [mg-set]

Sets the master node for a storage system.

	<--storage-system> :: Name or ID of a storage system in a management grid.


Storage Tier Management

storage-tier-create [st-create]

Creates a new storage storage tier comprised of the specified storage pools

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	<--pool-list>    :: List of storage pools.
	[--desc]         :: A description for the object.
	[--storage-class] :: The classification/primary use case of the storage such as 
                            Backup/Archive, High-Performance, or General Purpose.
	[--storage-type] :: Type of the storage pools included in this tier: SATA, SAS, SSD, SSHD, 
                            MULTI, Unknown [AOE, MULTI, *SAS, SATA, SSD, SSHD, UNKNOWN]
	[--perf-level]   :: An estimation of the relative performance of the storage teir as a 
                            simplified number in the range of 1 to 100.
	[--flags]        :: Optional flags for the operation. [async]


storage-tier-modify [st-modify]

Modifies the name, description or other property of the specified storage tier.

	<--tier>         :: Storage tier is a group of one or more storage pools used to simplify 
                            storage provisioning by teir/category/classification.
	[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--desc]         :: A description for the object.
	[--storage-class] :: The classification/primary use case of the storage such as 
                            Backup/Archive, High-Performance, or General Purpose.
	[--storage-type] :: Type of the storage pools included in this tier: SATA, SAS, SSD, SSHD, 
                            MULTI, Unknown [AOE, MULTI, *SAS, SATA, SSD, SSHD, UNKNOWN]
	[--perf-level]   :: An estimation of the relative performance of the storage teir as a 
                            simplified number in the range of 1 to 100.


storage-tier-delete [st-delete]

Deletes the specified storage storage tier (pools are not deleted).

	<--tier>         :: Storage tier is a group of one or more storage pools used to simplify 
                            storage provisioning by teir/category/classification.
	[--flags]        :: Optional flags for the operation. [async, force]


storage-tier-list [st-list]

Returns a list of all the storage storage tiers.

storage-tier-get [st-get]

Returns information about a specific storage storage tier.

	<--tier>         :: Storage tier is a group of one or more storage pools used to simplify 
                            storage provisioning by teir/category/classification.


storage-tier-pool-add [stp-add]

Adds one or more pools to the specified storage tier.

	<--tier>         :: Storage tier is a group of one or more storage pools used to simplify 
                            storage provisioning by teir/category/classification.
	<--pool-list>    :: List of storage pools.


storage-tier-pool-remove [stp-remove]

Removes one or more pools from the specified storage tier.

	<--tier>         :: Storage tier is a group of one or more storage pools used to simplify 
                            storage provisioning by teir/category/classification.
	<--pool-list>    :: List of storage pools.


Task Management

task-list [t-list]

Returns a list of all the tasks including active, completed, and failed tasks. Whenever you run a command in QuantaStor it is queued in the task manager and then executed automatically once the necessary resource locks are aquired. This means that you can run commands synchronously and/or asynchronously to run multiple operations concurrently. By default the CLI waits for the task to complete so it blocks by default. You can have the CLI not wait by specifying the --async flag to any operation. In such cases the CLI will return immediately.

task-get [t-get]

Returns information about the specified task.

	<--task>         :: ID of a task.


task-cancel [t-cancel]

Cancels the specified task that is in the queue or is running.

	<--task>         :: ID of a task.


task-clear-all [t-clear-all]

Clears all the completed and/or failed tasks from the task log so that only the running and queued tasks remain, if any.

User Management

user-add [u-add]

Adds a new user account to the system. A matching console level account is created on all grid nodes but by default SSH access is not allowed. Rather, management accounts do allow the use of qs CLI commands and QuantaStor web management interface access as per the limits of the assigned user role.

	<--name>         :: User names may include any alpha-numeric characters '_' and '-', no 
                            spaces are allowed.
	<--password>     :: A password for the user to use when accessing the QuantaStor management 
                            interface.
	<--role>         :: Name of a security role or its unique ID (GUID).
	[--first-name]   :: User's first name; enclose in double-quotes if it contains spaces.
	[--last-name]    :: User's last name; enclose in double-quotes if it contains spaces.
	[--email]        :: An email address of the form 'user@example.com' without the quotes.
	[--desc]         :: A description for the object.
	[--default-chap-user] :: Default CHAP username for storage volumes owned by a user account which 
                            have the CHAP policy set to 'use user default CHAP settings'
	[--default-chap-pass] :: Default CHAP password for storage volumes owned by a user account which 
                            have the CHAP policy set to 'use user default CHAP settings'
	[--alerts]       :: Alert types to subscribe to. Alerts at the subscribed level are sent to 
                            the user's email address automatically when a SMTP server is configured. 
                            [critical, error, info, *none, warning]


user-modify [u-modify]

Modifies the specified user name, role, and/or description.

	<--user>         :: Name or ID (GUID) of a existing user.
	[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--role]         :: Name of a security role or its unique ID (GUID).
	[--desc]         :: A description for the object.
	[--default-chap-user] :: Default CHAP username for storage volumes owned by a user account which 
                            have the CHAP policy set to 'use user default CHAP settings'
	[--default-chap-pass] :: Default CHAP password for storage volumes owned by a user account which 
                            have the CHAP policy set to 'use user default CHAP settings'
	[--alerts]       :: Alert types to subscribe to. Alerts at the subscribed level are sent to 
                            the user's email address automatically when a SMTP server is configured. 
                            [critical, error, info, *none, warning]


user-password-set [passwd]

Changes the password for the specified user

	<--user>         :: Name or ID (GUID) of a existing user.
	<--new-password> :: New password for the user.
	[--old-password] :: Old password for the user.


user-remove [u-remove]

Removes the specified user identified by name or ID.

	<--user>         :: Name or ID (GUID) of a existing user.


user-list [u-list]

Returns a list of all the users.

user-get [u-get]

Gets information about the specified user.

	<--user>         :: Name or ID (GUID) of a existing user.


User Group Management

user-group-create [ug-create]

Creates a new storage user group comprised of the specified users.

	<--name>         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	<--user-list>    :: A list of one or more users.
	[--desc]         :: A description for the object.
	[--flags]        :: Optional flags for the operation. [async]


user-group-modify [ug-modify]

Modifies the name and/or description of a storage user group.

	<--user-group>   :: An arbirary group of one or more users.
	[--name]         :: Names may include any alpha-numeric characters '_' and '-', spaces are 
                            not allowed.
	[--desc]         :: A description for the object.


user-group-delete [ug-delete]

Deletes a storage user group, the users are not deleted unless the delete-users flag is set.

	<--user-group>   :: An arbirary group of one or more users.
	[--flags]        :: Optional flags for the operation. [async, force]


user-group-list [ug-list]

Returns a list of all the storage user groups.

user-group-get [ug-get]

Returns information about a specific storage user group.

	<--user-group>   :: An arbirary group of one or more users.


user-group-user-add [ugu-add]

Adds one or more users to the specified user group.

	<--user-group>   :: An arbirary group of one or more users.
	<--user-list>    :: A list of one or more users.


user-group-user-remove [ugu-remove]

Removes one or more users from the specified user group

	<--user-group>   :: An arbirary group of one or more users.
	<--user-list>    :: A list of one or more users.