qospolicy create

Prev Next

This command creates a QoS policy.

Usage

  • To create a view QoS policy:

    qospolicy create --name <NAME> --policy-type VIEW
                    [--tenant-id <ID>] 
                    [--limit-by {BW_IOPS|BW|IOPS}]
                    [--static-limits <LIMITS>] | [--use-total-limits --static-total-limits <LIMITS>]
                    [--capacity-limits <LIMITS> --mode <MODE>] | [--use-total-limits --capacity-total-limits <LIMITS> --mode <MODE>] 
                    [--is-gold]
    
  • To create a user QoS policy:

    qospolicy create --name <NAME> --policy-type USER
                    [--tenant-id <ID>]
                    [--is-default]
                    [--attached-iam-roles <ROLES>]
                    [--limit-by {BW_IOPS|BW|IOPS}]
                    [--static-limits <LIMITS>] | [--use-total-limits --static-total-limits <LIMITS>]
                    [--s3-connections-limit <LIMIT>]
    

Required Parameters

--name <NAME>

Specifies a name for the QoS policy.

General Options

--attached-iam-roles <ROLES>

Attaches a user QoS policy to one or more IAM roles.

Specify <ROLES> as a comma-separated list of IAM role IDs, for example: 2,5,8.

--is-default

When specified, the policy is used as the default user QoS policy for all users under the tenant specified in --tenant-id.

Caution

Specifying this option resets the list of users assigned to this policy.

--policy-type {VIEW|USER}

Determines whether the QoS policy provisions performance for views (VIEW) or users (USER).

--tenant-id <ID>

If the QoS policy is to be used for one or more users  (--policy-type USER), specify the ID of the tenant whose users can be assigned this QoS policy.  

Tip

To assign users to a user QoS policy, run the qospolicy attach-user command.

Options to Set Limits

--capacity-limits <LIMITS>

Enables and sets QoS limits per unit of used or provisioned logical capacity, depending on the provisioning mode (see --mode).

Specify <LIMITS> as a comma-separated list of key=value pairs, where the following keys can be used, depending on the --limit-by setting:

  • max_reads_bw_mbps_per_gb_capacity. Maximum read bandwidth to provision per GB of used logical or provisioned logical capacity, depending on the provisioning mode (set by --mode).

  • max_reads_iops_per_gb_capacity.  Maximum read IOPS to provision per GB of used logical or provisioned logical capacity, depending on the provisioning mode (set by --mode).

  • max_writes_bw_mbps_per_gb_capacity. Maximum write bandwidth  to provision per GB of used logical or provisioned logical capacity, depending on the provisioning mode (set by --mode).

  • max_writes_iops_per_gb_capacity. Maximum write IOPS to provision per GB of used logical or provisioned logical capacity,depending on the provisioning mode (set by --mode).

For example:

max_reads_bw_mbps_per_gb_capacity=1024,max_writes_iops_per_gb_capacity=2048

--capacity-total-limits <LIMITS>

Enables and sets QoS limits per unit of used or provisioned logical capacity, depending on the provisioning mode (see --mode), that cap the total amount of read, write and metadata operations.

Specify <LIMITS> as a comma-separated list of key=value pairs, where the following keys can be used, depending on the --limit-by setting:

  • max_bw_mbps_per_gb_capacity. Maximum bandwidth to provision per GB of used logical or provisioned logical capacity, depending on the provisioning mode (set by --mode).

  • max_iops_per_gb_capacity.  Maximum IOPS to provision per GB of used logical or provisioned logical capacity, depending on the provisioning mode (set by --mode).

For example: max_bw_mbps_per_gb_capacity=1024,max_iops_per_gb_capacity=2048

--limit-by {BW_IOPS|BW|IOPS}

Sets performance characteristic(s) by which to limit service:

  • BW_IOPS. Lets you set limits on both bandwidth (BW) and I/O per second (IOPS).

  • BW. Lets you set limits on bandwidth only.  

    Note

    When this option is specified, the options for setting IOPS limits are not used.

  • IOPS. Lets you set limits on IOPS only.

    Note

    When this option is specified, the options for setting bandwidth limits are not used.

--mode <MODE>

Determines how capacity-based limits are set.

Specify <MODE> as one of the following:

  • STATIC. No capacity-based limits are set.

  • USED_CAPACITY. Capacity-based limits are set based on used capacity.

  • PROVISIONED_CAPACITY. Capacity-based limits are set based on provisioned capacity.

--s3-connections-limit LIMIT

Sets the  maximum allowed number of S3 connections.

By default, no S3 connection limit is set. '0' (zero) means that unlimited number of S3 connections is allowed.

--static-limits <LIMITS>

Enables and sets static QoS limits.

Specify <LIMITS> as a comma-separated list of key=value pairs.

The following keys can be used, depending on the --limit-by setting:

  • max_reads_bw_mbps. Maximum read bandwidth to provision, in MB/s.

  • max_reads_iops. Maximum read IOPS to provision.

  • max_writes_bw_mbps. Maximum write bandwidth to provision, in MB/s.

  • max_writes_iops. Maximum write IOPS to provision.

  • burst_reads_bw_mb. Burst bandwidth for read operations, in MB/s.

  • burst_reads_iops. Burst IOPS for read operations.

  • burst_reads_loan_mb. Maximum credit bandwidth for read operations, in MB/s.

  • burst_reads_loan_iops. Maximum credit IOPS for read operations.

  • burst_writes_bw_mb. Burst bandwidth for write operations, in MB/s.

  • burst_writes_iops. Burst IOPS for write operations.

  • burst_writes_loan_mb. Maximum credit bandwidth for write operations, in MB/s.

  • burst_writes_loan_iops. Maximum credit IOPS for write operations.

For example:

max_reads_bw_mbps=1024,max_writes_iops=2048

--static-total-limits <LIMITS>

Enables and sets static QoS limits that cap the total amount of read, write and metadata operations.

Specify <LIMITS> as a comma-separated list of key=value pairs.

The following keys can be used, depending on the --limit-by setting:

  • max_bw_mbps. Maximum read bandwidth to provision, in MB/s.

  • max_iops. Maximum read IOPS to provision.

  • burst_bw_mb. Burst bandwidth for read operations, in MB/s.

  • burst_iops. Burst IOPS for read operations.

  • burst_loan_mb. Maximum credit bandwidth for read operations, in MB/s.

  • burst_loan_iops. Maximum credit IOPS for read operations.

For example: max_iops=2048

--use-total-limits

If specified, enables you to set limits that cap the total amount of read, write and metadata operations (see --static-total-limits and --capacity-total-limits).

Prioritization Options

--is-gold

Sets a  prioritization flag for the QoS policy so that the workloads have higher priority in contention for CPU and memory resources. This option applies to view QoS policies only.

Example

vcli: admin> qospolicy create --name QoSpol1 --mode USED_CAPACITY --use-separate-limits
 --capacity-limits max_reads_bw_mbps_per_gb_capacity=1024,max_writes_bw_mbps_per_gb_capacity=2048
 --limit-by BW