class Google::Apis::ComposerV1::NodeConfig

The configuration information for the Kubernetes Engine nodes running the Apache Airflow software.

Attributes

disk_size_gb[RW]

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` @return [Fixnum]

ip_allocation_policy[RW]

Configuration for controlling how IPs are allocated in the GKE cluster running the Apache Airflow software. Corresponds to the JSON property `ipAllocationPolicy` @return [Google::Apis::ComposerV1::IpAllocationPolicy]

location[RW]

Optional. The Compute Engine [zone](/compute/docs/regions-zones) in which to deploy the VMs used to run the Apache Airflow software, specified as a [ relative resource name](/apis/design/resource_names#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` @return [String]

machine_type[RW]

Optional. The Compute Engine [machine type](/compute/docs/machine-types) used for cluster instances, specified as a [relative resource name](/apis/design/ resource_names#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](/compute/docs/machine-types#sharedcore). If this field is unspecified, the `machineTypeId` defaults to “n1-standard-1”. Corresponds to the JSON property `machineType` @return [String]

network[RW]

Optional. The Compute Engine network to be used for machine communications, specified as a [relative resource name](/apis/design/resource_names# relative_resource_name). For example: “projects/`projectId`/global/networks/` networkId`”. If unspecified, the “default” network ID in the environment's project is used. If a [Custom Subnet Network](/vpc/docs/vpc# vpc_networks_and_subnets) is provided, `nodeConfig.subnetwork` must also be provided. For [Shared VPC](/vpc/docs/shared-vpc) subnetwork requirements, see ` nodeConfig.subnetwork`. Corresponds to the JSON property `network` @return [String]

oauth_scopes[RW]

Optional. The set of Google API scopes to be made available on all node VMs. If `oauth_scopes` is empty, defaults to [“www.googleapis.com/auth/ cloud-platform”]. Cannot be updated. Corresponds to the JSON property `oauthScopes` @return [Array<String>]

service_account[RW]

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` @return [String]

subnetwork[RW]

Optional. The Compute Engine subnetwork to be used for machine communications, specified as a [relative resource name](/apis/design/resource_names# 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` @return [String]

tags[RW]

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](www.ietf.org/rfc/rfc1035.txt). Cannot be updated. Corresponds to the JSON property `tags` @return [Array<String>]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/composer_v1/classes.rb, line 642
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/composer_v1/classes.rb, line 647
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