Reference documentation and code samples for the Cloud Dataproc V1 API class Google::Cloud::Dataproc::V1::ClusterController::Client.
Client for the ClusterController service.
The ClusterControllerService provides methods to manage clusters of Compute Engine instances.
Inherits
- Object
Methods
.configure
def self.configure() { |config| ... } -> Client::Configuration
Configure the ClusterController Client class.
See Configuration for a description of the configuration fields.
- (config) — Configure the Client client.
- config (Client::Configuration)
# Modify the configuration for all ClusterController clients ::Google::Cloud::Dataproc::V1::ClusterController::Client.configure do |config| config.timeout = 10.0 end
#configure
def configure() { |config| ... } -> Client::Configuration
Configure the ClusterController Client instance.
The configuration is set to the derived mode, meaning that values can be changed, but structural changes (adding new fields, etc.) are not allowed. Structural changes should be made on Client.configure.
See Configuration for a description of the configuration fields.
- (config) — Configure the Client client.
- config (Client::Configuration)
#create_cluster
def create_cluster(request, options = nil) -> ::Gapic::Operation
def create_cluster(project_id: nil, region: nil, cluster: nil, request_id: nil, action_on_failed_primary_workers: nil) -> ::Gapic::Operation
Creates a cluster in a project. The returned Operation.metadata will be ClusterOperationMetadata.
def create_cluster(request, options = nil) -> ::Gapic::Operation
create_cluster
via a request object, either of type
Google::Cloud::Dataproc::V1::CreateClusterRequest or an equivalent Hash.
- request (::Google::Cloud::Dataproc::V1::CreateClusterRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
- options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def create_cluster(project_id: nil, region: nil, cluster: nil, request_id: nil, action_on_failed_primary_workers: nil) -> ::Gapic::Operation
create_cluster
via keyword arguments. Note that at
least one keyword argument is required. To specify no parameters, or to keep all
the default parameter values, pass an empty Hash as a request object (see above).
- project_id (::String) — Required. The ID of the Google Cloud Platform project that the cluster belongs to.
- region (::String) — Required. The Dataproc region in which to handle the request.
- cluster (::Google::Cloud::Dataproc::V1::Cluster, ::Hash) — Required. The cluster to create.
-
request_id (::String) — Optional. A unique ID used to identify the request. If the server receives
two
CreateClusterRequests
with the same id, then the second request will be ignored and the
first google.longrunning.Operation created
and stored in the backend is returned.
It is recommended to always set this value to a UUID.
The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.
- action_on_failed_primary_workers (::Google::Cloud::Dataproc::V1::FailureAction) — Optional. Failure action when primary worker creation fails.
- (response, operation) — Access the result along with the RPC operation
- response (::Gapic::Operation)
- operation (::GRPC::ActiveCall::Operation)
- (::Gapic::Operation)
- (::Google::Cloud::Error) — if the RPC is aborted.
Basic example
require "google/cloud/dataproc/v1" # Create a client object. The client can be reused for multiple calls. client = Google::Cloud::Dataproc::V1::ClusterController::Client.new # Create a request. To set request fields, pass in keyword arguments. request = Google::Cloud::Dataproc::V1::CreateClusterRequest.new # Call the create_cluster method. result = client.create_cluster request # The returned object is of type Gapic::Operation. You can use it to # check the status of an operation, cancel it, or wait for results. # Here is how to wait for a response. result.wait_until_done! timeout: 60 if result.response? p result.response else puts "No response received." end
#delete_cluster
def delete_cluster(request, options = nil) -> ::Gapic::Operation
def delete_cluster(project_id: nil, region: nil, cluster_name: nil, cluster_uuid: nil, request_id: nil) -> ::Gapic::Operation
Deletes a cluster in a project. The returned Operation.metadata will be ClusterOperationMetadata.
def delete_cluster(request, options = nil) -> ::Gapic::Operation
delete_cluster
via a request object, either of type
DeleteClusterRequest or an equivalent Hash.
- request (::Google::Cloud::Dataproc::V1::DeleteClusterRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
- options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def delete_cluster(project_id: nil, region: nil, cluster_name: nil, cluster_uuid: nil, request_id: nil) -> ::Gapic::Operation
delete_cluster
via keyword arguments. Note that at
least one keyword argument is required. To specify no parameters, or to keep all
the default parameter values, pass an empty Hash as a request object (see above).
- project_id (::String) — Required. The ID of the Google Cloud Platform project that the cluster belongs to.
- region (::String) — Required. The Dataproc region in which to handle the request.
- cluster_name (::String) — Required. The cluster name.
-
cluster_uuid (::String) — Optional. Specifying the
cluster_uuid
means the RPC should fail (with error NOT_FOUND) if cluster with specified UUID does not exist. -
request_id (::String) — Optional. A unique ID used to identify the request. If the server
receives two
DeleteClusterRequests
with the same id, then the second request will be ignored and the
first google.longrunning.Operation created
and stored in the backend is returned.
It is recommended to always set this value to a UUID.
The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.
- (response, operation) — Access the result along with the RPC operation
- response (::Gapic::Operation)
- operation (::GRPC::ActiveCall::Operation)
- (::Gapic::Operation)
- (::Google::Cloud::Error) — if the RPC is aborted.
Basic example
require "google/cloud/dataproc/v1" # Create a client object. The client can be reused for multiple calls. client = Google::Cloud::Dataproc::V1::ClusterController::Client.new # Create a request. To set request fields, pass in keyword arguments. request = Google::Cloud::Dataproc::V1::DeleteClusterRequest.new # Call the delete_cluster method. result = client.delete_cluster request # The returned object is of type Gapic::Operation. You can use it to # check the status of an operation, cancel it, or wait for results. # Here is how to wait for a response. result.wait_until_done! timeout: 60 if result.response? p result.response else puts "No response received." end
#diagnose_cluster
def diagnose_cluster(request, options = nil) -> ::Gapic::Operation
def diagnose_cluster(project_id: nil, region: nil, cluster_name: nil, tarball_gcs_dir: nil, diagnosis_interval: nil, jobs: nil, yarn_application_ids: nil) -> ::Gapic::Operation
Gets cluster diagnostic information. The returned Operation.metadata will be ClusterOperationMetadata. After the operation completes, Operation.response contains DiagnoseClusterResults.
def diagnose_cluster(request, options = nil) -> ::Gapic::Operation
diagnose_cluster
via a request object, either of type
DiagnoseClusterRequest or an equivalent Hash.
- request (::Google::Cloud::Dataproc::V1::DiagnoseClusterRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
- options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def diagnose_cluster(project_id: nil, region: nil, cluster_name: nil, tarball_gcs_dir: nil, diagnosis_interval: nil, jobs: nil, yarn_application_ids: nil) -> ::Gapic::Operation
diagnose_cluster
via keyword arguments. Note that at
least one keyword argument is required. To specify no parameters, or to keep all
the default parameter values, pass an empty Hash as a request object (see above).
- project_id (::String) — Required. The ID of the Google Cloud Platform project that the cluster belongs to.
- region (::String) — Required. The Dataproc region in which to handle the request.
- cluster_name (::String) — Required. The cluster name.
- tarball_gcs_dir (::String) — Optional. The output Cloud Storage directory for the diagnostic tarball. If not specified, a task-specific directory in the cluster's staging bucket will be used.
- diagnosis_interval (::Google::Type::Interval, ::Hash) — Optional. Time interval in which diagnosis should be carried out on the cluster.
- jobs (::Array<::String>) — Optional. Specifies a list of jobs on which diagnosis is to be performed. Format: projects/{project}/regions/{region}/jobs/{job}
- yarn_application_ids (::Array<::String>) — Optional. Specifies a list of yarn applications on which diagnosis is to be performed.
- (response, operation) — Access the result along with the RPC operation
- response (::Gapic::Operation)
- operation (::GRPC::ActiveCall::Operation)
- (::Gapic::Operation)
- (::Google::Cloud::Error) — if the RPC is aborted.
Basic example
require "google/cloud/dataproc/v1" # Create a client object. The client can be reused for multiple calls. client = Google::Cloud::Dataproc::V1::ClusterController::Client.new # Create a request. To set request fields, pass in keyword arguments. request = Google::Cloud::Dataproc::V1::DiagnoseClusterRequest.new # Call the diagnose_cluster method. result = client.diagnose_cluster request # The returned object is of type Gapic::Operation. You can use it to # check the status of an operation, cancel it, or wait for results. # Here is how to wait for a response. result.wait_until_done! timeout: 60 if result.response? p result.response else puts "No response received." end
#get_cluster
def get_cluster(request, options = nil) -> ::Google::Cloud::Dataproc::V1::Cluster
def get_cluster(project_id: nil, region: nil, cluster_name: nil) -> ::Google::Cloud::Dataproc::V1::Cluster
Gets the resource representation for a cluster in a project.
def get_cluster(request, options = nil) -> ::Google::Cloud::Dataproc::V1::Cluster
get_cluster
via a request object, either of type
GetClusterRequest or an equivalent Hash.
- request (::Google::Cloud::Dataproc::V1::GetClusterRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
- options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def get_cluster(project_id: nil, region: nil, cluster_name: nil) -> ::Google::Cloud::Dataproc::V1::Cluster
get_cluster
via keyword arguments. Note that at
least one keyword argument is required. To specify no parameters, or to keep all
the default parameter values, pass an empty Hash as a request object (see above).
- project_id (::String) — Required. The ID of the Google Cloud Platform project that the cluster belongs to.
- region (::String) — Required. The Dataproc region in which to handle the request.
- cluster_name (::String) — Required. The cluster name.
- (response, operation) — Access the result along with the RPC operation
- response (::Google::Cloud::Dataproc::V1::Cluster)
- operation (::GRPC::ActiveCall::Operation)
- (::Google::Cloud::Error) — if the RPC is aborted.
Basic example
require "google/cloud/dataproc/v1" # Create a client object. The client can be reused for multiple calls. client = Google::Cloud::Dataproc::V1::ClusterController::Client.new # Create a request. To set request fields, pass in keyword arguments. request = Google::Cloud::Dataproc::V1::GetClusterRequest.new # Call the get_cluster method. result = client.get_cluster request # The returned object is of type Google::Cloud::Dataproc::V1::Cluster. p result
#iam_policy_client
def iam_policy_client() -> Google::Iam::V1::IAMPolicy::Client
Get the associated client for mix-in of the IAMPolicy.
- (Google::Iam::V1::IAMPolicy::Client)
#initialize
def initialize() { |config| ... } -> Client
Create a new ClusterController client object.
- (config) — Configure the ClusterController client.
- config (Client::Configuration)
- (Client) — a new instance of Client
# Create a client using the default configuration client = ::Google::Cloud::Dataproc::V1::ClusterController::Client.new # Create a client using a custom configuration client = ::Google::Cloud::Dataproc::V1::ClusterController::Client.new do |config| config.timeout = 10.0 end
#list_clusters
def list_clusters(request, options = nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::Dataproc::V1::Cluster>
def list_clusters(project_id: nil, region: nil, filter: nil, page_size: nil, page_token: nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::Dataproc::V1::Cluster>
Lists all regions/{region}/clusters in a project alphabetically.
def list_clusters(request, options = nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::Dataproc::V1::Cluster>
list_clusters
via a request object, either of type
ListClustersRequest or an equivalent Hash.
- request (::Google::Cloud::Dataproc::V1::ListClustersRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
- options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def list_clusters(project_id: nil, region: nil, filter: nil, page_size: nil, page_token: nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::Dataproc::V1::Cluster>
list_clusters
via keyword arguments. Note that at
least one keyword argument is required. To specify no parameters, or to keep all
the default parameter values, pass an empty Hash as a request object (see above).
- project_id (::String) — Required. The ID of the Google Cloud Platform project that the cluster belongs to.
- region (::String) — Required. The Dataproc region in which to handle the request.
-
filter (::String) — Optional. A filter constraining the clusters to list. Filters are
case-sensitive and have the following syntax:
field = value [AND [field = value]] ...
where field is one of
status.state
,clusterName
, orlabels.[KEY]
, and[KEY]
is a label key. value can be*
to match all values.status.state
can be one of the following:ACTIVE
,INACTIVE
,CREATING
,RUNNING
,ERROR
,DELETING
, orUPDATING
.ACTIVE
contains theCREATING
,UPDATING
, andRUNNING
states.INACTIVE
contains theDELETING
andERROR
states.clusterName
is the name of the cluster provided at creation time. Only the logicalAND
operator is supported; space-separated items are treated as having an implicitAND
operator.Example filter:
status.state = ACTIVE AND clusterName = mycluster AND labels.env = staging AND labels.starred = *
- page_size (::Integer) — Optional. The standard List page size.
- page_token (::String) — Optional. The standard List page token.
- (response, operation) — Access the result along with the RPC operation
- response (::Gapic::PagedEnumerable<::Google::Cloud::Dataproc::V1::Cluster>)
- operation (::GRPC::ActiveCall::Operation)
- (::Gapic::PagedEnumerable<::Google::Cloud::Dataproc::V1::Cluster>)
- (::Google::Cloud::Error) — if the RPC is aborted.
Basic example
require "google/cloud/dataproc/v1" # Create a client object. The client can be reused for multiple calls. client = Google::Cloud::Dataproc::V1::ClusterController::Client.new # Create a request. To set request fields, pass in keyword arguments. request = Google::Cloud::Dataproc::V1::ListClustersRequest.new # Call the list_clusters method. result = client.list_clusters request # The returned object is of type Gapic::PagedEnumerable. You can iterate # over elements, and API calls will be issued to fetch pages as needed. result.each do |item| # Each element is of type ::Google::Cloud::Dataproc::V1::Cluster. p item end
#operations_client
def operations_client() -> ::Google::Cloud::Dataproc::V1::ClusterController::Operations
Get the associated client for long-running operations.
#start_cluster
def start_cluster(request, options = nil) -> ::Gapic::Operation
def start_cluster(project_id: nil, region: nil, cluster_name: nil, cluster_uuid: nil, request_id: nil) -> ::Gapic::Operation
Starts a cluster in a project.
def start_cluster(request, options = nil) -> ::Gapic::Operation
start_cluster
via a request object, either of type
StartClusterRequest or an equivalent Hash.
- request (::Google::Cloud::Dataproc::V1::StartClusterRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
- options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def start_cluster(project_id: nil, region: nil, cluster_name: nil, cluster_uuid: nil, request_id: nil) -> ::Gapic::Operation
start_cluster
via keyword arguments. Note that at
least one keyword argument is required. To specify no parameters, or to keep all
the default parameter values, pass an empty Hash as a request object (see above).
- project_id (::String) — Required. The ID of the Google Cloud Platform project the cluster belongs to.
- region (::String) — Required. The Dataproc region in which to handle the request.
- cluster_name (::String) — Required. The cluster name.
-
cluster_uuid (::String) — Optional. Specifying the
cluster_uuid
means the RPC will fail (with error NOT_FOUND) if a cluster with the specified UUID does not exist. -
request_id (::String) — Optional. A unique ID used to identify the request. If the server
receives two
StartClusterRequests
with the same id, then the second request will be ignored and the
first google.longrunning.Operation created
and stored in the backend is returned.
Recommendation: Set this value to a UUID.
The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.
- (response, operation) — Access the result along with the RPC operation
- response (::Gapic::Operation)
- operation (::GRPC::ActiveCall::Operation)
- (::Gapic::Operation)
- (::Google::Cloud::Error) — if the RPC is aborted.
Basic example
require "google/cloud/dataproc/v1" # Create a client object. The client can be reused for multiple calls. client = Google::Cloud::Dataproc::V1::ClusterController::Client.new # Create a request. To set request fields, pass in keyword arguments. request = Google::Cloud::Dataproc::V1::StartClusterRequest.new # Call the start_cluster method. result = client.start_cluster request # The returned object is of type Gapic::Operation. You can use it to # check the status of an operation, cancel it, or wait for results. # Here is how to wait for a response. result.wait_until_done! timeout: 60 if result.response? p result.response else puts "No response received." end
#stop_cluster
def stop_cluster(request, options = nil) -> ::Gapic::Operation
def stop_cluster(project_id: nil, region: nil, cluster_name: nil, cluster_uuid: nil, request_id: nil) -> ::Gapic::Operation
Stops a cluster in a project.
def stop_cluster(request, options = nil) -> ::Gapic::Operation
stop_cluster
via a request object, either of type
StopClusterRequest or an equivalent Hash.
- request (::Google::Cloud::Dataproc::V1::StopClusterRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
- options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def stop_cluster(project_id: nil, region: nil, cluster_name: nil, cluster_uuid: nil, request_id: nil) -> ::Gapic::Operation
stop_cluster
via keyword arguments. Note that at
least one keyword argument is required. To specify no parameters, or to keep all
the default parameter values, pass an empty Hash as a request object (see above).
- project_id (::String) — Required. The ID of the Google Cloud Platform project the cluster belongs to.
- region (::String) — Required. The Dataproc region in which to handle the request.
- cluster_name (::String) — Required. The cluster name.
-
cluster_uuid (::String) — Optional. Specifying the
cluster_uuid
means the RPC will fail (with error NOT_FOUND) if a cluster with the specified UUID does not exist. -
request_id (::String) — Optional. A unique ID used to identify the request. If the server
receives two
StopClusterRequests
with the same id, then the second request will be ignored and the
first google.longrunning.Operation created
and stored in the backend is returned.
Recommendation: Set this value to a UUID.
The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.
- (response, operation) — Access the result along with the RPC operation
- response (::Gapic::Operation)
- operation (::GRPC::ActiveCall::Operation)
- (::Gapic::Operation)
- (::Google::Cloud::Error) — if the RPC is aborted.
Basic example
require "google/cloud/dataproc/v1" # Create a client object. The client can be reused for multiple calls. client = Google::Cloud::Dataproc::V1::ClusterController::Client.new # Create a request. To set request fields, pass in keyword arguments. request = Google::Cloud::Dataproc::V1::StopClusterRequest.new # Call the stop_cluster method. result = client.stop_cluster request # The returned object is of type Gapic::Operation. You can use it to # check the status of an operation, cancel it, or wait for results. # Here is how to wait for a response. result.wait_until_done! timeout: 60 if result.response? p result.response else puts "No response received." end
#update_cluster
def update_cluster(request, options = nil) -> ::Gapic::Operation
def update_cluster(project_id: nil, region: nil, cluster_name: nil, cluster: nil, graceful_decommission_timeout: nil, update_mask: nil, request_id: nil) -> ::Gapic::Operation
Updates a cluster in a project. The returned
Operation.metadata will be
ClusterOperationMetadata.
The cluster must be in a
RUNNING
state or an error
is returned.
def update_cluster(request, options = nil) -> ::Gapic::Operation
update_cluster
via a request object, either of type
UpdateClusterRequest or an equivalent Hash.
- request (::Google::Cloud::Dataproc::V1::UpdateClusterRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
- options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def update_cluster(project_id: nil, region: nil, cluster_name: nil, cluster: nil, graceful_decommission_timeout: nil, update_mask: nil, request_id: nil) -> ::Gapic::Operation
update_cluster
via keyword arguments. Note that at
least one keyword argument is required. To specify no parameters, or to keep all
the default parameter values, pass an empty Hash as a request object (see above).
- project_id (::String) — Required. The ID of the Google Cloud Platform project the cluster belongs to.
- region (::String) — Required. The Dataproc region in which to handle the request.
- cluster_name (::String) — Required. The cluster name.
- cluster (::Google::Cloud::Dataproc::V1::Cluster, ::Hash) — Required. The changes to the cluster.
-
graceful_decommission_timeout (::Google::Protobuf::Duration, ::Hash) — Optional. Timeout for graceful YARN decommissioning. Graceful
decommissioning allows removing nodes from the cluster without
interrupting jobs in progress. Timeout specifies how long to wait for jobs
in progress to finish before forcefully removing nodes (and potentially
interrupting jobs). Default timeout is 0 (for forceful decommission), and
the maximum allowed timeout is 1 day. (see JSON representation of
Duration).
Only supported on Dataproc image versions 1.2 and higher.
-
update_mask (::Google::Protobuf::FieldMask, ::Hash) — Required. Specifies the path, relative to
Cluster
, of the field to update. For example, to change the number of workers in a cluster to 5, theupdate_mask
parameter would be specified asconfig.worker_config.num_instances
, and thePATCH
request body would specify the new value, as follows:{ "config":{ "workerConfig":{ "numInstances":"5" } } }
Similarly, to change the number of preemptible workers in a cluster to 5, the
update_mask
parameter would beconfig.secondary_worker_config.num_instances
, and thePATCH
request body would be set as follows:{ "config":{ "secondaryWorkerConfig":{ "numInstances":"5" } } }
Note: Currently, only the following fields can be updated:
Mask Purpose labels Update labels config.worker_config.num_instances Resize primary worker group config.secondary_worker_config.num_instances Resize secondary worker group config.autoscaling_config.policy_uri Use, stop using, or change autoscaling policies -
request_id (::String) — Optional. A unique ID used to identify the request. If the server
receives two
UpdateClusterRequests
with the same id, then the second request will be ignored and the
first google.longrunning.Operation created
and stored in the backend is returned.
It is recommended to always set this value to a UUID.
The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.
- (response, operation) — Access the result along with the RPC operation
- response (::Gapic::Operation)
- operation (::GRPC::ActiveCall::Operation)
- (::Gapic::Operation)
- (::Google::Cloud::Error) — if the RPC is aborted.
Basic example
require "google/cloud/dataproc/v1" # Create a client object. The client can be reused for multiple calls. client = Google::Cloud::Dataproc::V1::ClusterController::Client.new # Create a request. To set request fields, pass in keyword arguments. request = Google::Cloud::Dataproc::V1::UpdateClusterRequest.new # Call the update_cluster method. result = client.update_cluster request # The returned object is of type Gapic::Operation. You can use it to # check the status of an operation, cancel it, or wait for results. # Here is how to wait for a response. result.wait_until_done! timeout: 60 if result.response? p result.response else puts "No response received." end