Help Center/ Cloud Search Service/ API Reference/ Cluster Management/ Adding Instances and Expanding Instance Storage Capacity
Updated on 2023-03-15 GMT+08:00

Adding Instances and Expanding Instance Storage Capacity

Function

This API is used to add instances of different types and expand instance storage capacity in a cluster. This API is available for clusters with master, client, or cold data nodes.

URI

POST /v1.0/{project_id}/clusters/{cluster_id}/role_extend

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID. For details about how to obtain the project ID and name, see Obtaining a Project ID and Name.

cluster_id

Yes

String

ID of the cluster you want to scale out.

Request Parameters

Table 2 Request body parameters

Parameter

Mandatory

Type

Description

grow

Yes

Array of RoleExtendGrowReq objects

Detailed description about the cluster scale-out request.

Table 3 RoleExtendGrowReq

Parameter

Mandatory

Type

Description

type

Yes

String

Type of the instance to be scaled out. Select at least one from ess, ess-master, and ess-client. A type can be selected once only.

You can only add instances, rather than increase storage capacity, on nodes of the ess-master and ess-client types.

nodesize

Yes

Integer

Number of instances you want to add. The total number of existing instances and newly added instances in a cluster cannot exceed 32.

disksize

Yes

Integer

Storage capacity of the instance you want to add. The total storage capacity of existing instances and newly added instances in a cluster cannot exceed the maximum instance storage capacity allowed when a cluster is being created. Unit: GB

  • The number of ess and ess-cold nodes must be a multiple of 20.
  • Storage capacity of ess-master and ess-client nodes cannot be expanded.

Response Parameters

Status code: 200

Table 4 Response body parameters

Parameter

Type

Description

id

String

Cluster ID.

Example Requests

{
  "grow" : [ {
    "type" : "ess-master",
    "nodesize" : 2,
    "disksize" : 0
  }, {
    "type" : "ess",
    "nodesize" : 0,
    "disksize" : 40
  }, {
    "type" : "ess-client",
    "nodesize" : 1,
    "disksize" : 0
  } ]
}

Example Responses

Status code: 200

Request succeeded.

{
  "id" : "4f3deec3-efa8-4598-bf91-560aad1377a3"
}

Status Codes

Status Code

Description

200

Request succeeded.

400

Invalid request.

Modify the request before retry.

404

The requested resource could not be found.

Modify the request before retry.

Error Codes

See Error Codes.