Class: Google::Apis::DataprocV1::GceClusterConfig
- Inherits:
-
Object
- Object
- Google::Apis::DataprocV1::GceClusterConfig
- 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
Common config settings for resources of Compute Engine cluster instances, applicable to all instances in the cluster.
Instance Attribute Summary collapse
-
#internal_ip_only ⇒ Boolean
(also: #internal_ip_only?)
Optional.
-
#metadata ⇒ Hash<String,String>
The Compute Engine metadata entries to add to all instances (see Project and instance metadata (https://cloud.google.com/compute/docs/storing-retrieving- metadata#project_and_instance_metadata)).
-
#network_uri ⇒ String
Optional.
-
#node_group_affinity ⇒ Google::Apis::DataprocV1::NodeGroupAffinity
Node Group Affinity for clusters using sole-tenant node groups.
-
#private_ipv6_google_access ⇒ String
Optional.
-
#reservation_affinity ⇒ Google::Apis::DataprocV1::ReservationAffinity
Reservation Affinity for consuming Zonal reservation.
-
#service_account ⇒ String
Optional.
-
#service_account_scopes ⇒ Array<String>
Optional.
-
#shielded_instance_config ⇒ Google::Apis::DataprocV1::ShieldedInstanceConfig
Shielded Instance Config for clusters using Compute Engine Shielded VMs (https: //cloud.google.com/security/shielded-cloud/shielded-vm).
-
#subnetwork_uri ⇒ String
Optional.
-
#tags ⇒ Array<String>
The Compute Engine tags to add to all instances (see Tagging instances (https:/ /cloud.google.com/compute/docs/label-or-tag-resources#tags)).
-
#zone_uri ⇒ String
Optional.
Instance Method Summary collapse
-
#initialize(**args) ⇒ GceClusterConfig
constructor
A new instance of GceClusterConfig.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ GceClusterConfig
Returns a new instance of GceClusterConfig.
1030 1031 1032 |
# File 'lib/google/apis/dataproc_v1/classes.rb', line 1030 def initialize(**args) update!(**args) end |
Instance Attribute Details
#internal_ip_only ⇒ Boolean Also known as: internal_ip_only?
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
937 938 939 |
# File 'lib/google/apis/dataproc_v1/classes.rb', line 937 def internal_ip_only @internal_ip_only end |
#metadata ⇒ Hash<String,String>
The Compute Engine metadata entries to add to all instances (see Project and
instance metadata (https://cloud.google.com/compute/docs/storing-retrieving-
metadata#project_and_instance_metadata)).
Corresponds to the JSON property metadata
945 946 947 |
# File 'lib/google/apis/dataproc_v1/classes.rb', line 945 def @metadata end |
#network_uri ⇒ 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: https://www.googleapis.com/
compute/v1/projects/[project_id]/regions/global/default projects/[project_id]/
regions/global/default default
Corresponds to the JSON property networkUri
957 958 959 |
# File 'lib/google/apis/dataproc_v1/classes.rb', line 957 def network_uri @network_uri end |
#node_group_affinity ⇒ Google::Apis::DataprocV1::NodeGroupAffinity
Node Group Affinity for clusters using sole-tenant node groups.
Corresponds to the JSON property nodeGroupAffinity
962 963 964 |
# File 'lib/google/apis/dataproc_v1/classes.rb', line 962 def node_group_affinity @node_group_affinity end |
#private_ipv6_google_access ⇒ String
Optional. The type of IPv6 access for a cluster.
Corresponds to the JSON property privateIpv6GoogleAccess
967 968 969 |
# File 'lib/google/apis/dataproc_v1/classes.rb', line 967 def private_ipv6_google_access @private_ipv6_google_access end |
#reservation_affinity ⇒ Google::Apis::DataprocV1::ReservationAffinity
Reservation Affinity for consuming Zonal reservation.
Corresponds to the JSON property reservationAffinity
972 973 974 |
# File 'lib/google/apis/dataproc_v1/classes.rb', line 972 def reservation_affinity @reservation_affinity end |
#service_account ⇒ String
Optional. The Dataproc service account (https://cloud.google.com/dataproc/docs/
concepts/configuring-clusters/service-accounts#service_accounts_in_dataproc) (
also see VM Data Plane identity (https://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 (https://cloud.
google.com/compute/docs/access/service-accounts#default_service_account) is
used.
Corresponds to the JSON property serviceAccount
984 985 986 |
# File 'lib/google/apis/dataproc_v1/classes.rb', line 984 def service_account @service_account end |
#service_account_scopes ⇒ Array<String>
Optional. The URIs of service account scopes to be included in Compute Engine
instances. The following base set of scopes is always included: https://www.
googleapis.com/auth/cloud.useraccounts.readonly https://www.googleapis.com/
auth/devstorage.read_write https://www.googleapis.com/auth/logging.writeIf no
scopes are specified, the following defaults are also provided: https://www.
googleapis.com/auth/bigquery https://www.googleapis.com/auth/bigtable.admin.
table https://www.googleapis.com/auth/bigtable.data https://www.googleapis.com/
auth/devstorage.full_control
Corresponds to the JSON property serviceAccountScopes
996 997 998 |
# File 'lib/google/apis/dataproc_v1/classes.rb', line 996 def service_account_scopes @service_account_scopes end |
#shielded_instance_config ⇒ Google::Apis::DataprocV1::ShieldedInstanceConfig
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
1002 1003 1004 |
# File 'lib/google/apis/dataproc_v1/classes.rb', line 1002 def shielded_instance_config @shielded_instance_config end |
#subnetwork_uri ⇒ String
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: https://www.googleapis.com/compute/v1/projects/[
project_id]/regions/us-east1/subnetworks/sub0 projects/[project_id]/regions/us-
east1/subnetworks/sub0 sub0
Corresponds to the JSON property subnetworkUri
1011 1012 1013 |
# File 'lib/google/apis/dataproc_v1/classes.rb', line 1011 def subnetwork_uri @subnetwork_uri end |
#tags ⇒ Array<String>
The Compute Engine tags to add to all instances (see Tagging instances (https:/
/cloud.google.com/compute/docs/label-or-tag-resources#tags)).
Corresponds to the JSON property tags
1017 1018 1019 |
# File 'lib/google/apis/dataproc_v1/classes.rb', line 1017 def @tags end |
#zone_uri ⇒ 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: https://www.googleapis.
com/compute/v1/projects/[project_id]/zones/[zone] projects/[project_id]/zones/[
zone] us-central1-f
Corresponds to the JSON property zoneUri
1028 1029 1030 |
# File 'lib/google/apis/dataproc_v1/classes.rb', line 1028 def zone_uri @zone_uri end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 |
# File 'lib/google/apis/dataproc_v1/classes.rb', line 1035 def update!(**args) @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 |