The following request changes the QoS settings of the volume for which the volume ID is specified.
Execution permission
Storage Administrator (System Resource Management)
Request line
PATCH base-URL/simple/v1/objects/volumes/object-ID/qos-setting
Request message
- Object ID
-
Specify the id value obtained by getting information about volumes.
Attribute
Type
Description
id
int
(Required) Volume ID
- Body
You cannot specify both the threshold attribute and the alertSetting attribute at the same time.
Only the specified attributes are changed.
The following is an example of an API request to change the QoS settings (the threshold attribute):
- isUpperIopsEnabled: true
- upperIops (upper limit on the IOPS): 2000
- isLowerIopsEnabled: true
- lowerIops (lower limit on the IOPS): 1000
- isResponsePriorityEnabled: true
- responsePriority (priority level of the I/O processing): 3 (High)
{ "threshold": { "isUpperIopsEnabled": true, "upperIops": 2000, "isLowerIopsEnabled": true, "lowerIops": 1000, "isResponsePriorityEnabled": true, "responsePriority": 3 } }
The following is an example of an API request to change the alert settings (the alertSetting attribute):
- isUpperAlertEnabled: true
- upperAlertAllowableTime (Amount of time to wait before issuing an alert): 10
- isLowerAlertEnabled: true
- lowerAlertAllowableTime (Amount of time to wait before issuing an alert): 20
- isResponseAlertEnabled: true
- responseAlertAllowableTime (Amount of time to wait before issuing an alert): 30
{ "alertSetting": { "isUpperAlertEnabled": true, "upperAlertAllowableTime": 10, "isLowerAlertEnabled": true, "lowerAlertAllowableTime": 20, "isResponseAlertEnabled": true, "responseAlertAllowableTime": 30 } }
Attribute
Type
Description
threshold
object
Information about the QoS settings of the volume
- isUpperIopsEnabled (boolean)
(Optional) Specify whether to enable the upper limit on the IOPS.
- true: Enabled
- false: Disabled
If you specify true for this attribute, you must also specify the upperIops attribute.
- upperIops (int)
(Optional) Specify the upper limit on the IOPS.
Specify an integer in the range from 100 to 2147483647.
If you specify this attribute, you must specify true for the isUpperIopsEnabled attribute.
- isUpperTransferRateEnabled
(boolean)
(Optional) Specify whether to enable the upper limit on the amount of data that can be transferred.
- true: Enabled
- false: Disabled
If you specify true for this attribute, you must also specify the upperTransferRate attribute.
- upperTransferRate (int)
(Optional) Specify the upper limit on the amount of data that can be transferred (in MiBps).
Specify an integer in the range from 1 to 2097151.
If you specify this attribute, you must specify true for the isUpperTransferRateEnabled attribute.
- isLowerIopsEnabled (boolean)
(Optional) Specify whether to enable the lower limit on the IOPS.
- true: Enabled
- false: Disabled
If you specify true for this attribute, you must also specify the lowerIops attribute.
- lowerIops (int)
(Optional) Specify the lower limit on the IOPS.
Specify an integer in the range from 10 to 2147483647.
If you specify this attribute, you must specify true for the isLowerIopsEnabled attribute.
-
isLowerTransferRateEnabled (boolean)
(Optional) Specify whether to enable the lower limit on the amount of data that can be transferred.
- true: Enabled
- false: Disabled
If you specify this attribute, you must specify true for the lowerTransferRate attribute.
- lowerTransferRate (int)
(Optional) Specify the lower limit on the amount of data that can be transferred (in MiBps).
Specify an integer in the range from 1 to 2097151.
If you specify this attribute, you must specify true for the isLowerTransferRateEnabled attribute.
- isResponsePriorityEnabled (boolean)
(Optional) Specify whether to enable the priority level of the I/O processing.
- true: Enabled
- false: Disabled
If you specify this attribute, you must specify true for the responsePriority attribute.
- responsePriority (int)
(Optional) Specify the priority level of the I/O processing.
Specify an integer in the range from 1 to 3.
A larger value indicates a higher level of priority.
If you specify this attribute, the target response time will be automatically set.
If you specify this attribute, you must specify true for the isResponsePriorityEnabled attribute.
alertSetting
object
Information about the alert settings of the volume
- isUpperAlertEnabled (boolean)
(Optional) Specify whether to issue an alert when the IOPS or the amount of data transferred not achieve the upper limit for a continuous period of time.
- true: Enabled
- false: Disabled
You can specify this attribute only if an upper limit on the IOPS or on the amount of data that can be transferred is set.
If you specify this attribute, you must specify true for the upperAlertAllowableTime attribute.
- upperAlertAllowableTime (int)
(Optional) Specify the amount of time to wait before issuing an alert when the IOPS or the amount of data transferred per second not achieve the upper limit for a continuous period of time (in seconds).
Specify an integer in the range from 1 to 600.
If you specify this attribute, you must specify true for the isUpperAlertEnabled attribute.
- isLowerAlertEnabled (boolean)
(Optional) Specify whether to issue an alert when the IOPS or the amount of data transferred falls below the lower limit for a continuous period of time.
- true: Enabled
- false: Disabled
You can specify this attribute only if a lower limit on the IOPS or on the amount of data that can be transferred is set.
If you specify this attribute, you must specify true for the lowerAlertAllowableTime attribute.
- lowerAlertAllowableTime (int)
(Optional) Specify the amount of time to wait before issuing an alert when the IOPS or the amount of data transferred per second falls below the lower limit for a continuous period of time (in seconds).
Specify an integer in the range from 1 to 600.
If you specify this attribute, you must specify true for the isLowerAlertEnabled attribute.
- isResponseAlertEnabled (boolean)
(Optional) Specify whether to issue an alert when the average response time not achieve the target response time for a continuous period of time.
- true: Enabled
- false: Disabled
You can specify this attribute only if a target average response time is set.
If you specify this attribute, you must specify true for the responseAlertAllowableTime attribute.
- responseAlertAllowableTime (int)
(Optional) Specify the amount of time to wait before issuing an alert when the response time not achieve the target response time (in seconds).
Specify an integer in the range from 1 to 600.
If you specify this attribute, you must specify true for the isResponseAlertEnabled attribute.
Response message
- Body
-
Attribute
Type
Description
statusResource
string
URL for referencing information about the volume for which QoS settings were changed
Note:Execute the API function for obtaining information about the status of the API function that performs asynchronous processing. For details, see Getting status information about an API function that performs asynchronous processing.
Status codes
HTTP status codesCoding example
curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session b74777a3f9f04ea8bd8f09847fac48d3" -X PATCH --data-binary @./InputParameters.json https://192.0.2.100/ConfigurationManager/simple/v1/objects/volumes/100