v1. ClusterControllerClient
The ClusterControllerService provides methods to manage clusters of Google Compute Engine instances.
Constructor
ClusterControllerClient
new ClusterControllerClient(options)
Construct an instance of ClusterControllerClient.
Parameter |
|||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
Optional object The configuration object. See the subsequent parameters for more details. Values in
|
Properties
port
The port for this API service.
scopes
The scopes needed to make gRPC calls for every method defined in this service.
servicePath
The DNS address for this API service.
Methods
createCluster
createCluster(request, options, callback) returns Promise
Creates a cluster in a project.
Parameter |
|||||||||
---|---|---|---|---|---|---|---|---|---|
request |
Object The request object that will be sent. Values in
|
||||||||
options |
Optional Object Optional parameters. You can override the default settings for this call, e.g, timeout, retries, paginations, etc. See gax.CallOptions for the details. |
||||||||
callback |
Optional function(nullable Error, nullable Object) The function which will be called with the result of the API call. The second parameter to the callback is a gax.Operation object. |
- Returns
-
Promise
- The promise which resolves to an array. The first element of the array is a gax.Operation object. The promise has a method named "cancel" which cancels the ongoing API call.
Example
const dataproc = require('@google-cloud/dataproc');
const client = new dataproc.v1.ClusterControllerClient({
// optional auth parameters.
});
const projectId = '';
const region = '';
const cluster = {};
const request = {
projectId: projectId,
region: region,
cluster: cluster,
};
// Handle the operation using the promise pattern.
client.createCluster(request)
.then(responses => {
const operation = responses[0];
const initialApiResponse = responses[1];
// Operation#promise starts polling for the completion of the LRO.
return operation.promise();
})
.then(responses => {
// The final result of the operation.
const result = responses[0];
// The metadata value of the completed operation.
const metadata = responses[1];
// The response of the api call returning the complete operation.
const finalApiResponse = responses[2];
})
.catch(err => {
console.error(err);
});
const projectId = '';
const region = '';
const cluster = {};
const request = {
projectId: projectId,
region: region,
cluster: cluster,
};
// Handle the operation using the event emitter pattern.
client.createCluster(request)
.then(responses => {
const operation = responses[0];
const initialApiResponse = responses[1];
// Adding a listener for the "complete" event starts polling for the
// completion of the operation.
operation.on('complete', (result, metadata, finalApiResponse) => {
// doSomethingWith(result);
});
// Adding a listener for the "progress" event causes the callback to be
// called on any change in metadata when the operation is polled.
operation.on('progress', (metadata, apiResponse) => {
// doSomethingWith(metadata)
});
// Adding a listener for the "error" event handles any errors found during polling.
operation.on('error', err => {
// throw(err);
});
})
.catch(err => {
console.error(err);
});
deleteCluster
deleteCluster(request, options, callback) returns Promise
Deletes a cluster in a project.
Parameter |
|||||||||
---|---|---|---|---|---|---|---|---|---|
request |
Object The request object that will be sent. Values in
|
||||||||
options |
Optional Object Optional parameters. You can override the default settings for this call, e.g, timeout, retries, paginations, etc. See gax.CallOptions for the details. |
||||||||
callback |
Optional function(nullable Error, nullable Object) The function which will be called with the result of the API call. The second parameter to the callback is a gax.Operation object. |
- Returns
-
Promise
- The promise which resolves to an array. The first element of the array is a gax.Operation object. The promise has a method named "cancel" which cancels the ongoing API call.
Example
const dataproc = require('@google-cloud/dataproc');
const client = new dataproc.v1.ClusterControllerClient({
// optional auth parameters.
});
const projectId = '';
const region = '';
const clusterName = '';
const request = {
projectId: projectId,
region: region,
clusterName: clusterName,
};
// Handle the operation using the promise pattern.
client.deleteCluster(request)
.then(responses => {
const operation = responses[0];
const initialApiResponse = responses[1];
// Operation#promise starts polling for the completion of the LRO.
return operation.promise();
})
.then(responses => {
// The final result of the operation.
const result = responses[0];
// The metadata value of the completed operation.
const metadata = responses[1];
// The response of the api call returning the complete operation.
const finalApiResponse = responses[2];
})
.catch(err => {
console.error(err);
});
const projectId = '';
const region = '';
const clusterName = '';
const request = {
projectId: projectId,
region: region,
clusterName: clusterName,
};
// Handle the operation using the event emitter pattern.
client.deleteCluster(request)
.then(responses => {
const operation = responses[0];
const initialApiResponse = responses[1];
// Adding a listener for the "complete" event starts polling for the
// completion of the operation.
operation.on('complete', (result, metadata, finalApiResponse) => {
// doSomethingWith(result);
});
// Adding a listener for the "progress" event causes the callback to be
// called on any change in metadata when the operation is polled.
operation.on('progress', (metadata, apiResponse) => {
// doSomethingWith(metadata)
});
// Adding a listener for the "error" event handles any errors found during polling.
operation.on('error', err => {
// throw(err);
});
})
.catch(err => {
console.error(err);
});
diagnoseCluster
diagnoseCluster(request, options, callback) returns Promise
Gets cluster diagnostic information. After the operation completes, the Operation.response field contains DiagnoseClusterOutputLocation
.
Parameter |
|||||||||
---|---|---|---|---|---|---|---|---|---|
request |
Object The request object that will be sent. Values in
|
||||||||
options |
Optional Object Optional parameters. You can override the default settings for this call, e.g, timeout, retries, paginations, etc. See gax.CallOptions for the details. |
||||||||
callback |
Optional function(nullable Error, nullable Object) The function which will be called with the result of the API call. The second parameter to the callback is a gax.Operation object. |
- Returns
-
Promise
- The promise which resolves to an array. The first element of the array is a gax.Operation object. The promise has a method named "cancel" which cancels the ongoing API call.
Example
const dataproc = require('@google-cloud/dataproc');
const client = new dataproc.v1.ClusterControllerClient({
// optional auth parameters.
});
const projectId = '';
const region = '';
const clusterName = '';
const request = {
projectId: projectId,
region: region,
clusterName: clusterName,
};
// Handle the operation using the promise pattern.
client.diagnoseCluster(request)
.then(responses => {
const operation = responses[0];
const initialApiResponse = responses[1];
// Operation#promise starts polling for the completion of the LRO.
return operation.promise();
})
.then(responses => {
// The final result of the operation.
const result = responses[0];
// The metadata value of the completed operation.
const metadata = responses[1];
// The response of the api call returning the complete operation.
const finalApiResponse = responses[2];
})
.catch(err => {
console.error(err);
});
const projectId = '';
const region = '';
const clusterName = '';
const request = {
projectId: projectId,
region: region,
clusterName: clusterName,
};
// Handle the operation using the event emitter pattern.
client.diagnoseCluster(request)
.then(responses => {
const operation = responses[0];
const initialApiResponse = responses[1];
// Adding a listener for the "complete" event starts polling for the
// completion of the operation.
operation.on('complete', (result, metadata, finalApiResponse) => {
// doSomethingWith(result);
});
// Adding a listener for the "progress" event causes the callback to be
// called on any change in metadata when the operation is polled.
operation.on('progress', (metadata, apiResponse) => {
// doSomethingWith(metadata)
});
// Adding a listener for the "error" event handles any errors found during polling.
operation.on('error', err => {
// throw(err);
});
})
.catch(err => {
console.error(err);
});
getCluster
getCluster(request, options, callback) returns Promise
Gets the resource representation for a cluster in a project.
Parameter |
|||||||||
---|---|---|---|---|---|---|---|---|---|
request |
Object The request object that will be sent. Values in
|
||||||||
options |
Optional Object Optional parameters. You can override the default settings for this call, e.g, timeout, retries, paginations, etc. See gax.CallOptions for the details. |
||||||||
callback |
Optional function(nullable Error, nullable Object) The function which will be called with the result of the API call. The second parameter to the callback is an object representing Cluster. |
- Returns
-
Promise
- The promise which resolves to an array. The first element of the array is an object representing Cluster. The promise has a method named "cancel" which cancels the ongoing API call.
Example
const dataproc = require('@google-cloud/dataproc');
const client = new dataproc.v1.ClusterControllerClient({
// optional auth parameters.
});
const projectId = '';
const region = '';
const clusterName = '';
const request = {
projectId: projectId,
region: region,
clusterName: clusterName,
};
client.getCluster(request)
.then(responses => {
const response = responses[0];
// doThingsWith(response)
})
.catch(err => {
console.error(err);
});
getProjectId
getProjectId(callback)
Return the project ID used by this class.
Parameter |
|
---|---|
callback |
function(Error, string) the callback to be called with the current project Id. |
listClusters
listClusters(request, options, callback) returns Promise
Lists all regions/{region}/clusters in a project.
Parameter |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
request |
Object The request object that will be sent. Values in
|
||||||||||
options |
Optional Object Optional parameters. You can override the default settings for this call, e.g, timeout, retries, paginations, etc. See gax.CallOptions for the details. |
||||||||||
callback |
Optional function(nullable Error, nullable Array, nullable Object, nullable Object) The function which will be called with the result of the API call. The second parameter to the callback is Array of Cluster. When autoPaginate: false is specified through options, it contains the result in a single response. If the response indicates the next page exists, the third parameter is set to be used for the next request object. The fourth parameter keeps the raw response object of an object representing ListClustersResponse. |
- Returns
-
Promise
-
The promise which resolves to an array. The first element of the array is Array of Cluster.
When autoPaginate: false is specified through options, the array has three elements. The first element is Array of Cluster in a single response. The second element is the next request object if the response indicates the next page exists, or null. The third element is an object representing ListClustersResponse.
The promise has a method named "cancel" which cancels the ongoing API call.
-
Example
const dataproc = require('@google-cloud/dataproc');
const client = new dataproc.v1.ClusterControllerClient({
// optional auth parameters.
});
// Iterate over all elements.
const projectId = '';
const region = '';
const request = {
projectId: projectId,
region: region,
};
client.listClusters(request)
.then(responses => {
const resources = responses[0];
for (let i = 0; i < resources.length; i += 1) {
// doThingsWith(resources[i])
}
})
.catch(err => {
console.error(err);
});
// Or obtain the paged response.
const projectId = '';
const region = '';
const request = {
projectId: projectId,
region: region,
};
const options = {autoPaginate: false};
const callback = responses => {
// The actual resources in a response.
const resources = responses[0];
// The next request if the response shows that there are more responses.
const nextRequest = responses[1];
// The actual response object, if necessary.
// const rawResponse = responses[2];
for (let i = 0; i < resources.length; i += 1) {
// doThingsWith(resources[i]);
}
if (nextRequest) {
// Fetch the next page.
return client.listClusters(nextRequest, options).then(callback);
}
}
client.listClusters(request, options)
.then(callback)
.catch(err => {
console.error(err);
});
listClustersStream
listClustersStream(request, options) returns Stream
Equivalent to listClusters, but returns a NodeJS Stream object.
This fetches the paged responses for listClusters continuously and invokes the callback registered for 'data' event for each element in the responses.
The returned object has 'end' method when no more elements are required.
autoPaginate option will be ignored.
Parameter |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
request |
Object The request object that will be sent. Values in
|
||||||||||
options |
Optional Object Optional parameters. You can override the default settings for this call, e.g, timeout, retries, paginations, etc. See gax.CallOptions for the details. |
- See also
- https://nodejs.org/api/stream.html
- Returns
-
Stream
An object stream which emits an object representing Cluster on 'data' event.
Example
const dataproc = require('@google-cloud/dataproc');
const client = new dataproc.v1.ClusterControllerClient({
// optional auth parameters.
});
const projectId = '';
const region = '';
const request = {
projectId: projectId,
region: region,
};
client.listClustersStream(request)
.on('data', element => {
// doThingsWith(element)
}).on('error', err => {
console.log(err);
});
updateCluster
updateCluster(request, options, callback) returns Promise
Updates a cluster in a project.
Parameter |
|||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
request |
Object The request object that will be sent. Values in
|
||||||||||||||||||||
options |
Optional Object Optional parameters. You can override the default settings for this call, e.g, timeout, retries, paginations, etc. See gax.CallOptions for the details. |
||||||||||||||||||||
callback |
Optional function(nullable Error, nullable Object) The function which will be called with the result of the API call. The second parameter to the callback is a gax.Operation object. |
- Returns
-
Promise
- The promise which resolves to an array. The first element of the array is a gax.Operation object. The promise has a method named "cancel" which cancels the ongoing API call.
Example
const dataproc = require('@google-cloud/dataproc');
const client = new dataproc.v1.ClusterControllerClient({
// optional auth parameters.
});
const projectId = '';
const region = '';
const clusterName = '';
const cluster = {};
const updateMask = {};
const request = {
projectId: projectId,
region: region,
clusterName: clusterName,
cluster: cluster,
updateMask: updateMask,
};
// Handle the operation using the promise pattern.
client.updateCluster(request)
.then(responses => {
const operation = responses[0];
const initialApiResponse = responses[1];
// Operation#promise starts polling for the completion of the LRO.
return operation.promise();
})
.then(responses => {
// The final result of the operation.
const result = responses[0];
// The metadata value of the completed operation.
const metadata = responses[1];
// The response of the api call returning the complete operation.
const finalApiResponse = responses[2];
})
.catch(err => {
console.error(err);
});
const projectId = '';
const region = '';
const clusterName = '';
const cluster = {};
const updateMask = {};
const request = {
projectId: projectId,
region: region,
clusterName: clusterName,
cluster: cluster,
updateMask: updateMask,
};
// Handle the operation using the event emitter pattern.
client.updateCluster(request)
.then(responses => {
const operation = responses[0];
const initialApiResponse = responses[1];
// Adding a listener for the "complete" event starts polling for the
// completion of the operation.
operation.on('complete', (result, metadata, finalApiResponse) => {
// doSomethingWith(result);
});
// Adding a listener for the "progress" event causes the callback to be
// called on any change in metadata when the operation is polled.
operation.on('progress', (metadata, apiResponse) => {
// doSomethingWith(metadata)
});
// Adding a listener for the "error" event handles any errors found during polling.
operation.on('error', err => {
// throw(err);
});
})
.catch(err => {
console.error(err);
});