Starts an instance refresh task. If you want to batch update instance images, modify information in scaling configurations, and scale out instances based on new configurations, you can call the StartInstanceRefresh.html operation. After you start an instance refresh task, Auto Scaling gradually creates new instances from the desired configurations provided by the task to replace old instances. When all replacements are complete, the configurations of instances in your scaling group perfectly match your expectations.
Operation description
- Only one instance refresh task can be executed at a time in a scaling group.
- Instance refresh tasks are currently supported only by scaling groups of the Elastic Compute Service (ECS) type and using the priority policy. Scaling groups that use the number of vCPUs as the method to calculate the group capacity or scaling groups whose instance reclaim mode is Economical Mode or Forcibly Recycle do not support instance refresh tasks.
- During the execution of an instance refresh task, scaling events can be complete as expected. Take note that instances that are scaled out use the desired configurations provided by the instance refresh task.
- Instance refresh tasks does not take effect on instances that are manually added and instances that are in the Standby and Protected states.
Debugging
Authorization information
The following table shows the authorization information corresponding to the API. The authorization information can be used in the Action
policy element to grant a RAM user or RAM role the permissions to call this API operation. Description:
- Operation: the value that you can use in the Action element to specify the operation on a resource.
- Access level: the access level of each operation. The levels are read, write, and list.
- Resource type: the type of the resource on which you can authorize the RAM user or the RAM role to perform the operation. Take note of the following items:
- The required resource types are displayed in bold characters.
- If the permissions cannot be granted at the resource level,
All Resources
is used in the Resource type column of the operation.
- Condition Key: the condition key that is defined by the cloud service.
- Associated operation: other operations that the RAM user or the RAM role must have permissions to perform to complete the operation. To complete the operation, the RAM user or the RAM role must have the permissions to perform the associated operations.
Operation | Access level | Resource type | Condition key | Associated operation |
---|---|---|---|---|
ess:StartInstanceRefresh | update |
|
| none |
Request parameters
Parameter | Type | Required | Description | Example |
---|---|---|---|---|
ScalingGroupId | string | Yes | The ID of the scaling group. | asg-bp18p2yfxow2dloq**** |
ClientToken | string | No | The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The token can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see "How to ensure idempotence". | 123e4567-e89b-12d3-a456-42665544**** |
RegionId | string | Yes | The region ID of the scaling group. | cn-hangzhou |
MinHealthyPercentage | integer | No | The ratio of instances that are in the In Service state to all instances in the scaling group during instance refresh. Valid values: 0 to 100. Default value: 80. | 80 |
MaxHealthyPercentage | integer | No | The ratio of instances that can exceed the upper limit of the scaling group capacity to all instances in the scaling group during instance refresh. Valid values: 100 to 200. Default value: 120. Note
If you set MinHealthyPercentage and MaxHealthyPercentage to 100, Auto Scaling refreshes the configurations of one instance each time the instance refresh task starts.
| 100 |
DesiredConfiguration | object | No | The desired configurations of the instance refresh task. Note
| |
ImageId | string | No | The image ID. Note
| m-2ze8cqacj7opnf*** |
ScalingConfigurationId | string | No | The ID of the scaling configuration. Note
After the instance refresh task is complete, the scaling group uses the scaling configuration specified by this parameter.
| asc-2zed7lqn4ts4**** |
Response parameters
Examples
Sample success responses
JSON
format
{
"RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****",
"InstanceRefreshTaskId": "ir-a12ds234fasd*****"
}
Error codes
For a list of error codes, visit the Service error codes.