Class: Google::Apis::ComposerV1beta1::NodeConfig
- Inherits:
-
Object
- Object
- Google::Apis::ComposerV1beta1::NodeConfig
- Defined in:
- generated/google/apis/composer_v1beta1/classes.rb,
generated/google/apis/composer_v1beta1/representations.rb,
generated/google/apis/composer_v1beta1/representations.rb
Overview
The configuration information for the Kubernetes Engine nodes running the Apache Airflow software.
Instance Attribute Summary collapse
-
#disk_size_gb ⇒ Fixnum
Optional.
-
#ip_allocation_policy ⇒ Google::Apis::ComposerV1beta1::IpAllocationPolicy
Configuration for controlling how IPs are allocated in the GKE cluster.
-
#location ⇒ String
Optional.
-
#machine_type ⇒ String
Optional.
-
#network ⇒ String
Optional.
-
#oauth_scopes ⇒ Array<String>
Optional.
-
#service_account ⇒ String
Optional.
-
#subnetwork ⇒ String
Optional.
-
#tags ⇒ Array<String>
Optional.
Instance Method Summary collapse
-
#initialize(**args) ⇒ NodeConfig
constructor
A new instance of NodeConfig.
-
#update!(**args) ⇒ Object
Update properties of this object.
Methods included from Google::Apis::Core::JsonObjectSupport
Methods included from Google::Apis::Core::Hashable
Constructor Details
#initialize(**args) ⇒ NodeConfig
Returns a new instance of NodeConfig.
502 503 504 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 502 def initialize(**args) update!(**args) end |
Instance Attribute Details
#disk_size_gb ⇒ Fixnum
Optional. The disk size in GB used for node VMs. Minimum size is 20GB.
If unspecified, defaults to 100GB. Cannot be updated.
Corresponds to the JSON property diskSizeGb
407 408 409 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 407 def disk_size_gb @disk_size_gb end |
#ip_allocation_policy ⇒ Google::Apis::ComposerV1beta1::IpAllocationPolicy
Configuration for controlling how IPs are allocated in the
GKE cluster.
Corresponds to the JSON property ipAllocationPolicy
413 414 415 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 413 def ip_allocation_policy @ip_allocation_policy end |
#location ⇒ String
Optional. The Compute Engine zone in which
to deploy the VMs used to run the Apache Airflow software, specified as a
relative resource
name. For example:
"projects/projectId
/zones/zoneId
".
This location
must belong to the enclosing environment's project and
location. If both this field and nodeConfig.machineType
are specified,
nodeConfig.machineType
must belong to this location
; if both are
unspecified, the service will pick a zone in the Compute Engine region
corresponding to the Cloud Composer location, and propagate that choice to
both fields. If only one field (location
or nodeConfig.machineType
) is
specified, the location information from the specified field will be
propagated to the unspecified field.
Corresponds to the JSON property location
430 431 432 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 430 def location @location end |
#machine_type ⇒ String
Optional. The Compute Engine
machine type used for cluster instances,
specified as a
relative resource
name. For example:
"projects/projectId
/zones/zoneId
/machineTypes/machineTypeId
".
The machineType
must belong to the enclosing environment's project and
location. If both this field and nodeConfig.location
are specified,
this machineType
must belong to the nodeConfig.location
; if both are
unspecified, the service will pick a zone in the Compute Engine region
corresponding to the Cloud Composer location, and propagate that choice to
both fields. If exactly one of this field and nodeConfig.location
is
specified, the location information from the specified field will be
propagated to the unspecified field.
The machineTypeId
must not be a shared-core machine
type.
If this field is unspecified, the machineTypeId
defaults
to "n1-standard-1".
Corresponds to the JSON property machineType
452 453 454 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 452 def machine_type @machine_type end |
#network ⇒ String
Optional. The Compute Engine network to be used for machine
communications, specified as a
relative resource
name. For example:
"projects/projectId
/global/networks/networkId
".
If unspecified, the default network in the environment's project is used.
If a Custom Subnet Network
is provided, nodeConfig.subnetwork
must also be provided. For
Shared VPC subnetwork requirements, see
nodeConfig.subnetwork
.
Corresponds to the JSON property network
466 467 468 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 466 def network @network end |
#oauth_scopes ⇒ Array<String>
Optional. The set of Google API scopes to be made available on all
node VMs. If oauth_scopes
is empty, defaults to
["https://www.googleapis.com/auth/cloud-platform"]. Cannot be updated.
Corresponds to the JSON property oauthScopes
473 474 475 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 473 def oauth_scopes @oauth_scopes end |
#service_account ⇒ String
Optional. The Google Cloud Platform Service Account to be used by the node
VMs. If a service account is not specified, the "default" Compute Engine
service account is used. Cannot be updated.
Corresponds to the JSON property serviceAccount
480 481 482 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 480 def service_account @service_account end |
#subnetwork ⇒ String
Optional. The Compute Engine subnetwork to be used for machine
communications, specified as a
relative resource
name. For example:
"projects/projectId
/regions/regionId
/subnetworks/subnetworkId
"
If a subnetwork is provided, nodeConfig.network
must also be provided,
and the subnetwork must belong to the enclosing environment's project and
location.
Corresponds to the JSON property subnetwork
492 493 494 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 492 def subnetwork @subnetwork end |
#tags ⇒ Array<String>
Optional. The list of instance tags applied to all node VMs. Tags are used
to identify valid sources or targets for network firewalls. Each tag within
the list must comply with RFC1035.
Cannot be updated.
Corresponds to the JSON property tags
500 501 502 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 500 def @tags end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
507 508 509 510 511 512 513 514 515 516 517 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 507 def update!(**args) @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb) @ip_allocation_policy = args[:ip_allocation_policy] if args.key?(:ip_allocation_policy) @location = args[:location] if args.key?(:location) @machine_type = args[:machine_type] if args.key?(:machine_type) @network = args[:network] if args.key?(:network) @oauth_scopes = args[:oauth_scopes] if args.key?(:oauth_scopes) @service_account = args[:service_account] if args.key?(:service_account) @subnetwork = args[:subnetwork] if args.key?(:subnetwork) @tags = args[:tags] if args.key?(:tags) end |