Struct google_api_proto::google::cloud::orchestration::airflow::service::v1beta1::NodeConfig
source · pub struct NodeConfig {Show 13 fields
pub location: String,
pub machine_type: String,
pub network: String,
pub subnetwork: String,
pub disk_size_gb: i32,
pub oauth_scopes: Vec<String>,
pub service_account: String,
pub tags: Vec<String>,
pub ip_allocation_policy: Option<IpAllocationPolicy>,
pub max_pods_per_node: i32,
pub enable_ip_masq_agent: bool,
pub composer_network_attachment: String,
pub composer_internal_ipv4_cidr_block: String,
}
Expand description
The configuration information for the Kubernetes Engine nodes running the Apache Airflow software.
Fields§
§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.
This field is supported for Cloud Composer environments in versions composer-1..-airflow-..*.
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”.
This field is supported for Cloud Composer environments in versions composer-1..-airflow-..*.
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
.
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.
disk_size_gb: i32
Optional. The disk size in GB used for node VMs. Minimum size is 30GB. If unspecified, defaults to 100GB. Cannot be updated.
This field is supported for Cloud Composer environments in versions composer-1..-airflow-..*.
oauth_scopes: Vec<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.
This field is supported for Cloud Composer environments in versions composer-1..-airflow-..*.
service_account: String
Optional. The Google Cloud Platform Service Account to be used by the workloads. If a service account is not specified, the “default” Compute Engine service account is used. Cannot be updated.
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.
ip_allocation_policy: Option<IpAllocationPolicy>
Optional. The IPAllocationPolicy fields for the GKE cluster.
max_pods_per_node: i32
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]
(https://cloud.google.com/kubernetes-engine/docs/how-to/flexible-pod-cidr).
Cannot be updated.
This field is supported for Cloud Composer environments in versions composer-1..-airflow-..*.
enable_ip_masq_agent: bool
Optional. Deploys ‘ip-masq-agent’ daemon set in the GKE cluster and defines nonMasqueradeCIDRs equals to pod IP range so IP masquerading is used for all destination addresses, except between pods traffic.
See: https://cloud.google.com/kubernetes-engine/docs/how-to/ip-masquerade-agent
composer_network_attachment: String
Optional. Network Attachment that Cloud Composer environment is connected to, which provides connectivity with a user’s VPC network. Takes precedence over network and subnetwork settings. If not provided, but network and subnetwork are defined during environment, it will be provisioned. If not provided and network and subnetwork are also empty, then connectivity to user’s VPC network is disabled. Network attachment must be provided in format projects/{project}/regions/{region}/networkAttachments/{networkAttachment}.
This field is supported for Cloud Composer environments in versions composer-3..-airflow-..* and newer.
composer_internal_ipv4_cidr_block: String
Optional. The IP range in CIDR notation to use internally by Cloud Composer. IP addresses are not reserved - and the same range can be used by multiple Cloud Composer environments. In case of overlap, IPs from this range will not be accessible in the user’s VPC network. Cannot be updated. If not specified, the default value of ‘100.64.128.0/20’ is used.
This field is supported for Cloud Composer environments in versions composer-3..-airflow-..* and newer.
Trait Implementations§
source§impl Clone for NodeConfig
impl Clone for NodeConfig
source§fn clone(&self) -> NodeConfig
fn clone(&self) -> NodeConfig
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for NodeConfig
impl Debug for NodeConfig
source§impl Default for NodeConfig
impl Default for NodeConfig
source§impl Message for NodeConfig
impl Message for NodeConfig
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moresource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.source§impl PartialEq for NodeConfig
impl PartialEq for NodeConfig
source§fn eq(&self, other: &NodeConfig) -> bool
fn eq(&self, other: &NodeConfig) -> bool
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for NodeConfig
Auto Trait Implementations§
impl Freeze for NodeConfig
impl RefUnwindSafe for NodeConfig
impl Send for NodeConfig
impl Sync for NodeConfig
impl Unpin for NodeConfig
impl UnwindSafe for NodeConfig
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request