All Products
Search
Document Center

Elastic High Performance Computing:GetAutoScaleConfig

Last Updated:Apr 09, 2024

Obtains the auto scaling settings of a cluster.

Debugging

OpenAPI Explorer automatically calculates the signature value. For your convenience, we recommend that you call this operation in OpenAPI Explorer.

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.
OperationAccess levelResource typeCondition keyAssociated operation
ehpc:GetAutoScaleConfigREAD
  • All Resources
    *
    none
none

Request parameters

ParameterTypeRequiredDescriptionExample
ClusterIdstringYes

The cluster ID.

ehpc-hz-FYUr32****

Response parameters

ParameterTypeDescriptionExample
object
MaxNodesInClusterinteger

The interval between two consecutive rounds of scale-in. Unit: minutes. Valid values: 2 to 10.

Note An interval may exist during multiple rounds of a scale-out task or between two consecutive scale-out tasks.
300
GrowTimeoutInMinutesinteger

The maximum hourly price of the compute nodes. The value can be accurate to three decimal places. The parameter takes effect only when SpotStrategy is set to SpotWithPriceLimit.

20
SpotStrategystring

The percentage of extra compute nodes. Valid values: 0 to 100.

If you need to add 100 compute nodes and the value of the ExtraNodesGrowRatio parameter is 2, 102 compute nodes are added.

SpotWithPriceLimit
EnableAutoShrinkboolean

The number of consecutive times that a compute node is idle during the resource scale-in check. Valid values: 2 to 5.

If the parameter is set to 3, a compute node is idle for more than three consecutive times. In this case, the node is released.

true
RequestIdstring

The image ID of the compute nodes in the queue.

04F0F334-1335-436C-A1D7-6C044FE73368
EnableAutoGrowboolean

The percentage of each round of scale-out. Valid values: 1 to 100.

If you set GrowRatio to 50, the scale-out has two rounds. Each round completes half of the scale-out.

true
ClusterTypestring

The ID of the cluster.

pbs
ExcludeNodesstring

The ID of the Alibaba Cloud account.

i-bp19lgqwxb4206t5****,i-bp1g4hvzs9pywrhb****
ShrinkIntervalInMinutesinteger

The auto scaling configuration of the queue.

Note If auto scaling is enabled for the cluster and queue at the same time, the queue settings prevail.
2
GrowIntervalInMinutesinteger

The image ID of the compute nodes in the queue.

2
SpotPriceLimitfloat

The type of the system disk. Valid values:

  • cloud_efficiency: ultra disk
  • cloud_ssd: SSD
  • cloud_essd: ESSD
  • cloud: basic disk
0.062
ExtraNodesGrowRatiointeger

The instance type of the compute nodes that were automatically added in the queue.

2
ShrinkIdleTimesinteger

The suffix of the queue name. You can query queues that have a specified suffix.

3
ImageIdstring

The preemption policy of the compute nodes. Valid values:

  • NoSpot: The compute nodes are pay-as-you-go instances.
  • SpotWithPriceLimit: The compute nodes are preemptible instances that have a user-defined maximum hourly price.
  • SpotAsPriceGo: The compute nodes are preemptible instances for which the market price at the time of purchase is used as the bid price.
m-bp10txryr4mhrrt1****
GrowRatiointeger

The minimum number of compute nodes that can be retained in a queue. Valid values: 0 to 50.

100
ClusterIdstring

The prefix of the queue name. You can query queues that have a specified prefix.

ehpc-hz-FYUr32****
Uidstring

The size of the system disk. Unit: GB. Valid values: 40 to 500.

129845258050****
Queuesobject []

The auto scaling configuration of the queue.

Note If auto scaling is enabled for the cluster and queue at the same time, the queue settings prevail.
QueueImageIdstring

The image ID of the compute node in the queue.

centos_7_06_64_20G_alibase_2019071****
SystemDiskCategorystring

