Class: Google::Apis::DataprocV1::ClusterConfig

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/dataproc_v1/classes.rb,
lib/google/apis/dataproc_v1/representations.rb,
lib/google/apis/dataproc_v1/representations.rb

Overview

The cluster config.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ ClusterConfig

Returns a new instance of ClusterConfig.



756
757
758
# File 'lib/google/apis/dataproc_v1/classes.rb', line 756

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#autoscaling_configGoogle::Apis::DataprocV1::AutoscalingConfig

Autoscaling Policy config associated with the cluster. Corresponds to the JSON property autoscalingConfig



652
653
654
# File 'lib/google/apis/dataproc_v1/classes.rb', line 652

def autoscaling_config
  @autoscaling_config
end

#config_bucketString

Optional. A Cloud Storage bucket used to stage job dependencies, config files, and job driver console output. If you do not specify a staging bucket, Cloud Dataproc will determine a Cloud Storage location (US, ASIA, or EU) for your cluster's staging bucket according to the Compute Engine zone where your cluster is deployed, and then create and manage this project-level, per- location bucket (see Dataproc staging and temp buckets (https://cloud.google. com/dataproc/docs/concepts/configuring-clusters/staging-bucket)). This field requires a Cloud Storage bucket name, not a gs://... URI to a Cloud Storage bucket. Corresponds to the JSON property configBucket

Returns:

  • (String)


665
666
667
# File 'lib/google/apis/dataproc_v1/classes.rb', line 665

def config_bucket
  @config_bucket
end

#dataproc_metric_configGoogle::Apis::DataprocV1::DataprocMetricConfig

Dataproc metric config. Corresponds to the JSON property dataprocMetricConfig



670
671
672
# File 'lib/google/apis/dataproc_v1/classes.rb', line 670

def dataproc_metric_config
  @dataproc_metric_config
end

#encryption_configGoogle::Apis::DataprocV1::EncryptionConfig

Encryption settings for the cluster. Corresponds to the JSON property encryptionConfig



675
676
677
# File 'lib/google/apis/dataproc_v1/classes.rb', line 675

def encryption_config
  @encryption_config
end

#endpoint_configGoogle::Apis::DataprocV1::EndpointConfig

Endpoint config for this cluster Corresponds to the JSON property endpointConfig



680
681
682
# File 'lib/google/apis/dataproc_v1/classes.rb', line 680

def endpoint_config
  @endpoint_config
end

#gce_cluster_configGoogle::Apis::DataprocV1::GceClusterConfig

Common config settings for resources of Compute Engine cluster instances, applicable to all instances in the cluster. Corresponds to the JSON property gceClusterConfig



686
687
688
# File 'lib/google/apis/dataproc_v1/classes.rb', line 686

def gce_cluster_config
  @gce_cluster_config
end

#gke_cluster_configGoogle::Apis::DataprocV1::GkeClusterConfig

The cluster's GKE config. Corresponds to the JSON property gkeClusterConfig



691
692
693
# File 'lib/google/apis/dataproc_v1/classes.rb', line 691

def gke_cluster_config
  @gke_cluster_config
end

#initialization_actionsArray<Google::Apis::DataprocV1::NodeInitializationAction>

Optional. Commands to execute on each node after config is completed. By default, executables are run on master and all worker nodes. You can test a node's role metadata to run an executable on a master or worker node, as shown below using curl (you can also use wget): ROLE=$(curl -H Metadata-Flavor: Google http://metadata/computeMetadata/v1/instance/attributes/dataproc-role) if [[ "$ROLE" == 'Master' ]]; then ... master specific actions ... else ... worker specific actions ... fi Corresponds to the JSON property initializationActions



702
703
704
# File 'lib/google/apis/dataproc_v1/classes.rb', line 702

def initialization_actions
  @initialization_actions
end

#lifecycle_configGoogle::Apis::DataprocV1::LifecycleConfig

Specifies the cluster auto-delete schedule configuration. Corresponds to the JSON property lifecycleConfig



707
708
709
# File 'lib/google/apis/dataproc_v1/classes.rb', line 707

def lifecycle_config
  @lifecycle_config
end

