QoS 概述保证吞吐量
您可以使用存储服务质量( QoS )来保证关键工作负载的性能不会因争用资源的工作负载而降级。您可以为争用资源的工作负载设置吞吐量上限,以限制其对系统资源的影响,也可以为关键工作负载设置吞吐量上限,以确保满足最小吞吐量目标,而不管争用资源的工作负载有何需求。您甚至可以为同一工作负载设置上限和下限。
关于吞吐量上限( QoS 最大值)
吞吐量上限会将工作负载的吞吐量限制为最大 IOPS 或 MBps 数,或者 IOPS 和 MBps 数。在下图中,工作负载 2 的吞吐量上限可确保它不会 " 抢占 " 工作负载 1 和 3 。
策略组定义了一个或多个工作负载的吞吐量上限。工作负载表示 _storage 对象: _ 卷,文件, qtree 或 LUN ,或者 SVM 中的所有卷,文件, qtree 或 LUN 的 I/O 操作。您可以在创建策略组时指定上限,也可以等到监控工作负载之后再指定上限。
工作负载的吞吐量可能会超出指定上限 10% ,尤其是在工作负载的吞吐量发生快速变化时。要处理突发事件,上限可能会超过 50% 。令牌累积率高达 150% 时,单个节点上发生突发 |
关于吞吐量下限( QoS 最小值)
吞吐量下限可确保工作负载的吞吐量不会低于最小IOPS或MBps数或IOPS和MBps数。在下图中,工作负载 1 和工作负载 3 的吞吐量下限可确保满足最小吞吐量目标,而不管工作负载 2 的需求如何。
如示例所示,吞吐量上限会直接限制吞吐量。吞吐量下限会优先考虑设置了下限的工作负载,从而间接限制吞吐量。 |
您可以在创建策略组时指定下限,也可以等到监控工作负载之后再指定下限。
从ONTAP 9.13.1开始、您可以使用在SVM范围设置吞吐量下限 [adaptive-qos-templates]。在9.13.1之前的ONTAP 版本中、定义吞吐量下限的策略组不能应用于SVM。
在 ONTAP 9.7 之前的版本中,如果有足够的可用性能容量,则可以保证吞吐量下限。 在 ONTAP 9.7 及更高版本中,即使可用性能容量不足,也可以保证吞吐量下限。这种新的楼层行为称为 Floor v2 。为了满足保证要求,对于没有吞吐量下限的工作负载或超出下限设置的工作负载, Floor v2 可能会导致延迟更高。第 2 层适用场景 QoS 和自适应 QoS 。 ONTAP 9.7P6及更高版本提供了启用/禁用楼层v2新行为的选项。在执行关键操作(如)期间、工作负载可能会低于指定的下限 |
关于共享和非共享 QoS 策略组
从 ONTAP 9.4 开始,您可以使用 non-shared QoS 策略组分别指定每个成员工作负载的已定义吞吐量上限或下限适用场景。shared 策略组的行为取决于策略类型:
-
对于吞吐量上限,分配给共享策略组的工作负载的总吞吐量不能超过指定的上限。
-
对于吞吐量下限,共享策略组只能应用于单个工作负载。
关于自适应 QoS
通常,分配给存储对象的策略组值是固定的。当存储对象的大小发生变化时,您需要手动更改此值。例如,增加卷上的已用空间量通常需要相应地增加为卷指定的吞吐量上限。
Adaptive QoS 会自动将策略组值扩展到工作负载大小,并在工作负载大小发生变化时保持 IOPS 与 TBSGB 的比率。如果您要在大型部署中管理数百或数千个工作负载,则这是一项显著优势。
通常,您可以使用自适应 QoS 来调整吞吐量上限,但也可以使用它来管理吞吐量下限(当工作负载大小增加时)。工作负载大小表示为存储对象分配的空间或存储对象使用的空间。
在 ONTAP 9.5 及更高版本中,已用空间可用于吞吐量下限。在 ONTAP 9.4 及更早版本中,吞吐量下限不支持此功能。 |
-
已分配空间策略会根据存储对象的标称大小保持 IOPS/TBGB 比率。如果此比率为 100 IOPS/GB ,则只要 150 GB 卷保持此大小,其吞吐量上限将为 15 , 000 IOPS 。如果将卷大小调整为 300 GB ,则自适应 QoS 会将吞吐量上限调整为 30 , 000 IOPS 。
-
已用空间策略(默认值)会根据存储效率之前存储的实际数据量保持 IOPS/TBGB 比率。如果此比率为 100 IOPS/GB ,则存储了 100 GB 数据的 150 GB 卷的吞吐量上限为 10 , 000 IOPS 。随着已用空间量的变化,自适应 QoS 会根据比率调整吞吐量上限。
从 ONTAP 9.5 开始,您可以为应用程序指定 I/O 块大小,以便以 IOPS 和 MBps 为单位表示吞吐量限制。MBps 限制是通过块大小乘以 IOPS 限制计算得出的。例如,如果 I/O 块大小为 32 K ,而 IOPS 限制为 6144IOPS/TB ,则 MBps 限制为 192 MBps 。
吞吐量上限和下限均会出现以下行为:
-
将工作负载分配给自适应 QoS 策略组后,上限或下限将立即更新。
-
调整自适应 QoS 策略组中的工作负载大小后,上限或下限大约会在五分钟内更新。
在进行更新之前,吞吐量必须至少增加 10 IOPS 。
自适应 QoS 策略组始终为非共享组:定义的吞吐量上限或每个成员工作负载的下限适用场景。
从ONTAP 9.6开始、采用SSD的ONTAP Select 高级版支持吞吐量下限。
自适应策略组模板
从ONTAP 9.13.1开始、您可以在SVM上设置自适应QoS模板。通过自适应策略组模板、您可以为SVM中的所有卷设置吞吐量下限和上限。
只有在创建SVM之后、才能设置自适应策略组模板。使用 vserver modify
命令 -qos-adaptive-policy-group-template
参数以设置策略。
设置自适应策略组模板时、在设置策略后创建或迁移的卷会自动继承策略。分配策略模板时、SVM上现有的任何卷不受影响。如果在SVM上禁用此策略、则此后迁移到SVM或在此SVM上创建的任何卷都不会收到此策略。禁用自适应策略组模板不会影响继承策略模板的卷、因为它们会保留策略模板。
有关详细信息,请参见 设置自适应策略组模板。
常规支持
下表显示了在支持吞吐量上限,吞吐量下限和自适应 QoS 方面的差异。
资源或功能 | 吞吐量上限 | 吞吐量下限 | 吞吐量下限 v2 | 自适应 QoS |
---|---|---|---|---|
ONTAP 9 版本 |
全部 |
9.2及更高版本 |
9.7及更高版本 |
9.3及更高版本 |
平台 |
全部 |
|
|
全部 |
协议 |
全部 |
全部 |
全部 |
全部 |
FabricPool |
是的。 |
是,如果分层策略设置为 " 无 " 且云中没有块。 |
是,如果分层策略设置为 " 无 " 且云中没有块。 |
否 |
SnapMirror 同步 |
是的。 |
否 |
否 |
是的。 |
从ONTAP 9.6版开始支持C190和ONTAP Select。
支持的工作负载达到吞吐量上限
下表按 ONTAP 9 版本显示了工作负载对吞吐量上限的支持。不支持根卷,负载共享镜像和数据保护镜像。
工作负载支持—上限 | ONTAP 9.0 | ONTAP 9.1 | ONTAP 9.2 | ONTAP 9.3 | ONTAP 9.4 - 9.7 | ONTAP 9.8及更高版本 |
---|---|---|---|---|---|---|
Volume |
是的。 |
是的。 |
是的。 |
是的。 |
是的。 |
是的。 |
文件 |
是的。 |
是的。 |
是的。 |
是的。 |
是的。 |
是的。 |
LUN |
是的。 |
是的。 |
是的。 |
是的。 |
是的。 |
是的。 |
SVM |
是的。 |
是的。 |
是的。 |
是的。 |
是的。 |
是的。 |
FlexGroup 卷 |
否 |
否 |
否 |
是的。 |
是的。 |
是的。 |
qtree* |
否 |
否 |
否 |
否 |
否 |
是的。 |
每个策略组具有多个工作负载 |
是的。 |
是的。 |
是的。 |
是的。 |
是的。 |
是的。 |
非共享策略组 |
否 |
否 |
否 |
否 |
是的。 |
是的。 |
从ONTAP 9.8开始、在启用了NFS的FlexVol和FlexGroup卷中的qtrees支持NFS访问。从 ONTAP 9.1.1 开始,启用了 SMB 的 FlexVol 和 FlexGroup 卷的 qtree 也支持 SMB 访问。
支持吞吐量下限的工作负载
下表按 ONTAP 9 版本显示了吞吐量下限的工作负载支持。不支持根卷,负载共享镜像和数据保护镜像。
工作负载支持—楼层 | ONTAP 9.2 | ONTAP 9.3 | ONTAP 9.4 - 9.7 | ONTAP 9.8 - 9.13.0 | ONTAP 9.13.1及更高版本 |
---|---|---|---|---|---|
Volume |
是的。 |
是的。 |
是的。 |
是的。 |
是的。 |
文件 |
否 |
是的。 |
是的。 |
是的。 |
是的。 |
LUN |
是的。 |
是的。 |
是的。 |
是的。 |
是的。 |
SVM |
否 |
否 |
否 |
否 |
是的。 |
FlexGroup 卷 |
否 |
否 |
是的。 |
是的。 |
是的。 |
qtree * |
否 |
否 |
否 |
是的。 |
是的。 |
每个策略组具有多个工作负载 |
否 |
否 |
是的。 |
是的。 |
是的。 |
非共享策略组 |
否 |
否 |
是的。 |
是的。 |
是的。 |
\*从ONTAP 9.8开始、在启用了NFS的FlexVol 和FlexGroup 卷中的qtrees支持NFS访问。从 ONTAP 9.1.1 开始,启用了 SMB 的 FlexVol 和 FlexGroup 卷的 qtree 也支持 SMB 访问。
自适应 QoS 支持的工作负载
下表显示了 ONTAP 9 版本对自适应 QoS 的工作负载支持。不支持根卷,负载共享镜像和数据保护镜像。
工作负载支持—自适应 QoS | ONTAP 9.3 | ONTAP 9.4 - 9.13.0 | ONTAP 9.13.1及更高版本 |
---|---|---|---|
Volume |
是的。 |
是的。 |
是的。 |
文件 |
否 |
是的。 |
是的。 |
LUN |
否 |
是的。 |
是的。 |
SVM |
否 |
否 |
是的。 |
FlexGroup 卷 |
否 |
是的。 |
是的。 |
每个策略组具有多个工作负载 |
是的。 |
是的。 |
是的。 |
非共享策略组 |
是的。 |
是的。 |
是的。 |
工作负载和策略组的最大数量
下表按 ONTAP 9 版本显示了工作负载和策略组的最大数量。
工作负载支持 | ONTAP 9.3及更早版本 | ONTAP 9.4及更高版本 |
---|---|---|
每个集群的最大工作负载数 |
12、000 |
40、000 |
每个节点的最大工作负载数 |
12、000 |
40、000 |
最大策略组数 |
12、000 |
12、000 |