Quality of Service (QoS) policies enable you to define quality of service per view. In a QoS policy, you can set limits to define minimum and maximum allowed bandwidth and/or IOPS for read and/or write operations per view. After creating a QoS policy, you can attach it to a view when you create or modify a view.
Note
QoS policies are supported for NFSv4.1, NFSv3 and SMB. S3 is not supported.
QoS Limits
You can set static and/or capacity-based QoS limits.
-
Static limits are used-defined values of bandwidth and/or IOPS for read and/or write operations. These limits are fixed; they are not dependent on the used or provisioned capacity of the view.
You can set a minimum and/or a maximum static limit.
-
Minimum limits define the minimum allowed performance per view when there is resource contention.
-
Maximum limits define the maximum allowed performance per view when there is no resource contention.
Static limits do not require a quota to be provisioned on the view path.
-
-
Capacity-based limits can be based on either of the following:
-
Used logical capacity
These limits cap the read/write bandwidth and/or IOPS per unit of used logical capacity. (Logical capacity is the amount of data written, before data reduction.) For example, you can configure a QoS policy to allow a maximum of 3 read IOPS per one GB of used logical capacity.
-
Provisioned logical capacity
These limits cap the read/write bandwidth and/or IOPS per unit of logical capacity provisioned by the soft limit of a quota on the view path. For example, you can configure the QoS policy to allow a maximum of 1MB/s of read bandwidth per GB of the capacity limit configured in a quota.
Capacity-based limits require a quota to be provisioned on the view path. If you attach a QoS policy that uses this mode to a view that has no quota, VMS automatically creates a quota on the view path.
The quota on the view path itself is the only quota that affects the limits.
-
QoS limits take both data workload and metadata requests into account, as follows:
- The size of a single IO for the purpose of a QoS limit is 1MB. In other words, the number of IOs per request is obtained by dividing the request size by 1MB.
- A mutating metadata request (such as create, delete, rename, setattr) is counted as one write IO. Non-mutating metadata requests (such as getattr, lookup, list) are counted as one read IO for each. The size of a metadata request is taken to be 4KB.
QoS Provisioning Modes
VAST Cluster provides the following QoS provisioning modes:
-
Static. This mode enforces minimum and maximum static limits.
-
Used Capacity. This mode enforces used capacity-based limits and maximum static limits.
-
Provisioned Capacity. This mode enforces provisioned capacity-based limits and maximum static limits.
When static limits are used in Used Capacity and Provisioned Capacity modes, they limit performance that can be reached while still within the capacity-based limits. For example, setting a 1GB/s maximum and 10 MB/s per GB would mean that after reaching 100GB, the performance will no longer increase.
Comments
0 comments
Article is closed for comments.