./stor qos { A | assoc } { -n | --name } QOS_NAME { -o | --object } OBJECT --list list&<1-n>
此命令用来设置某个具体对象关联的QoS策略。
当同一对象多次设置QoS策略时,以最后一次操作为准。
注意
如果关联的对象类型为LUN,则卷的状态不能为Deleting、Deletefailed;如果关联的对象类型为storagepool或storagepoolforlun,则存储池的状态不能为Deleting。
说明
集群版中,卷最终的QoS限制由卷级 QoS 策略与存储池级 QoS 策略共同决定。两者同时存在时,系统取较小值生效。实际 QoS 限制 = min(卷级 QoS 限制,存储池级 QoS 限制)。存储池级 QoS 限制由池内所有卷共享。具体详见“集群版卷QoS限制生效原则”。
例如:卷lun1直接关联的QoS策略带宽限速为500MiB/s,存储池级QoS策略为300MiB/s,根据实际生效限制=min (500MiB/s, 300MiB/s)=300MiB/s。但存储池级QoS为池内所有卷的总带宽上限,非每个卷独享,所以最终的带宽可能小于300MiB/s。
集群版卷QoS限制生效原则:
卷级的QoS策略:
若卷已关联了QoS策略,则以该关联的QoS策略为准。
若卷未关联QoS策略:
当卷同时存在缓存存储池和存储池时,采用缓存存储池的“存储池内卷的默认QoS策略”;若缓存存储池未设置“存储池内卷的默认QoS策略”,则该卷无卷级QoS策略。
当卷仅存在存储池时,采用存储池的“存储池内卷的默认QoS策略”;若存储池未设置“存储池内卷的默认QoS策略”,则该卷无卷级QoS策略。
卷的存储池级QoS策略:
当卷同时有缓存存储池和存储池时,存储池级QoS策略以缓存存储池设置的QoS策略为准;若缓存存储池未设置QoS策略,则该卷无存储池级QoS策略。
当卷仅有存储池时,存储池级QoS策略以该存储池的QoS策略为准;若存储池未设置QoS策略,则该卷无存储池级QoS策略。
说明
存储池级别的QoS 限制由池内所有卷共享。
最终生效策略:综合卷级与存储池级 QoS 策略,最终生效规则如下:
卷级别的QoS策略 存储池级别的QoS策略 生效策略 有 无 卷级QoS策略 有 有 min(卷级QoS,存储池级QoS) 无 有 存储池级QoS 无 无 无生效的QoS策略
参数
| 参数 | 描述 |
|---|---|
| -n QOS_NAME 或 --name QOS_NAME | 指定QoS策略名称。 |
| -o OBJECT或--object OBJECT | 指定关联的对象类型。 取值:
|
| --list list&<1-n> | 对象列表。一次可以添加多个具体对象,以英文逗号(,)分开。 说明
|
示例
示例1
设置LUN关联的QoS策略。
[root@hblockserver CTYUN_HBlock_Plus_4.0.0_x64]# ./stor qos assoc -n qos1 -o LUN --list luna1,lunb1,lunb2
Associate QoS policy qos1 with LUN luna1,lunb1,lunb2 successfully.示例2
设置存储池关联的QoS策略(集群版)。
[root@hblockserver CTYUN_HBlock_Plus_4.0.0_x64]# ./stor qos assoc -n qos1 -o storagepool --list default,pool1
Associate QoS policy qos1 with storage pool default,pool1 successfully.示例3
设置存储池内卷的默认QoS策略(集群版)。
[root@hblockserver CTYUN_HBlock_Plus_4.0.0_x64]# ./stor qos assoc -n qos1 -o storagepoolforlun --list default
Associate QoS policy qos1 with storage pool default for setting the default QoS policy for LUNs in the pool successfully.