The category of the system disk. Valid values:

  • cloud_efficiency: ultra disk.
  • cloud_ssd: standard SSD.
  • cloud_essd: enhanced SSD (ESSD).
  • cloud: basic disk.
cloud_efficiency
InstanceTypestring

The instance type of the compute nodes that are automatically added to the queue.

ecs.sn1ne.large
HostNameSuffixstring

The suffix of the queue name. You can query queues that have a specified suffix.

000
SpotStrategystring

The preemption policy of the compute nodes. Valid values:

  • NoSpot: The compute nodes are pay-as-you-go instances.
  • SpotWithPriceLimit: The compute nodes are preemptible instances that have a user-defined maximum hourly price.
  • SpotAsPriceGo: The compute nodes are preemptible instances for which the market price at the time of purchase is used as the bid price.
NoSpot
MinNodesInQueueinteger

The minimum number of compute nodes that can be retained in a queue. Valid values: 0 to 50.

10
HostNamePrefixstring

The prefix of the queue name. You can query queues that have a specified prefix.

compute
SystemDiskSizeinteger

The system disk size. Unit: GB. Valid values: 40 to 500.

40
MaxNodesInQueueinteger

The maximum number of compute nodes that can be added to a queue. Valid values: 0 to 500.

100
EnableAutoShrinkboolean

Indicates whether the queue enabled the auto scale-in. Valid values:

  • true
  • false
true
QueueNamestring

The name of the queue.

workq
EnableAutoGrowboolean

Indicates whether the queue enabled the auto scale-out. Valid values:

  • true
  • false
true
SystemDiskLevelstring

The performance level of the system disk. Valid values:

  • PL0: An ESSD can deliver up to 10,000 random read/write IOPS.
  • PL1: An ESSD can deliver up to 50,000 random read/write IOPS.
  • PL2: An ESSD can deliver up to 100,000 random read/write IOPS.
  • PL3: An ESSD can deliver up to 1,000,000 random read/write IOPS.
PL1
ResourceGroupIdstring

The ID of the resource group to which the compute nodes belong.

rg-acfmxp7uc24****
SpotPriceLimitfloat

The maximum hourly price of the compute nodes. The value can be accurate to three decimal places. This parameter is valid only when the SpotStrategy parameter is set to SpotWithPriceLimit.

0.062
InstanceTypesobject []

The specification information of the compute nodes.

HostNamePrefixstring

The prefix of the hostname. You can query compute nodes that have a specified prefix.

compute
VSwitchIdstring

The ID of the vSwitch.

vsw-bp1lfcjbfb099rrjn****
ZoneIdstring

The ID of the zone.

cn-hangzhou-b
SpotPriceLimitfloat

The maximum hourly price of the compute nodes. The value can be accurate to three decimal places. This parameter is valid only when the SpotStrategy parameter is set to SpotWithPriceLimit.

0.062
InstanceTypestring

The instance type of the compute nodes.

ecs.sn1ne.large
SpotStrategystring

The bidding method of the compute nodes. Valid values:

  • NoSpot: The compute nodes are pay-as-you-go instances.
  • SpotWithPriceLimit: The compute nodes are preemptible instances that have a user-defined maximum hourly price.
  • SpotAsPriceGo: The compute nodes are preemptible instances for which the market price at the time of purchase is used as the bid price.
NoSpot
SpotDurationinteger

The protection period of the preemptible instance. Unit: hours. Valid values: 0 to 1. Default value: 1. A value of 0 means no protection period is specified.

0
SpotInterruptionBehaviorstring

The interruption event of the preemptible instance. The value can only be Terminate, which specifies that the instance is released.

Terminate
DataDisksobject []

The list of data disks.

DataDiskCategorystring

The type of the data disk. Valid values:

  • cloud_efficiency: ultra disk.
  • cloud_ssd: standard SSD.
  • cloud_essd: ESSD.
  • cloud: basic disk.
cloud_efficiency
DataDiskSizeinteger

The capacity of the data disk. Unit: GB.

Valid values: 40 to 500.

