class Google::Apis::DataprocV1::GceClusterConfig
Common config settings for resources of Compute Engine cluster instances, applicable to all instances in the cluster.
Attributes
Confidential Instance Config for clusters using Confidential VMs (https:// cloud.google.com/compute/confidential-vm/docs) Corresponds to the JSON property `confidentialInstanceConfig` @return [Google::Apis::DataprocV1::ConfidentialInstanceConfig]
Optional. If true, all instances in the cluster will only have internal IP addresses. By default, clusters are not restricted to internal IP addresses, and will have ephemeral external IP addresses assigned to each instance. This internal_ip_only
restriction can only be enabled for subnetwork enabled networks, and all off-cluster dependencies must be configured to be accessible without external IP addresses. Corresponds to the JSON property `internalIpOnly` @return [Boolean]
Optional. If true, all instances in the cluster will only have internal IP addresses. By default, clusters are not restricted to internal IP addresses, and will have ephemeral external IP addresses assigned to each instance. This internal_ip_only
restriction can only be enabled for subnetwork enabled networks, and all off-cluster dependencies must be configured to be accessible without external IP addresses. Corresponds to the JSON property `internalIpOnly` @return [Boolean]
The Compute Engine metadata entries to add to all instances (see Project and instance metadata (cloud.google.com/compute/docs/storing-retrieving- metadata#project_and_instance_metadata)). Corresponds to the JSON property `metadata` @return [Hash<String,String>]
Optional. The Compute Engine network to be used for machine communications. Cannot be specified with subnetwork_uri. If neither network_uri
nor subnetwork_uri
is specified, the “default” network of the project is used, if it exists. Cannot be a “Custom Subnet Network” (see Using Subnetworks (https:// cloud.google.com/compute/docs/subnetworks) for more information).A full URL, partial URI, or short name are valid. Examples: www.googleapis.com/ compute/v1/projects//regions/global/default projects// regions/global/default default Corresponds to the JSON property `networkUri` @return [String]
Node Group Affinity for clusters using sole-tenant node groups. Corresponds to the JSON property `nodeGroupAffinity` @return [Google::Apis::DataprocV1::NodeGroupAffinity]
Optional. The type of IPv6 access for a cluster. Corresponds to the JSON property `privateIpv6GoogleAccess` @return [String]
Reservation Affinity for consuming Zonal reservation. Corresponds to the JSON property `reservationAffinity` @return [Google::Apis::DataprocV1::ReservationAffinity]
Optional. The Dataproc service account (cloud.google.com/dataproc/docs/ concepts/configuring-clusters/service-accounts#service_accounts_in_dataproc) ( also see VM Data Plane identity (cloud.google.com/dataproc/docs/ concepts/iam/dataproc-principals#vm_service_account_data_plane_identity)) used by Dataproc cluster VM instances to access Google
Cloud Platform services.If not specified, the Compute Engine default service account (cloud. google.com/compute/docs/access/service-accounts#default_service_account) is used. Corresponds to the JSON property `serviceAccount` @return [String]
Optional. The URIs of service account scopes to be included in Compute Engine instances. The following base set of scopes is always included: www. googleapis.com/auth/cloud.useraccounts.readonly www.googleapis.com/ auth/devstorage.read_write www.googleapis.com/auth/logging.writeIf no scopes are specified, the following defaults are also provided: www. googleapis.com/auth/bigquery www.googleapis.com/auth/bigtable.admin. table www.googleapis.com/auth/bigtable.data www.googleapis.com/ auth/devstorage.full_control Corresponds to the JSON property `serviceAccountScopes` @return [Array<String>]
Shielded Instance Config for clusters using Compute Engine Shielded VMs (https: //cloud.google.com/security/shielded-cloud/shielded-vm). Corresponds to the JSON property `shieldedInstanceConfig` @return [Google::Apis::DataprocV1::ShieldedInstanceConfig]
Optional. The Compute Engine subnetwork to be used for machine communications. Cannot be specified with network_uri.A full URL, partial URI, or short name are valid. Examples: www.googleapis.com/compute/v1/projects/[ project_id]/regions/us-east1/subnetworks/sub0 projects//regions/us- east1/subnetworks/sub0 sub0 Corresponds to the JSON property `subnetworkUri` @return [String]
Optional. The zone where the Compute Engine cluster will be located. On a create request, it is required in the “global” region. If omitted in a non- global Dataproc region, the service will pick a zone in the corresponding Compute Engine region. On a get request, zone will always be present.A full URL, partial URI, or short name are valid. Examples: www.googleapis. com/compute/v1/projects//zones/ projects//zones/[ zone] us-central1-f Corresponds to the JSON property `zoneUri` @return [String]
Public Class Methods
# File lib/google/apis/dataproc_v1/classes.rb, line 1122 def initialize(**args) update!(**args) end
Public Instance Methods
Update properties of this object
# File lib/google/apis/dataproc_v1/classes.rb, line 1127 def update!(**args) @confidential_instance_config = args[:confidential_instance_config] if args.key?(:confidential_instance_config) @internal_ip_only = args[:internal_ip_only] if args.key?(:internal_ip_only) @metadata = args[:metadata] if args.key?(:metadata) @network_uri = args[:network_uri] if args.key?(:network_uri) @node_group_affinity = args[:node_group_affinity] if args.key?(:node_group_affinity) @private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access) @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity) @service_account = args[:service_account] if args.key?(:service_account) @service_account_scopes = args[:service_account_scopes] if args.key?(:service_account_scopes) @shielded_instance_config = args[:shielded_instance_config] if args.key?(:shielded_instance_config) @subnetwork_uri = args[:subnetwork_uri] if args.key?(:subnetwork_uri) @tags = args[:tags] if args.key?(:tags) @zone_uri = args[:zone_uri] if args.key?(:zone_uri) end