Add a Node to a Cluster
- POST /api/v1.3/clusters/(string: id_or_label)/nodes
Use this API to add a new worker node to the cluster. The instance type is picked up from the cluster configuration. This action starts the operation asynchronously. The operation can be monitored using the command ID in the response through the command status API.
Note
A cluster must be running to add a new node. An Add Node API does not check for maximum size of the cluster. Currently, this function is supported for Hadoop 2 (Hive) and Presto clusters only.
Required Role
The following users can make this API call:
Users who belong to the system-admin group.
Users who belong to a group associated with a role that allows adding nodes to a cluster. See Managing Groups and Managing Roles for more information.
curl -i -X POST -H "X-AUTH-TOKEN: $AUTH_TOKEN" -H "Content-Type: application/json" -H "Accept: application/json" -d
'{"node_count": "$value"}' "https://api.qubole.com/api/latest/clusters/${cluster_id}/nodes"
Note
The above syntax uses https://api.qubole.com as the endpoint. Qubole provides other endpoints to access QDS that are described in Supported Qubole Endpoints on Different Cloud Providers.
Parameters
Note
Parameters marked in bold are mandatory. Others are optional and have default values.
Parameter |
Description |
---|---|
cluster_id |
It is the cluster ID of Hadoop 2 (Hive) or Presto cluster’s ID. |
node_count |
The total number of nodes. The default value of node count is 1. (Hadoop 2 (Hive) or Presto) |
Response
The response contains a JSON object representing the command ID of the add node operation. All attributes mentioned here are returned (except when otherwise specified or redundant).
Example
Request
curl -X POST -H "X-AUTH-TOKEN:$X_AUTH_TOKEN" -H "Content-Type:application/json" -H "Accept: application/json" \
https://api.qubole.com//api/v1.3/clusters/353181/nodes
Note
The response is the same as a query_hist response.
Response
{
"submit_time": 1431419457,
"status": "waiting",
"saved_query_mutable_id": null,
"command_source": "",
"progress": 0,
"resolved_macros": null,
"end_time": null,
"start_time": null,
"command": {
"cluster_inst_id": 17991,
"parameters": null,
"action": "add",
"private_dns": null
},
"pid": null,
"qbol_session_id": 80475,
"command_type": "ClusterManageCommand",
"created_at": "2015-05-12T08:30:57Z",
"account_id": 14,
"name": null,
"timeout": null,
"template": "generic",
"label": "Hadoop",
"user_id": 1432,
"pool": null,
"num_result_dir": -1,
"qlog": null,
"path": "/tmp/2015-05-12/14/353181",
"id": 353181,
"meta_data": {
"results_resource": "commands/353181/results",
"logs_resource": "commands/353181/logs"
},
"can_notify": false
}