40
DataDiskDeleteWithInstanceboolean

Indicates whether the data disk is released when the node is released. Valid values:

  • true
  • false
true
DataDiskPerformanceLevelstring

The performance level of the ESSD used as the data disk. The parameter is returned only when the DataDisks.N.DataDiskCategory parameter is set to cloud_essd. Valid values:

  • PL0: An ESSD can deliver up to 10,000 random read/write IOPS.
  • PL1: An ESSD can deliver up to 50,000 random read/write IOPS.
  • PL2: An ESSD can deliver up to 100,000 random read/write IOPS.
  • PL3: An ESSD can deliver up to 1,000,000 random read/write IOPS.
PL1
DataDiskEncryptedboolean

Indicates whether the data disk is encrypted. Valid values:

  • true
  • false
false
DataDiskKMSKeyIdstring

The ID of the KMS key that is used by the data disk.

0e478b7a-4262-4802-b8cb-00d3fb40826X
MaxNodesPerCyclelong

The maximum number of compute nodes that can be added in each round of scale-out. Valid values: 0 to 99.

Default value: 0.

20
MinNodesPerCyclelong

The minimum number of compute nodes that can be added in each round of scale-out. Valid values: 1 to 99

Default value: 1.

If the compute nodes that you want to add in a round is less than the minimum compute nodes that can be added, the value of this parameter is automatically changed to the number of compute nodes that you want to add. This ensures that compute nodes can be added as expected.

Note The configuration takes effect only for the minimum compute nodes that can be added in the current round.
5
AutoMinNodesPerCycleboolean

Indicates whether the minimum node number for each scale-out is automatically set. If this parameter is set to true, the minimum number of nodes for each scale-out is equal to the number of nodes required by the job. The maximum number is 99.

false
SortedByInventoryboolean

Indicates whether the instances are unordered. Valid values:

  • true
  • false
Note If this parameter is set to true, the system selects instance types in descending order based on the number of instances in stock during auto scaling.
false
ComputeEnableHtboolean

Specifies whether to enable hyper-threading for the ECS instance that is used as the compute node.

Note You can only disable hyper-threading for some instance types. The hyper-threading is enabled for ECS instances by default. For more information, see Specify and view CPU options.
true
DnsConfigstring

The configurations of DNS.

"{\"DnsType\":\"PrivateZone\",\"DnsName\":\"xxxxx\"}"

Examples

Sample success responses

JSONformat

{
  "MaxNodesInCluster": 300,
  "GrowTimeoutInMinutes": 20,
  "SpotStrategy": "SpotWithPriceLimit",
  "EnableAutoShrink": true,
  "RequestId": "04F0F334-1335-436C-A1D7-6C044FE73368",
  "EnableAutoGrow": true,
  "ClusterType": "pbs",
  "ExcludeNodes": "i-bp19lgqwxb4206t5****,i-bp1g4hvzs9pywrhb****",
  "ShrinkIntervalInMinutes": 2,
  "GrowIntervalInMinutes": 2,
  "SpotPriceLimit": 0.062,
  "ExtraNodesGrowRatio": 2,
  "ShrinkIdleTimes": 3,
  "ImageId": "m-bp10txryr4mhrrt1****",
  "GrowRatio": 100,
  "ClusterId": "ehpc-hz-FYUr32****",
  "Uid": "129845258050****",
  "Queues": {
    "QueueInfo": [
      {
        "QueueImageId": "centos_7_06_64_20G_alibase_2019071****",
        "SystemDiskCategory": "cloud_efficiency",
        "InstanceType": "ecs.sn1ne.large",
        "HostNameSuffix": "000",
        "SpotStrategy": "NoSpot",
        "MinNodesInQueue": 10,
        "HostNamePrefix": "compute",
        "SystemDiskSize": 40,
        "MaxNodesInQueue": 100,
        "EnableAutoShrink": true,
        "QueueName": "workq",
        "EnableAutoGrow": true,
        "SystemDiskLevel": "PL1",
        "ResourceGroupId": "rg-acfmxp7uc24****",
        "SpotPriceLimit": 0.062,
        "InstanceTypes": {
          "InstanceTypeInfo": [
            {
              "HostNamePrefix": "compute",
              "VSwitchId": "vsw-bp1lfcjbfb099rrjn****",
              "ZoneId": "cn-hangzhou-b",
              "SpotPriceLimit": 0.062,
              "InstanceType": "ecs.sn1ne.large",
              "SpotStrategy": "NoSpot",
              "SpotDuration": 0,
              "SpotInterruptionBehavior": "Terminate"
            }
          ]
        },
        "DataDisks": {
          "DataDisksInfo": [
            {
              "DataDiskCategory": "cloud_efficiency",
              "DataDiskSize": 40,
              "DataDiskDeleteWithInstance": true,
              "DataDiskPerformanceLevel": "PL1",
              "DataDiskEncrypted": false,
              "DataDiskKMSKeyId": "0e478b7a-4262-4802-b8cb-00d3fb40826X"
            }
          ]
        },
        "MaxNodesPerCycle": 20,
        "MinNodesPerCycle": 5,
        "AutoMinNodesPerCycle": false,
        "SortedByInventory": false
      }
    ]
  },
  "ComputeEnableHt": true,
  "DnsConfig": "\"{\\\"DnsType\\\":\\\"PrivateZone\\\",\\\"DnsName\\\":\\\"xxxxx\\\"}\""
}

