Updated on 2024-09-11 GMT+08:00

Querying Auto Scaling Policies

Function

This API is used to query auto scaling policies. Before calling this API:

URI

GET /v3/{project_id}/instances/{instance_id}/auto-scaling/policy

Table 1 URI parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Explanation:

Project ID of a tenant in a region.

To obtain this value, see Obtaining a Project ID.

Constraints:

None

Value range:

The value can contain 32 characters. Only letters and digits are allowed.

Default value:

None

instance_id

Yes

String

Explanation:

Instance ID, which uniquely identifies an instance.

Constraints:

None

Value range:

The value can contain 36 characters with a suffix of in07. Only letters and digits are allowed.

Default value:

None

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

Explanation:

User token.

It can be obtained by calling the IAM API used to obtain a user token.

The value of X-Subject-Token in the response header is the token value.

Constraints:

None

Value range:

None

Default value:

None

Content-Type

Yes

String

Explanation:

Content type.

Constraints:

None

Value range:

application/json

Default value:

None

X-Language

No

String

Explanation:

Request language type.

Constraints:

None

Value range:

  • en-us
  • zh-cn

Default value:

en-us

Response Parameters

Status code: 200

Table 3 Response body parameters

Parameter

Type

Description

id

String

Explanation:

ID of an auto scaling policy.

Value range:

None

instance_id

String

Explanation:

Instance ID.

Value range:

The value can contain 36 characters with a suffix of in07. Only letters and digits are allowed.

instance_name

String

Explanation:

Instance name.

Value range:

The name must start with a letter and consist of 4 to 64 characters. Only letters (case-sensitive), digits, hyphens (-), and underscores (_) are allowed.

status

String

Explanation:

Whether auto scaling is enabled.

Value range:

  • ON: enabled
  • OFF: disabled

monitor_cycle

Integer

Explanation:

Observation period, in seconds. During the entire observation period, if the average CPU usage is greater than or equal to the preset value, a scale-up is triggered.

Value range:

  • 300
  • 600
  • 900
  • 1800

silence_cycle

Integer

Explanation:

Silent period, in seconds. It indicates the minimum interval between two auto scale-up operations or two scale-down operations.

Value range:

  • 300
  • 600
  • 1800
  • 3600
  • 7200
  • 10800
  • 86400
  • 604800

enlarge_threshold

Integer

Explanation:

Average CPU usage.

Value range:

50-100

max_flavor

String

Explanation:

Maximum specifications.

Value range:

Maximum specifications that can be changed for an instance at the current site.

reduce_enabled

Boolean

Explanation:

Whether auto scale-down is enabled.

Value range:

  • true: enabled
  • false: disabled

min_flavor

String

Explanation:

Minimum specifications.

Value range:

Minimum specifications that can be changed for an instance at the current site.

silence_start_at

String

Explanation:

Start time of the silent period (end time of the last change).

The format is yyyy-mm-ddThh:mm:ssZ. T is the separator between the calendar and the hourly notation of time. Z indicates the time zone offset. For example, in the Beijing time zone, the offset is +0800.

Value range:

None

scaling_strategy

ScalingStrategyInfo object

Explanation:

Auto scaling policy.

max_read_only_count

Integer

Explanation:

Maximum number of read replicas.

Value range:

2 ≤ Number of current read replicas < Preset value ≤ 15

min_read_only_count

Integer

Explanation:

Minimum number of read replicas.

Value range:

1–14

read_only_weight

Integer

Explanation:

Read weights of read replicas.

Value range:

0–1000

Table 4 ScalingStrategyInfo

Parameter

Type

Description

flavor_switch

String

Explanation:

Whether instance specifications can be automatically scaled up or down.

Value range:

  • ON: Yes
  • OFF: No

read_only_switch

String

Explanation:

Whether read replicas can be automatically added or deleted.

Value range:

  • ON: Yes
  • OFF: No

Status code: 400

Table 5 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error message.

Status code: 500

Table 6 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error message.

Example Request

Querying auto scaling policies

GET https://{endpoint}/v3/97b026aa9cc4417888c14c84a1ad9860/instances/61a4ea66210545909d74a05c27a7179ein07/auto-scaling/policy

Example Response

Status code: 200

Success.

  • Performing a query after auto scaling is enabled
    {
      "id" : "26d8e193-1ea0-4adb-89d0-d1343399d0e7",
      "instance_id" : "41ff7519e22d44eea6066615fa5b17c7in07",
      "instance_name" : "gauss-test-1",
      "status" : "ON",
      "monitor_cycle" : 300,
      "silence_cycle" : 300,
      "enlarge_threshold" : 50,
      "max_flavor" : "gaussdb.mysql.large.x86.4",
      "reduce_enabled" : false,
      "min_flavor" : "gaussdb.mysql.medium.x86.4",
      "silence_start_at" : "2023-08-31T08:59:09+0000",
      "scaling_strategy" : {
        "flavor_switch" : "ON",
        "read_only_switch" : "ON"
      },
      "max_read_only_count" : 2,
      "min_read_only_count" : 1,
      "read_only_weight" : 10
    }
  • Performing a query after auto scaling is disabled
    {
      "id" : null,
      "instance_id" : "41ff7519e22d44eea6066615fa5b17c7in07",
      "instance_name" : "gauss-test-1",
      "status" : "OFF",
      "monitor_cycle" : null,
      "silence_cycle" : null,
      "enlarge_threshold" : null,
      "max_flavor" : null,
      "reduce_enabled" : null,
      "min_flavor" : null,
      "silence_start_at" : "",
      "scaling_strategy" : {
        "flavor_switch" : "",
        "read_only_switch" : ""
      },
      "max_read_only_count" : null,
      "min_read_only_count" : null,
      "read_only_weight" : null
    }

Status Code

Status Code

Description

200

Success.

400

Client error.

500

Server error.

Error Code

For details, see Error Codes.