使用 QoS 保证吞吐量
存储服务质量(QoS)功能可用于避免竞争性工作负载影响关键工作负载的性能。可为竞争性工作负载设置吞吐量上限 以限制其对系统资源的影响,或为关键工作负载设置吞吐量下限,以确保在满足竞争性工作负载需求的同时满足最低吞吐量目标。甚至可以为同一个工作负载同时设置上限和下限。
了解吞吐量上限(QoS 最大值)
吞吐量上限指工作负载的吞吐量最大值,以 IOPS 和/或 MBps 表示。在下图中,工作负载 2 的吞吐量上限可确保其性能不会“压制”工作负载 1 和 3。
策略组 定义一个或多个工作负载的吞吐量上限。工作负载表示对存储对象 的 I/O 操作。存储对象是指单个卷、文件、Qtree 或 LUN,或者一个 SVM 中的所有卷、文件、Qtree 或 LUN。可在创建策略组时指定上限,也可以等到监控工作负载之后再指定。

了解吞吐量下限(QoS 最小值)
吞吐量下限指工作负载的吞吐量最小值,以 IOPS 和/或 MBps 表示。在下图中,工作负载 1 和 3 的吞吐量下限确保可确保在满足工作负载 2 需求的同时满足最小吞吐量目标。
不能将用于定义吞吐量下限的策略组应用于 SVM。可在创建策略组时指定下限,也可以等到监控工作负载之后再指定。
在关键操作(例如 volume move trigger-cutover)期间,工作负载吞吐量可能会降到指定下限之下。即使有足够的可用容量,并且没有进行关键操作,工作负载的吞吐量也可能低于指定下限达 5%。如果下限被过度配置且没有性能容量,某些工作负载就可能会降到指定下限之下。

了解共享和非共享 QoS 策略组
从 ONTAP 9.5 开始,非共享 QoS 策略组可用于为每个成员工作负载分别指定吞吐量上限或下限。共享 策略组行为则取决于策略类型:
对于吞吐量上限而言,分配给共享策略组的工作负载的总吞吐量不能超过指定上限。
对于吞吐量下限而言,共享策略组仅可应用于单个工作负载。
了解自适应 QoS
一般情况下,为存储对象分配的策略组值是固定的。当存储对象的大小发生改变时,需要手动更改该值。例如,当卷中的已用空间量增加时,通常也需要提高为该卷指定的吞吐量上限。
自适应 QoS 可根据工作负载大小的变化自动调整策略组值,并保持 IOPS 与 TB|GB 之间的比例。这在管理大型部署中的成百上千个工作负载时具有极大的优势。
从 ONTAP 9.5 开始,可为应用程序指定 I/O 块大小,以便能以 IOPS 和 MBps 表示吞吐量限制。MB/秒限制可用块大小乘以 IOPS 限制来计算。例如,在 IOPS 限制为 6144 IOPS/TB 的情况下,32K 的 I/O 块大小的 MBps 限制为 192 MBps。
吞吐量上限和下限都具有以下行为:
为自适应 QoS 策略组分配工作负载时,上限和下限将立即更新。
调整自适应 QoS 策略组中的工作负载大小时,上限和下限将在大约五分钟后更新。
必须将吞吐量增加至少 10 IOPS,才能使更新生效。
自适应 QoS 策略组始终不共享:定义的吞吐量上限或下限分别应用于每个成员工作负载。
常规支持
下表显示吞吐量上限、吞吐量下限和自适应 QoS 支持方面的差别。
资源或功能 | 吞吐量上限 | 吞吐量下限 | 吞吐量下限 v2 | 自适应 QoS |
---|---|---|---|---|
ONTAP 版本 9 | 全部 | 9.5 及更高版本 | 9.7 和更高版本 | 9.5 及更高版本 |
平台 | 全部 |
|
| 全部 |
协议 | 全部 | 全部 | 全部 | 全部 |
FabricPool | 是 | 是(前提是分层策略设置为“无”,并且没有块在云中。) | 是(前提是分层策略设置为“无”,并且没有块在云中。) | 是 |
SnapMirror 同步 | 是 | 否 | 否 | 是 |
支持吞吐量上限的工作负载
下表显示 ONTAP 版本 9 中工作负载对吞吐量上限的支持情况。不支持根卷、负载共享镜像和数据保护镜像。
工作负载支持 - 上限 | 9.5 及更高版本 | 9.8 及更高版本 |
---|---|---|
卷 | 是 | 是 |
文件 | 是 | 是 |
LUN | 是 | 是 |
SVM | 是 | 是 |
FlexGroup 卷 | 是 | 是 |
每个策略组中的多个工作负载 | 是 | 是 |
非共享策略组 | 是 | 是 |
支持吞吐量下限的工作负载
下表显示 ONTAP 版本 9 中工作负载对吞吐量下限的支持情况。不支持根卷、负载共享镜像和数据保护镜像。
工作负载支持 - 下限 | 9.5 及更高版本 | 9.8 及更高版本 |
---|---|---|
卷 | 是 | 是 |
文件 | 是 | 是 |
LUN | 是 | 是 |
SVM | 否 | 是 |
FlexGroup 卷 | 是 | 是 |
每个策略组中的多个工作负载 | 是 | 是 |
非共享策略组 | 是 | 是 |
*从 ONTAP 9.8 开始,启用了 NFS 的 FlexVol 和 FlexGroup 卷中的 Qtree 可支持 NFS 访问。从 ONTAP 9.9.1 开始,启用了 SMB 的 FlexVol 和 FlexGroup 卷中的 Qtree 同时也支持 SMB 访问。
支持自适应 QoS 的工作负载
下表显示 ONTAP 版本 9 中工作负载对自适应 QoS 的支持情况。不支持根卷、负载共享镜像和数据保护镜像。
工作负载支持 - 自适应 QoS | 9.5 及更高版本 |
---|---|
卷 | 是 |
文件 | 是 |
LUN | 是 |
SVM | 否 |
FlexGroup 卷 | 是 |
每个策略组中的多个工作负载 | 是 |
非共享策略组 | 是 |
最大工作负载和策略组数量
下表显示 ONTAP 版本 9 中支持的最大工作负载和策略组数量。
工作负载支持 | 9.5 及更高版本 |
---|---|
每个集群的最大工作负载数量 | 40,000 |
每个节点的最大工作负载数量 | 40,000 |
最大策略组数量 | 12,000 |