Class: Google::Apis::ComposerV1beta1::NodeConfig
- Inherits:
-
Object
- Object
- Google::Apis::ComposerV1beta1::NodeConfig
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- 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.
-
#max_pods_per_node ⇒ Fixnum
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.
Constructor Details
#initialize(**args) ⇒ NodeConfig
Returns a new instance of NodeConfig.
662 663 664 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 662 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
567 568 569 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 567 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
572 573 574 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 572 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
587 588 589 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 587 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
604 605 606 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 604 def machine_type @machine_type end |
#max_pods_per_node ⇒ Fixnum
Optional. The maximum number of pods per node in the Cloud Composer GKE
cluster. The value must be between 8 and 110 and it can be set only if the
environment is VPC-native. The default value is 32. Values of this field will
be propagated both to the default-pool
node pool of the newly created GKE
cluster, and to the default "Maximum Pods per Node" value which is used for
newly created node pools if their value is not explicitly set during node pool
creation. For more information, see Optimizing IP address allocation. Cannot be
updated.
Corresponds to the JSON property maxPodsPerNode
617 618 619 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 617 def max_pods_per_node @max_pods_per_node 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
628 629 630 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 628 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
635 636 637 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 635 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
642 643 644 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 642 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
652 653 654 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 652 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
660 661 662 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 660 def @tags end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
667 668 669 670 671 672 673 674 675 676 677 678 |
# File 'generated/google/apis/composer_v1beta1/classes.rb', line 667 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) @max_pods_per_node = args[:max_pods_per_node] if args.key?(:max_pods_per_node) @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 |