#master_configGoogle::Apis::DataprocV1::InstanceGroupConfig

The config settings for Compute Engine resources in an instance group, such as a master or worker group. Corresponds to the JSON property masterConfig



713
714
715
# File 'lib/google/apis/dataproc_v1/classes.rb', line 713

def master_config
  @master_config
end

#metastore_configGoogle::Apis::DataprocV1::MetastoreConfig

Specifies a Metastore configuration. Corresponds to the JSON property metastoreConfig



718
719
720
# File 'lib/google/apis/dataproc_v1/classes.rb', line 718

def metastore_config
  @metastore_config
end

#secondary_worker_configGoogle::Apis::DataprocV1::InstanceGroupConfig

The config settings for Compute Engine resources in an instance group, such as a master or worker group. Corresponds to the JSON property secondaryWorkerConfig



724
725
726
# File 'lib/google/apis/dataproc_v1/classes.rb', line 724

def secondary_worker_config
  @secondary_worker_config
end

#security_configGoogle::Apis::DataprocV1::SecurityConfig

Security related configuration, including encryption, Kerberos, etc. Corresponds to the JSON property securityConfig



729
730
731
# File 'lib/google/apis/dataproc_v1/classes.rb', line 729

def security_config
  @security_config
end

#software_configGoogle::Apis::DataprocV1::SoftwareConfig

Specifies the selection and config of software inside the cluster. Corresponds to the JSON property softwareConfig



734
735
736
# File 'lib/google/apis/dataproc_v1/classes.rb', line 734

def software_config
  @software_config
end

#temp_bucketString

Optional. A Cloud Storage bucket used to store ephemeral cluster and jobs data, such as Spark and MapReduce history files. If you do not specify a temp bucket, Dataproc will determine a Cloud Storage location (US, ASIA, or EU) for your cluster's temp bucket according to the Compute Engine zone where your cluster is deployed, and then create and manage this project-level, per- location bucket. The default bucket has a TTL of 90 days, but you can use any TTL (or none) if you specify a bucket (see Dataproc staging and temp buckets ( https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/staging- bucket)). This field requires a Cloud Storage bucket name, not a gs://... URI to a Cloud Storage bucket. Corresponds to the JSON property tempBucket

Returns:

  • (String)


748
749
750
# File 'lib/google/apis/dataproc_v1/classes.rb', line 748

def temp_bucket
  @temp_bucket
end

#worker_configGoogle::Apis::DataprocV1::InstanceGroupConfig

The config settings for Compute Engine resources in an instance group, such as a master or worker group. Corresponds to the JSON property workerConfig



754
755
756
# File 'lib/google/apis/dataproc_v1/classes.rb', line 754

def worker_config
  @worker_config
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
# File 'lib/google/apis/dataproc_v1/classes.rb', line 761

def update!(**args)
  @autoscaling_config = args[:autoscaling_config] if args.key?(:autoscaling_config)
  @config_bucket = args[:config_bucket] if args.key?(:config_bucket)
  @dataproc_metric_config = args[:dataproc_metric_config] if args.key?(:dataproc_metric_config)
  @encryption_config = args[:encryption_config] if args.key?(:encryption_config)
  @endpoint_config = args[:endpoint_config] if args.key?(:endpoint_config)
  @gce_cluster_config = args[:gce_cluster_config] if args.key?(:gce_cluster_config)
  @gke_cluster_config = args[:gke_cluster_config] if args.key?(:gke_cluster_config)
  @initialization_actions = args[:initialization_actions] if args.key?(:initialization_actions)
  @lifecycle_config = args[:lifecycle_config] if args.key?(:lifecycle_config)
  @master_config = args[:master_config] if args.key?(:master_config)
  @metastore_config = args[:metastore_config] if args.key?(:metastore_config)
  @secondary_worker_config = args[:secondary_worker_config] if args.key?(:secondary_worker_config)
  @security_config = args[:security_config] if args.key?(:security_config)
  @software_config = args[:software_config] if args.key?(:software_config)
  @temp_bucket = args[:temp_bucket] if args.key?(:temp_bucket)
  @worker_config = args[:worker_config] if args.key?(:worker_config)
end