Modifies a scaling configuration.
Description
If you want to change the name of a scaling configuration in a scaling group, make sure that the new name is unique within the scaling group.
Debugging
Request parameters
Parameter | Type | Required | Example | Description |
---|---|---|---|---|
Action | String | Yes | ModifyScalingConfiguration |
The operation that you want to perform. Set the value to ModifyScalingConfiguration. |
ScalingConfigurationId | String | Yes | asc-bp16har3jpj6fjbx**** |
The ID of the scaling configuration that you want to modify. |
IoOptimized | String | No | none |
Specifies whether the instance that you want to create is an I/O optimized instance. Valid values:
|
SpotStrategy | String | No | NoSpot |
The preemption policy that you want to apply to pay-as-you-go instances and preemptible instances. Valid values:
|
ScalingConfigurationName | String | No | test-modify |
The name of the scaling configuration. The name must be 2 to 64 characters in length and can contain letters, digits, underscores (_), hyphens (-), and periods (.). It must start with a letter or a digit. The name of the scaling configuration must be unique within a scaling group in a region. If you do not specify this parameter, the value of ScalingConfigurationId is used. |
InstanceName | String | No | inst**** |
The name of the Elastic Compute Service (ECS) instance that is automatically created based on the scaling configuration. |
HostName | String | No | hos**** |
The hostname of the ECS instance. The hostname cannot start or end with a period (.) or a hyphen (-). The hostname cannot contain consecutive periods (.) or hyphens (-). Naming conventions for different types of instances:
|
ImageId | String | No | centos6u5_64_20G_aliaegis_2014****.vhd |
The ID of the image that is used by Auto Scaling to automatically create instances. Note If the image that is specified in the scaling configuration contains a system disk
and data disks, the data that is stored in the data disks is cleared after you modify
the image.
|
ImageName | String | No | suse11sp3_64_20G_aliaegis_2015****.vhd |
The name of the image. The name must be unique within a region. If you specify the ImageId parameter, the ImageName parameter is ignored. Alibaba Cloud Marketplace images cannot be specified by using ImageName. |
Cpu | Integer | No | 2 |
The number of vCPUs. You can specify the number of vCPUs and memory size to determine the range of instance types. For example, you can set CPU to 2 and Memory to 16 to specify instance types that have 2 vCPUs and 16 GiB of memory. Auto Scaling determines a set of available instance types based on factors such as I/O optimization requirements and zones. Then, Auto Scaling preferentially creates instances of the instance type that is provided at the lowest unit price. Note You can specify CPU and memory specifications to create ECS instances only if Scaling
Policy is set to Cost Optimization Policy and no instance type is specified in the
scaling configuration.
|
Memory | Integer | No | 16 |
The memory size. You can specify the number of vCPUs and memory size to determine the range of instance types. For example, you can set CPU to 2 and Memory to 16 to specify instance types that have 2 vCPUs and 16 GiB of memory. Auto Scaling determines a set of available instance types based on factors such as I/O optimization requirements and zones. Then, Auto Scaling preferentially creates instances of the instance type that is provided at the lowest unit price. Note You can specify CPU and memory specifications to create ECS instances only if Scaling
Policy is set to Cost Optimization Policy and no instance type is specified in the
scaling configuration.
|
InternetChargeType | String | No | PayByBandwidth |
The billing method for network usage. Valid values:
|
InternetMaxBandwidthOut | Integer | No | 50 |
The maximum outbound public bandwidth. Unit: Mbit/s. Valid values:
|
SystemDisk.Category | String | No | cloud_efficiency |
The category of the system disk. Valid values:
You cannot specify the SystemDisk.Category and |
SystemDisk.Size | Integer | No | 50 |
The size of the system disk. Unit: GiB. Valid values: 20 to 500. The value of SystemDisk.Size must be greater than or equal to max{20, ImageSize}. |
SystemDisk.DiskName | String | No | cloud_ssdSystem |
The name of the system disk. The name must be 2 to 128 characters in length. The name
must start with a letter but cannot start with |
SystemDisk.Description | String | No | Test system disk. |
The description of the system disk. The description must be 2 to 256 characters in
length. The description can contain letters but cannot start with |
SystemDisk.AutoSnapshotPolicyId | String | No | sp-bp12m37ccmxvbmi5**** |
The ID of the automatic snapshot policy that you want to apply to the system disk. |
SystemDisk.PerformanceLevel | String | No | PL0 |
The performance level of the system disk that is an ESSD. Valid values:
Note For more information about how to select ESSD performance levels, see ESSDs.
|
LoadBalancerWeight | Integer | No | 50 |
The weight of the ECS instance as a backend server. Valid values: 1 to 100. |
UserData | String | No | echo hello ecs! |
The user data of the ECS instance. The data must be encoded in Base64. The maximum size of the raw data before encoding is 16 KB. |
KeyPairName | String | No | KeyPair_Name |
The name of the key pair that is used to log on to an ECS instance.
|
RamRoleName | String | No | RamRoleTest |
The name of the RAM role that is associated with the ECS instance. The name is provided and maintained by Resource Access Management (RAM). You can call the ListRoles operation to query the available RAM roles. For more information about how to create a RAM role, see CreateRole. |
PasswordInherit | Boolean | No | false |
Specifies whether to use the password preset in the image. Before you use this parameter, make sure that a password is configured for the image. |
Tags | String | No | {"key1":"value1","key2":"value2", ... "key5":"value5"} |
The tags of the ECS instance. The tags must be specified in the key-value pair format. You can specify up to 20 tags. The following rules apply to tag keys and tag values:
|
DeploymentSetId | String | No | ds-bp13v7bjnj9gis**** |
The ID of the deployment set to which the ECS instance belongs. |
SecurityGroupId | String | No | sg-F876F**** |
The ID of the security group to which the ECS instance belongs. The ECS instances that belong to the same security group can access each other. |
Override | Boolean | No | true |
Specifies whether to overwrite existing data. Valid values:
|
ResourceGroupId | String | No | abcd1234abcd**** |
The ID of the resource group to which the ECS instance belongs. |
HpcClusterId | String | No | hpc-clusterid |
The ID of the Elastic High Performance Computing (E-HPC) cluster to which the ECS instance belongs. |
InstanceDescription | String | No | Test instance. |
The description of the ECS instance. The description must be 2 to 256 characters in
length. The description can contain letters but cannot start with |
Ipv6AddressCount | Integer | No | 1 |
The number of randomly generated IPv6 addresses that you want to allocate to the elastic network interface (ENI). |
CreditSpecification | String | No | Standard |
The performance mode of the burstable instance. Valid values:
|
ImageFamily | String | No | hangzhou-daily-update |
The name of the image family. You can specify this parameter to obtain the latest custom images that are available in the specified image family. You can use the images to create instances. If you specify the ImageId parameter, you cannot specify the ImageFamily parameter. |
ZoneId | String | No | cn-hangzhou-g |
The ID of the zone where the ECS instance resides. |
DedicatedHostId | String | No | dh-bp67acfmxazb4p**** |
The ID of the dedicated host on which the ECS instance is created. Preemptible instances cannot be created on dedicated hosts. If you specify the DedicatedHostId parameter, the SpotStrategy and SpotPriceLimit parameters are ignored. You can call the DescribeDedicatedHosts operation to query dedicated host IDs. |
Affinity | String | No | default |
Specifies whether to associate the instance on a dedicated host with the dedicated host. Valid values:
|
Tenancy | String | No | default |
Specifies whether to create the instance on a dedicated host. Valid values:
|
PrivatePoolOptions.MatchCriteria | String | No | Open |
The type of the private pool. A private pool is generated after an elasticity assurance or a capacity reservation takes effect. You can select a private pool when you create instances. Valid values:
|
PrivatePoolOptions.Id | String | No | eap-bp67acfmxazb4**** |
The ID of the private pool. The ID of a private pool is the same as that of the elasticity assurance or capacity reservation for which the private pool is generated. |
SpotDuration | Integer | No | 1 |
The retention period of the preemptible instance. Unit: hours. Valid values: 0, 1, 2, 3, 4, 5, and 6.
|
SpotInterruptionBehavior | String | No | Terminate |
The interruption mode of the preemptible instance. Default value: Terminate. Set the value to Terminate. In this case, the instance is directly released. |
SystemDisk.Encrypted | Boolean | No | false |
Specifies whether to encrypt the system disk. Valid values:
Default value: false. |
SystemDisk.KMSKeyId | String | No | 0e478b7a-4262-4802-b8cb-00d3fb40**** |
The ID of the Key Management Service (KMS) key that is used to encrypt the system disk. |
SystemDisk.EncryptAlgorithm | String | No | AES-256 |
The encryption algorithm that is used to encrypt the system disk. Valid values:
Default value: AES-256. |
DataDisk.N.PerformanceLevel | String | No | PL1 |
The performance level of data disk N that is an ESSD. If you set the DataDisk.N.Category parameter to cloud_essd, the N value must be the same as the N value in DataDisk.N.Category. Valid values:
Note For more information about how to select ESSD performance levels, see ESSDs.
|
DataDisk.N.AutoSnapshotPolicyId | String | No | sp-bp19nq9enxqkomib**** |
The ID of the automatic snapshot policy that you want to apply to data disk N. Valid values of N: 1 to 16. |
DataDisk.N.Encrypted | String | No | false |
Specifies whether to encrypt data disk N. Valid values of N: 1 to 16. Valid values:
|
DataDisk.N.Description | String | No | Test data disk. |
The description of data disk N. Valid values of N: 1 to 16. The description must be
2 to 256 characters in length. The description can contain letters but cannot start
with |
DataDisk.N.SnapshotId | String | No | s-snapshot**** |
The ID of the snapshot that you want to use to create data disk N. Valid values of N: 1 to 16. If you specify this parameter, the DataDisk.N.Size parameter is ignored. The size of the disk is the same as the size of the specified snapshot. If you specify a snapshot that is created on or before July 15, 2013, the operation fails and the system returns InvalidSnapshot.TooOld. |
DataDisk.N.Categories.N | String | No | cloud |
Category N of data disk N. The first N in DataDisk.N.Categories.N represents the serial number of the data disk. Valid values of N: 1 to 16. The second N in DataDisk.N.Categories.N represents the serial number of the data disk category. Valid values of N: 1 to 4. You can specify up to four data disk categories in a scaling configuration. A smaller value of N specifies a higher priority. If Auto Scaling cannot create data disks of the disk category that has the highest priority, it creates disks of the disk category that has the next highest priority. Valid values:
Note You cannot specify the DataDisk.N.Categories.N and
DataDisk.N.Category parameters at the same time.
|
DataDisk.N.Size | Integer | No | 100 |
The size of data disk N. Unit: GiB. Valid values of N: 1 to 16. Valid values:
The value of DataDisk.N.Size must be greater than or equal to the size of the snapshot that is specified by SnapshotId. |
DataDisk.N.Device | String | No | /dev/xvdb |
The mount target of data disk N. Valid values of N: 1 to 16. If you do not specify this parameter, the system automatically assigns a mount target when you create the ECS instance. The name of the mount target ranges from /dev/xvdb to /dev/xvdz. |
DataDisk.N.DiskName | String | No | cloud_ssdData |
The name of data disk N. Valid values of N: 1 to 16. The name must be 2 to 128 characters
in length. The name must start with a letter but cannot start with |
DataDisk.N.Category | String | No | cloud_ssd |
The category of data disk N. Valid values of N: 1 to 16. Valid values:
You cannot specify the DataDisk.N.Category and
|
DataDisk.N.DeleteWithInstance | Boolean | No | true |
Specifies whether to release data disk N if the instance to which data disk N is attached is released. Valid values of N: 1 to 16. Valid values:
This parameter is available only for independent disks whose DataDisk.N.Category parameter is set to cloud, cloud_efficiency, cloud_ssd, or cloud_essd. If you specify this parameter for other disks, an error is reported. |
DataDisk.N.KMSKeyId | String | No | 0e478b7a-4262-4802-b8cb-00d3fb40**** |
The ID of the KMS key of data disk N. Valid values of N: 1 to 16. |
SpotPriceLimit.N.PriceLimit | Float | No | 0.125 |
The price limit of preemptible instance N. Valid values of N: 1 to 10. This parameter is available only if you set the SpotStrategy parameter to SpotWithPriceLimit. |
SpotPriceLimit.N.InstanceType | String | No | ecs.g6.large |
The instance type of preemptible instance N. Valid values of N: 1 to 10. This parameter is available only if you set SpotStrategy to SpotWithPriceLimit. |
InstanceTypes.N | String | No | ecs.g6.large |
Instance type N of ECS instances. If you specify this parameter, the InstanceType parameter is ignored. You can specify up to 10 instance types for a scaling configuration. Valid values of N: 1 to 10. A smaller value of N specifies a higher priority. Auto Scaling creates instances based on the priorities of the instance types. If Auto Scaling cannot create instances of the instance type that has the highest priority, it creates instances of the instance type that has the next highest priority. |
InstanceTypeOverride.N.InstanceType | String | No | ecs.c5.xlarge |
If you want to specify the capacity of instance types in the scaling configuration, you must specify the InstanceTypeOverride.N.InstanceType and InstanceTypeOverride.N.WeightedCapacity parameters. This parameter is used to specify the instance type. You can specify N values for this parameter. You can use this parameter together with the InstanceTypeOverride.N.WeightedCapacity parameter to specify weights for multiple instance types. Valid values of N: 1 to 10. Note You cannot specify the InstanceTypeOverride.N.InstanceType and InstanceTypes parameters
at the same time.
For information about valid values of InstanceType in InstanceTypeOverride.N.InstanceType, see Instance families. |
InstanceTypeOverride.N.WeightedCapacity | Integer | No | 4 |
If you want to specify the capacity of instance types in the scaling configuration, you must specify the InstanceTypeOverride.N.InstanceType and InstanceTypeOverride.N.WeightedCapacity parameters. The two parameters have a one-to-one correspondence. The value of N in the two parameters must be the same. This parameter specifies the weight of the instance type. The weight specifies the capacity of a single instance of the specified instance type in the scaling group. A higher weight specifies that a smaller number of instances of the specified instance type are required to meet the expected capacity. Performance metrics such as the number of vCPUs and the memory size of each instance type may vary. You can specify different weights for different instance types based on your business requirements. Example:
To meet the expected capacity, Auto Scaling creates two ecs.c5.xlarge instances. Note The capacity of the scaling group cannot exceed the sum of the maximum capacity that
is specified by MaxSize and the maximum weight of the instance type.
Valid values of WeightedCapacity in InstanceTypeOverride.N.WeightedCapacity: 1 to 500. |
SecurityGroupIds.N | String | No | sg-bp18kz60mefs**** |
The ID of the security group. |
InstancePatternInfo.N.Cores | Integer | No | 2 |
The number of vCPUs that are specified for an instance type in the intelligent configuration mode. This parameter is used to filter the available instance types that meet the specified criteria. For more information, see Instance families. Valid values of N: 1 to 10. Take note of the following items:
|
InstancePatternInfo.N.InstanceFamilyLevel | String | No | EnterpriseLevel |
The instance family level in intelligent configuration mode. This parameter is used to filter the available instance types that meet the specified criteria. Valid values:
Valid values of N: 1 to 10. |
InstancePatternInfo.N.MaxPrice | Float | No | 2 |
The maximum hourly price for a pay-as-you-go instance or a preemptible instance in intelligent configuration mode. This parameter is used to filter the available instance types that meet the specified criteria. Valid values of N: 1 to 10. Note If you set SpotStrategy to SpotWithPriceLimit, you must specify this parameter. Otherwise,
you do not need to specify this parameter.
|
InstancePatternInfo.N.Memory | Float | No | 4 |
The memory size that is specified for an instance type in intelligent configuration mode. Unit: GiB. This parameter is used to filter the available instance types that meet the specified criteria. For more information, see Instance families. Valid values of N: 1 to 10. |
SystemDiskCategories.N | String | No | cloud |
Category N of the system disk. Valid values of N: 1 to 4. You can specify up to four system disk categories in a scaling configuration. A smaller value of N specifies a higher priority. If Auto Scaling cannot create system disks of the disk category that has the highest priority, it creates disks of the disk category that has the next highest priority. Valid values:
Note You cannot specify the SystemDiskCategories.N and
SystemDisk.Category parameters at the same time.
|
Response parameters
Parameter | Type | Example | Description |
---|---|---|---|
RequestId | String | 473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E |
The ID of the request. |
Examples
Sample requests
http(s)://ess.aliyuncs.com/?Action=ModifyScalingConfiguration
&ScalingConfigurationId=asc-bp16har3jpj6fjbx****
&IoOptimized=none
&SpotStrategy=NoSpot
&ScalingConfigurationName=test-modify
&InstanceName=inst****
&HostName=hos****
&ImageId=centos6u5_64_20G_aliaegis_2014****.vhd
&ImageName=suse11sp3_64_20G_aliaegis_2015****.vhd
&Cpu=2
&Memory=16
&InternetChargeType=PayByBandwidth
&InternetMaxBandwidthOut=50
&SystemDisk.Category=cloud_efficiency
&SystemDisk.Size=50
&SystemDisk.DiskName=cloud_ssdSystem
&SystemDisk.Description=Test system disk.
&SystemDisk.AutoSnapshotPolicyId=sp-bp12m37ccmxvbmi5****
&SystemDisk.PerformanceLevel=PL0
&LoadBalancerWeight=50
&UserData=echo hello ecs!
&KeyPairName=KeyPair_Name
&RamRoleName=RamRoleTest
&PasswordInherit=false
&Tags={"key1":"value1","key2":"value2", ... "key5":"value5"}
&DeploymentSetId=ds-bp13v7bjnj9gis****
&SecurityGroupId=sg-F876F****
&Override=true
&ResourceGroupId=abcd1234abcd****
&HpcClusterId=hpc-clusterid
&InstanceDescription=Test instance.
&Ipv6AddressCount=1
&CreditSpecification=Standard
&ImageFamily=hangzhou-daily-update
&ZoneId=cn-hangzhou-g
&DedicatedHostId=dh-bp67acfmxazb4p****
&Affinity=default
&Tenancy=default
&PrivatePoolOptions.MatchCriteria=Open
&PrivatePoolOptions.Id=eap-bp67acfmxazb4****
&SpotDuration=1
&SpotInterruptionBehavior=Terminate
&DataDisk=[{"PerformanceLevel":"PL1","AutoSnapshotPolicyId":"sp-bp19nq9enxqkomib****","Encrypted":"false","Description":"Test data disk.","SnapshotId":"s-snapshot****","Categories":["cloud"],"Size":100,"Device":"/dev/xvdb","DiskName":"cloud_ssdData","Category":"cloud_ssd","DeleteWithInstance":true,"KMSKeyId":"0e478b7a-4262-4802-b8cb-00d3fb40****"}]
&SpotPriceLimit=[{"PriceLimit":0.125,"InstanceType":"ecs.g6.large"}]
&InstanceTypes=["ecs.g6.large"]
&InstanceTypeOverride=[{"InstanceType":"ecs.c5.xlarge","WeightedCapacity":4}]
&SecurityGroupIds=["sg-bp18kz60mefs****"]
&InstancePatternInfo=[{"Cores":2,"InstanceFamilyLevel":"EnterpriseLevel","MaxPrice":2.0,"Memory":4.0}]
&SystemDiskCategories=["cloud"]
&SystemDisk.Encrypted=false
&SystemDisk.KMSKeyId=0e478b7a-4262-4802-b8cb-00d3fb40****
&SystemDisk.EncryptAlgorithm=AES-256
&<Common request parameters>
Sample success responses
XML
format
HTTP/1.1 200 OK
Content-Type:application/xml
<ModifyScalingConfigurationResponse>
<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>
</ModifyScalingConfigurationResponse>
JSON
format
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E"
}
Error codes
For a list of error codes, visit the API Error Center.
HTTP status code |
Error code |
Error message |
Description |
---|---|---|---|
403 |
Forbidden.Unauthorized |
A required authorization for the specified action is not supplied. |
The error message returned because you are not authorized to perform the operation. |
404 |
InvalidDataDiskSnapshotId.NotFound |
Snapshot "XXX" does not exist. |
The error message returned because the specified snapshot does not exist. |
400 |
InvalidDataDiskSnapshotId.SizeNotSupported |
The capacity of snapshot "XXX" exceeds the size limit of the specified disk category. |
The error message returned because the size of the specified snapshot exceeds the maximum size allowed for the specified disk. |
404 |
InvalidImageId.NotFound |
The specified image does not exist. |
The error message returned because the specified image does not exist. |
400 |
InvalidKeyPairName.NotFound |
The specified KeyPairName does not exist in our records. |
The error message returned because the name of the specified key pair does not exist. |
400 |
InvalidNetworkType.ForRAMRole |
RAMRole can’t be used For classic instance. |
The error message returned because the network type of the instance is classic. The classic network does not support RamRoleName. |
400 |
InvalidParamter |
The specified value of parameter is not valid. |
The error message returned because the value that you specified for a parameter is invalid. |
400 |
InvalidScalingConfigurationName.Duplicate |
The specified value of parameter is duplicated. |
The error message returned because the specified scaling configuration name already exists. |
400 |
InvalidSecurityGroupId.IncorrectNetworkType |
The network type of specified Security Group does not support this action. |
The error message returned because the network type of the specified security group is different from the network type of the scaling group. |
400 |
InvalidSecurityGroupId.VPCMismatch |
The specified security group and the specified virtual switch are not in the same VPC. |
The error message returned because the specified security group and vSwitch are not in the same VPC. |
400 |
InvalidTags.KeyValue |
The specified tags key/value cannot be empty. |
The error message returned because no value is specified for the Tags parameter. |
400 |
InvalidTags.ListSize |
The specified tags list size cannot be more than "20". |
The error message returned because the maximum number of tags that can be specified for the instance is reached. |
400 |
InvalidUserData.Base64FormatInvalid |
The specified parameter UserData must be base64 encoded. |
The error message returned because the specified user data is not encoded in Base64. |
400 |
InvalidUserData.SizeExceeded |
The specified parameter UserData exceeds the size. |
The error message returned because the size of user data exceeds the upper limit. |