Using adaptive QoS policy groups

You can use an adaptive QoS policy group to automatically scale a throughput ceiling or floor to volume size, maintaining the ratio of IOPS to TBs|GBs as the size of the volume changes. That is a significant advantage when you are managing hundreds or thousands of workloads in a large deployment.

Before you begin

About this task

A storage object can be a member of an adaptive policy group or a non-adaptive policy group, but not both. The SVM of the storage object and the policy must be the same. The storage object must be online.

Adaptive QoS policy groups are always non-shared: the defined throughput ceiling or floor applies to each member workload individually.

The ratio of throughput limits to storage object size is determined by the interaction of the following fields:

Three default adaptive QoS policy groups are available, as shown in the following table. You can apply these policy groups directly to a volume.

Default policy group Expected IOPS/TB Peak IOPS/TB Absolute Min IOPS
extreme 6,144 12,288 1000
performance 2,048 4,096 500
value 128 512 75


  1. Create an adaptive QoS policy group: qos adaptive-policy-group create -policy group policy_group -vserver SVM -expected-iops number_of_iops/TB|GB -peak-iops number_of_iops/TB|GB -expected-iops-allocation-space|used-space -peak-iops-allocation allocated-space|used-space -absolute-min-iops number_of_iops -block-size 8K|16K|32K|64K|ANY
    For complete command syntax, see the man page.
    Note: -expected-iops-allocation and -block-size is available in ONTAP 9.5 and later. These options are not supported in ONTAP 9.4 and earlier.
    The following command creates adaptive QoS policy group adpg-app1 with -expected-iops set to 300 IOPS/TB, -peak-iops set to 1,000 IOPS/TB, -peak-iops-allocation set to used-space, and -absolute-min-iops set to 50 IOPS:
    cluster1::> qos adaptive-policy-group create -policy group adpg-app1 -vserver vs2 -expected-iops 300iops/tb -peak-iops 1000iops/TB -peak-iops-allocation used-space -absolute-min-iops 50iops
  2. Apply an adaptive QoS policy group to a volume: volume create -vserver SVM -volume volume -aggregate aggregate -size number_of_TB|GB -qos-adaptive-policy-group policy_group
    For complete command syntax, see the man pages.
    The following command applies adaptive QoS policy group adpg-app1 to volume app1:
    cluster1::> volume create -vserver vs1 -volume app1 -aggregate aggr1 -size 2TB -qos-adaptive-policy-group adpg-app1
    The following commands apply the default adaptive QoS policy group extreme to the new volume app4 and to the existing volume app5. The throughput ceiling defined for the policy group applies to volumes app4 and app5 individually:
    cluster1::> volume create -vserver vs4 -volume app4 -aggregate aggr4 -size 2TB -qos-adaptive-policy-group extreme
    cluster1::> volume modify -vserver vs5 -volume app5 -qos-adaptive-policy-group extreme