Class: Google::Apis::DataprocV1::GceClusterConfig
- Inherits:
-
Object
- Object
- Google::Apis::DataprocV1::GceClusterConfig
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- generated/google/apis/dataproc_v1/classes.rb,
generated/google/apis/dataproc_v1/representations.rb,
generated/google/apis/dataproc_v1/representations.rb
Overview
Common config settings for resources of Google 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 Google 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.
-
#service_account ⇒ String
Optional.
-
#service_account_scopes ⇒ Array<String>
Optional.
-
#subnetwork_uri ⇒ String
Optional.
-
#tags ⇒ Array<String>
The Google Compute Engine tags to add to all instances (see Tagging instances).
-
#zone_uri ⇒ String
Required.
Instance Method Summary collapse
-
#initialize(**args) ⇒ GceClusterConfig
constructor
A new instance of GceClusterConfig.
-
#update!(**args) ⇒ Object
Update properties of this object.
Methods included from Core::JsonObjectSupport
Methods included from Core::Hashable
Constructor Details
#initialize(**args) ⇒ GceClusterConfig
Returns a new instance of GceClusterConfig
1576 1577 1578 |
# File 'generated/google/apis/dataproc_v1/classes.rb', line 1576 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
1536 1537 1538 |
# File 'generated/google/apis/dataproc_v1/classes.rb', line 1536 def internal_ip_only @internal_ip_only end |
#metadata ⇒ Hash<String,String>
The Google 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
1526 1527 1528 |
# File 'generated/google/apis/dataproc_v1/classes.rb', line 1526 def @metadata end |
#network_uri ⇒ String
Optional. The Google 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 for more information). Example: https://www.googleapis.com/compute/
v1/projects/[project_id]/regions/global/default.
Corresponds to the JSON property networkUri
1512 1513 1514 |
# File 'generated/google/apis/dataproc_v1/classes.rb', line 1512 def network_uri @network_uri end |
#service_account ⇒ String
Optional. The service account of the instances. Defaults to the default Google
Compute Engine service account. Custom service accounts need permissions
equivalent to the folloing IAM roles:
roles/logging.logWriter
roles/storage.objectAdmin(see https://cloud.google.com/compute/docs/access/
service-accounts#custom_service_accounts for more information). Example: [
account_id]@[project_id].iam.gserviceaccount.com
Corresponds to the JSON property serviceAccount
1567 1568 1569 |
# File 'generated/google/apis/dataproc_v1/classes.rb', line 1567 def service_account @service_account end |
#service_account_scopes ⇒ Array<String>
Optional. The URIs of service account scopes to be included in Google 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
1551 1552 1553 |
# File 'generated/google/apis/dataproc_v1/classes.rb', line 1551 def service_account_scopes @service_account_scopes end |
#subnetwork_uri ⇒ String
Optional. The Google Compute Engine subnetwork to be used for machine
communications. Cannot be specified with network_uri. Example: https://www.
googleapis.com/compute/v1/projects/[project_id]/regions/us-east1/sub0.
Corresponds to the JSON property subnetworkUri
1574 1575 1576 |
# File 'generated/google/apis/dataproc_v1/classes.rb', line 1574 def subnetwork_uri @subnetwork_uri end |
#tags ⇒ Array<String>
The Google Compute Engine tags to add to all instances (see Tagging instances).
Corresponds to the JSON property tags
1556 1557 1558 |
# File 'generated/google/apis/dataproc_v1/classes.rb', line 1556 def @tags end |
#zone_uri ⇒ String
Required. The zone where the Google Compute Engine cluster will be located.
Example: https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[
zone].
Corresponds to the JSON property zoneUri
1519 1520 1521 |
# File 'generated/google/apis/dataproc_v1/classes.rb', line 1519 def zone_uri @zone_uri end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 |
# File 'generated/google/apis/dataproc_v1/classes.rb', line 1581 def update!(**args) @network_uri = args[:network_uri] if args.key?(:network_uri) @zone_uri = args[:zone_uri] if args.key?(:zone_uri) @metadata = args[:metadata] if args.key?(:metadata) @internal_ip_only = args[:internal_ip_only] if args.key?(:internal_ip_only) @service_account_scopes = args[:service_account_scopes] if args.key?(:service_account_scopes) @tags = args[:tags] if args.key?(:tags) @service_account = args[:service_account] if args.key?(:service_account) @subnetwork_uri = args[:subnetwork_uri] if args.key?(:subnetwork_uri) end |