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
 }