Error codes

HTTP status codeError codeError messageDescription
400InvalidParamsThe specified parameter %s is invalid.The specified parameter %s is invalid.
403InvalidOptThe specified operation is invalid. Please try again later. If the problem still exists, submit a ticket.-
404ClusterNotFoundThe specified cluster does not exist.The specified instance does not exist.
406DbErrorA database service error occurred.Database request failed.
500UnknownErrorAn unknown error occurred.An unknown error occurred.
503ServiceUnavailableThe request has failed due to a temporary failure of the serverThe request has failed due to a temporary failure of the server.

For a list of error codes, visit the Service error codes.

Change history

Change timeSummary of changesOperation
2023-08-11The Error code has changed. The response structure of the API has changedsee changesets
Change itemChange content
Error CodesThe Error code has changed.
    delete Error Codes: 400
    delete Error Codes: 403
    delete Error Codes: 404
    delete Error Codes: 406
    delete Error Codes: 500
    delete Error Codes: 503
Output ParametersThe response structure of the API has changed.
2023-07-13The Error code has changed. The response structure of the API has changedsee changesets
Change itemChange content
Error CodesThe Error code has changed.
    delete Error Codes: 400
    delete Error Codes: 403
    delete Error Codes: 404
    delete Error Codes: 406
    delete Error Codes: 500
    delete Error Codes: 503
Output ParametersThe response structure of the API has changed.
2023-05-23The Error code has changed. The response structure of the API has changedsee changesets
Change itemChange content
Error CodesThe Error code has changed.
    delete Error Codes: 400
    delete Error Codes: 403
    delete Error Codes: 404
    delete Error Codes: 406
    delete Error Codes: 500
    delete Error Codes: 503
Output ParametersThe response structure of the API has changed.
2023-03-15The Error code has changed. The response structure of the API has changedsee changesets
Change itemChange content
Error CodesThe Error code has changed.
    delete Error Codes: 400
    delete Error Codes: 403
    delete Error Codes: 404
    delete Error Codes: 406
    delete Error Codes: 500
    delete Error Codes: 503
Output ParametersThe response structure of the API has changed.
2021-12-23The Error code has changed. The response structure of the API has changedsee changesets
Change itemChange content
Error CodesThe Error code has changed.
    delete Error Codes: 400
    delete Error Codes: 403
    delete Error Codes: 404
    delete Error Codes: 406
    delete Error Codes: 500
    delete Error Codes: 503
Output ParametersThe response structure of the API has changed.