#[non_exhaustive]pub struct NodeNetworkConfig {
pub create_pod_range: bool,
pub pod_range: String,
pub pod_ipv4_cidr_block: String,
pub enable_private_nodes: Option<bool>,
pub network_performance_config: Option<NetworkPerformanceConfig>,
pub pod_cidr_overprovision_config: Option<PodCIDROverprovisionConfig>,
pub additional_node_network_configs: Vec<AdditionalNodeNetworkConfig>,
pub additional_pod_network_configs: Vec<AdditionalPodNetworkConfig>,
pub pod_ipv4_range_utilization: f64,
}Expand description
Parameters for node pool-level network config.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.create_pod_range: boolInput only. Whether to create a new range for pod IPs in this node pool.
Defaults are provided for pod_range and pod_ipv4_cidr_block if they
are not specified.
If neither create_pod_range or pod_range are specified, the
cluster-level default (ip_allocation_policy.cluster_ipv4_cidr_block) is
used.
Only applicable if ip_allocation_policy.use_ip_aliases is true.
This field cannot be changed after the node pool has been created.
pod_range: StringThe ID of the secondary range for pod IPs.
If create_pod_range is true, this ID is used for the new range.
If create_pod_range is false, uses an existing secondary range with this
ID.
Only applicable if ip_allocation_policy.use_ip_aliases is true.
This field cannot be changed after the node pool has been created.
pod_ipv4_cidr_block: StringThe IP address range for pod IPs in this node pool.
Only applicable if create_pod_range is true.
Set to blank to have a range chosen with the default size.
Set to /netmask (e.g. /14) to have a range chosen with a specific
netmask.
Set to a
CIDR
notation (e.g. 10.96.0.0/14) to pick a specific range to use.
Only applicable if ip_allocation_policy.use_ip_aliases is true.
This field cannot be changed after the node pool has been created.
enable_private_nodes: Option<bool>Whether nodes have internal IP addresses only. If enable_private_nodes is not specified, then the value is derived from [Cluster.NetworkConfig.default_enable_private_nodes][]
network_performance_config: Option<NetworkPerformanceConfig>Network bandwidth tier configuration.
pod_cidr_overprovision_config: Option<PodCIDROverprovisionConfig>[PRIVATE FIELD] Pod CIDR size overprovisioning config for the nodepool.
Pod CIDR size per node depends on max_pods_per_node. By default, the value of max_pods_per_node is rounded off to next power of 2 and we then double that to get the size of pod CIDR block per node. Example: max_pods_per_node of 30 would result in 64 IPs (/26).
This config can disable the doubling of IPs (we still round off to next power of 2) Example: max_pods_per_node of 30 will result in 32 IPs (/27) when overprovisioning is disabled.
additional_node_network_configs: Vec<AdditionalNodeNetworkConfig>We specify the additional node networks for this node pool using this list. Each node network corresponds to an additional interface
additional_pod_network_configs: Vec<AdditionalPodNetworkConfig>We specify the additional pod networks for this node pool using this list. Each pod network corresponds to an additional alias IP range for the node
pod_ipv4_range_utilization: f64Output only. The utilization of the IPv4 range for the pod. The ratio is Usage/[Total number of IPs in the secondary range], Usage=numNodesnumZonespodIPsPerNode.
Implementations§
Source§impl NodeNetworkConfig
impl NodeNetworkConfig
Sourcepub fn set_create_pod_range<T: Into<bool>>(self, v: T) -> Self
pub fn set_create_pod_range<T: Into<bool>>(self, v: T) -> Self
Sets the value of create_pod_range.
Sourcepub fn set_pod_range<T: Into<String>>(self, v: T) -> Self
pub fn set_pod_range<T: Into<String>>(self, v: T) -> Self
Sets the value of pod_range.
Sourcepub fn set_pod_ipv4_cidr_block<T: Into<String>>(self, v: T) -> Self
pub fn set_pod_ipv4_cidr_block<T: Into<String>>(self, v: T) -> Self
Sets the value of pod_ipv4_cidr_block.
Sourcepub fn set_enable_private_nodes<T: Into<Option<bool>>>(self, v: T) -> Self
pub fn set_enable_private_nodes<T: Into<Option<bool>>>(self, v: T) -> Self
Sets the value of enable_private_nodes.
Sourcepub fn set_network_performance_config<T: Into<Option<NetworkPerformanceConfig>>>(
self,
v: T,
) -> Self
pub fn set_network_performance_config<T: Into<Option<NetworkPerformanceConfig>>>( self, v: T, ) -> Self
Sets the value of network_performance_config.
Sourcepub fn set_pod_cidr_overprovision_config<T: Into<Option<PodCIDROverprovisionConfig>>>(
self,
v: T,
) -> Self
pub fn set_pod_cidr_overprovision_config<T: Into<Option<PodCIDROverprovisionConfig>>>( self, v: T, ) -> Self
Sets the value of pod_cidr_overprovision_config.
Sourcepub fn set_pod_ipv4_range_utilization<T: Into<f64>>(self, v: T) -> Self
pub fn set_pod_ipv4_range_utilization<T: Into<f64>>(self, v: T) -> Self
Sets the value of pod_ipv4_range_utilization.
Sourcepub fn set_additional_node_network_configs<T, V>(self, v: T) -> Self
pub fn set_additional_node_network_configs<T, V>(self, v: T) -> Self
Sets the value of additional_node_network_configs.
Sourcepub fn set_additional_pod_network_configs<T, V>(self, v: T) -> Self
pub fn set_additional_pod_network_configs<T, V>(self, v: T) -> Self
Sets the value of additional_pod_network_configs.
Trait Implementations§
Source§impl Clone for NodeNetworkConfig
impl Clone for NodeNetworkConfig
Source§fn clone(&self) -> NodeNetworkConfig
fn clone(&self) -> NodeNetworkConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more