#[non_exhaustive]pub struct NetworkConfig {Show 17 fields
pub network: String,
pub subnetwork: String,
pub enable_intra_node_visibility: bool,
pub default_snat_status: Option<DefaultSnatStatus>,
pub enable_l4ilb_subsetting: bool,
pub datapath_provider: DatapathProvider,
pub private_ipv6_google_access: PrivateIPv6GoogleAccess,
pub dns_config: Option<DNSConfig>,
pub service_external_ips_config: Option<ServiceExternalIPsConfig>,
pub gateway_api_config: Option<GatewayAPIConfig>,
pub enable_multi_networking: bool,
pub network_performance_config: Option<ClusterNetworkPerformanceConfig>,
pub enable_fqdn_network_policy: Option<bool>,
pub in_transit_encryption_config: Option<InTransitEncryptionConfig>,
pub enable_cilium_clusterwide_network_policy: Option<bool>,
pub default_enable_private_nodes: Option<bool>,
pub disable_l4_lb_firewall_reconciliation: Option<bool>,
/* private fields */
}Expand description
NetworkConfig reports the relative names of network & subnetwork.
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.network: StringOutput only. The relative name of the Google Compute Engine network to which the cluster is connected. Example: projects/my-project/global/networks/my-network
subnetwork: StringOutput only. The relative name of the Google Compute Engine subnetwork to which the cluster is connected. Example: projects/my-project/regions/us-central1/subnetworks/my-subnet
enable_intra_node_visibility: boolWhether Intra-node visibility is enabled for this cluster. This makes same node pod to pod traffic visible for VPC network.
default_snat_status: Option<DefaultSnatStatus>Whether the cluster disables default in-node sNAT rules. In-node sNAT rules will be disabled when default_snat_status is disabled. When disabled is set to false, default IP masquerade rules will be applied to the nodes to prevent sNAT on cluster internal traffic.
enable_l4ilb_subsetting: boolWhether L4ILB Subsetting is enabled for this cluster.
datapath_provider: DatapathProviderThe desired datapath provider for this cluster. By default, uses the IPTables-based kube-proxy implementation.
private_ipv6_google_access: PrivateIPv6GoogleAccessThe desired state of IPv6 connectivity to Google Services. By default, no private IPv6 access to or from Google Services (all access will be via IPv4)
dns_config: Option<DNSConfig>DNSConfig contains clusterDNS config for this cluster.
service_external_ips_config: Option<ServiceExternalIPsConfig>ServiceExternalIPsConfig specifies if services with externalIPs field are blocked or not.
gateway_api_config: Option<GatewayAPIConfig>GatewayAPIConfig contains the desired config of Gateway API on this cluster.
enable_multi_networking: boolWhether multi-networking is enabled for this cluster.
network_performance_config: Option<ClusterNetworkPerformanceConfig>Network bandwidth tier configuration.
enable_fqdn_network_policy: Option<bool>Whether FQDN Network Policy is enabled on this cluster.
in_transit_encryption_config: Option<InTransitEncryptionConfig>Specify the details of in-transit encryption. Now named inter-node transparent encryption.
enable_cilium_clusterwide_network_policy: Option<bool>Whether CiliumClusterwideNetworkPolicy is enabled on this cluster.
default_enable_private_nodes: Option<bool>Controls whether by default nodes have private IP addresses only. It is invalid to specify both [PrivateClusterConfig.enablePrivateNodes][] and this field at the same time. To update the default setting, use ClusterUpdate.desired_default_enable_private_nodes
disable_l4_lb_firewall_reconciliation: Option<bool>Disable L4 load balancer VPC firewalls to enable firewall policies.
Implementations§
Source§impl NetworkConfig
impl NetworkConfig
pub fn new() -> Self
Sourcepub fn set_network<T: Into<String>>(self, v: T) -> Self
pub fn set_network<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_subnetwork<T: Into<String>>(self, v: T) -> Self
pub fn set_subnetwork<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_enable_intra_node_visibility<T: Into<bool>>(self, v: T) -> Self
pub fn set_enable_intra_node_visibility<T: Into<bool>>(self, v: T) -> Self
Sets the value of enable_intra_node_visibility.
§Example
let x = NetworkConfig::new().set_enable_intra_node_visibility(true);Sourcepub fn set_default_snat_status<T>(self, v: T) -> Selfwhere
T: Into<DefaultSnatStatus>,
pub fn set_default_snat_status<T>(self, v: T) -> Selfwhere
T: Into<DefaultSnatStatus>,
Sets the value of default_snat_status.
§Example
use google_cloud_container_v1::model::DefaultSnatStatus;
let x = NetworkConfig::new().set_default_snat_status(DefaultSnatStatus::default()/* use setters */);Sourcepub fn set_or_clear_default_snat_status<T>(self, v: Option<T>) -> Selfwhere
T: Into<DefaultSnatStatus>,
pub fn set_or_clear_default_snat_status<T>(self, v: Option<T>) -> Selfwhere
T: Into<DefaultSnatStatus>,
Sets or clears the value of default_snat_status.
§Example
use google_cloud_container_v1::model::DefaultSnatStatus;
let x = NetworkConfig::new().set_or_clear_default_snat_status(Some(DefaultSnatStatus::default()/* use setters */));
let x = NetworkConfig::new().set_or_clear_default_snat_status(None::<DefaultSnatStatus>);Sourcepub fn set_enable_l4ilb_subsetting<T: Into<bool>>(self, v: T) -> Self
pub fn set_enable_l4ilb_subsetting<T: Into<bool>>(self, v: T) -> Self
Sets the value of enable_l4ilb_subsetting.
§Example
let x = NetworkConfig::new().set_enable_l4ilb_subsetting(true);Sourcepub fn set_datapath_provider<T: Into<DatapathProvider>>(self, v: T) -> Self
pub fn set_datapath_provider<T: Into<DatapathProvider>>(self, v: T) -> Self
Sets the value of datapath_provider.
§Example
use google_cloud_container_v1::model::DatapathProvider;
let x0 = NetworkConfig::new().set_datapath_provider(DatapathProvider::LegacyDatapath);
let x1 = NetworkConfig::new().set_datapath_provider(DatapathProvider::AdvancedDatapath);Sourcepub fn set_private_ipv6_google_access<T: Into<PrivateIPv6GoogleAccess>>(
self,
v: T,
) -> Self
pub fn set_private_ipv6_google_access<T: Into<PrivateIPv6GoogleAccess>>( self, v: T, ) -> Self
Sets the value of private_ipv6_google_access.
§Example
use google_cloud_container_v1::model::PrivateIPv6GoogleAccess;
let x0 = NetworkConfig::new().set_private_ipv6_google_access(PrivateIPv6GoogleAccess::PrivateIpv6GoogleAccessDisabled);
let x1 = NetworkConfig::new().set_private_ipv6_google_access(PrivateIPv6GoogleAccess::PrivateIpv6GoogleAccessToGoogle);
let x2 = NetworkConfig::new().set_private_ipv6_google_access(PrivateIPv6GoogleAccess::PrivateIpv6GoogleAccessBidirectional);Sourcepub fn set_dns_config<T>(self, v: T) -> Self
pub fn set_dns_config<T>(self, v: T) -> Self
Sets the value of dns_config.
§Example
use google_cloud_container_v1::model::DNSConfig;
let x = NetworkConfig::new().set_dns_config(DNSConfig::default()/* use setters */);Sourcepub fn set_or_clear_dns_config<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_dns_config<T>(self, v: Option<T>) -> Self
Sets or clears the value of dns_config.
§Example
use google_cloud_container_v1::model::DNSConfig;
let x = NetworkConfig::new().set_or_clear_dns_config(Some(DNSConfig::default()/* use setters */));
let x = NetworkConfig::new().set_or_clear_dns_config(None::<DNSConfig>);Sourcepub fn set_service_external_ips_config<T>(self, v: T) -> Selfwhere
T: Into<ServiceExternalIPsConfig>,
pub fn set_service_external_ips_config<T>(self, v: T) -> Selfwhere
T: Into<ServiceExternalIPsConfig>,
Sets the value of service_external_ips_config.
§Example
use google_cloud_container_v1::model::ServiceExternalIPsConfig;
let x = NetworkConfig::new().set_service_external_ips_config(ServiceExternalIPsConfig::default()/* use setters */);Sourcepub fn set_or_clear_service_external_ips_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<ServiceExternalIPsConfig>,
pub fn set_or_clear_service_external_ips_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<ServiceExternalIPsConfig>,
Sets or clears the value of service_external_ips_config.
§Example
use google_cloud_container_v1::model::ServiceExternalIPsConfig;
let x = NetworkConfig::new().set_or_clear_service_external_ips_config(Some(ServiceExternalIPsConfig::default()/* use setters */));
let x = NetworkConfig::new().set_or_clear_service_external_ips_config(None::<ServiceExternalIPsConfig>);Sourcepub fn set_gateway_api_config<T>(self, v: T) -> Selfwhere
T: Into<GatewayAPIConfig>,
pub fn set_gateway_api_config<T>(self, v: T) -> Selfwhere
T: Into<GatewayAPIConfig>,
Sets the value of gateway_api_config.
§Example
use google_cloud_container_v1::model::GatewayAPIConfig;
let x = NetworkConfig::new().set_gateway_api_config(GatewayAPIConfig::default()/* use setters */);Sourcepub fn set_or_clear_gateway_api_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<GatewayAPIConfig>,
pub fn set_or_clear_gateway_api_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<GatewayAPIConfig>,
Sets or clears the value of gateway_api_config.
§Example
use google_cloud_container_v1::model::GatewayAPIConfig;
let x = NetworkConfig::new().set_or_clear_gateway_api_config(Some(GatewayAPIConfig::default()/* use setters */));
let x = NetworkConfig::new().set_or_clear_gateway_api_config(None::<GatewayAPIConfig>);Sourcepub fn set_enable_multi_networking<T: Into<bool>>(self, v: T) -> Self
pub fn set_enable_multi_networking<T: Into<bool>>(self, v: T) -> Self
Sets the value of enable_multi_networking.
§Example
let x = NetworkConfig::new().set_enable_multi_networking(true);Sourcepub fn set_network_performance_config<T>(self, v: T) -> Selfwhere
T: Into<ClusterNetworkPerformanceConfig>,
pub fn set_network_performance_config<T>(self, v: T) -> Selfwhere
T: Into<ClusterNetworkPerformanceConfig>,
Sets the value of network_performance_config.
§Example
use google_cloud_container_v1::model::network_config::ClusterNetworkPerformanceConfig;
let x = NetworkConfig::new().set_network_performance_config(ClusterNetworkPerformanceConfig::default()/* use setters */);Sourcepub fn set_or_clear_network_performance_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<ClusterNetworkPerformanceConfig>,
pub fn set_or_clear_network_performance_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<ClusterNetworkPerformanceConfig>,
Sets or clears the value of network_performance_config.
§Example
use google_cloud_container_v1::model::network_config::ClusterNetworkPerformanceConfig;
let x = NetworkConfig::new().set_or_clear_network_performance_config(Some(ClusterNetworkPerformanceConfig::default()/* use setters */));
let x = NetworkConfig::new().set_or_clear_network_performance_config(None::<ClusterNetworkPerformanceConfig>);Sourcepub fn set_enable_fqdn_network_policy<T>(self, v: T) -> Self
pub fn set_enable_fqdn_network_policy<T>(self, v: T) -> Self
Sets the value of enable_fqdn_network_policy.
§Example
let x = NetworkConfig::new().set_enable_fqdn_network_policy(true);Sourcepub fn set_or_clear_enable_fqdn_network_policy<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_enable_fqdn_network_policy<T>(self, v: Option<T>) -> Self
Sets or clears the value of enable_fqdn_network_policy.
§Example
let x = NetworkConfig::new().set_or_clear_enable_fqdn_network_policy(Some(false));
let x = NetworkConfig::new().set_or_clear_enable_fqdn_network_policy(None::<bool>);Sourcepub fn set_in_transit_encryption_config<T>(self, v: T) -> Selfwhere
T: Into<InTransitEncryptionConfig>,
pub fn set_in_transit_encryption_config<T>(self, v: T) -> Selfwhere
T: Into<InTransitEncryptionConfig>,
Sets the value of in_transit_encryption_config.
§Example
use google_cloud_container_v1::model::InTransitEncryptionConfig;
let x0 = NetworkConfig::new().set_in_transit_encryption_config(InTransitEncryptionConfig::InTransitEncryptionDisabled);
let x1 = NetworkConfig::new().set_in_transit_encryption_config(InTransitEncryptionConfig::InTransitEncryptionInterNodeTransparent);Sourcepub fn set_or_clear_in_transit_encryption_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<InTransitEncryptionConfig>,
pub fn set_or_clear_in_transit_encryption_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<InTransitEncryptionConfig>,
Sets or clears the value of in_transit_encryption_config.
§Example
use google_cloud_container_v1::model::InTransitEncryptionConfig;
let x0 = NetworkConfig::new().set_or_clear_in_transit_encryption_config(Some(InTransitEncryptionConfig::InTransitEncryptionDisabled));
let x1 = NetworkConfig::new().set_or_clear_in_transit_encryption_config(Some(InTransitEncryptionConfig::InTransitEncryptionInterNodeTransparent));
let x_none = NetworkConfig::new().set_or_clear_in_transit_encryption_config(None::<InTransitEncryptionConfig>);Sourcepub fn set_enable_cilium_clusterwide_network_policy<T>(self, v: T) -> Self
pub fn set_enable_cilium_clusterwide_network_policy<T>(self, v: T) -> Self
Sets the value of enable_cilium_clusterwide_network_policy.
§Example
let x = NetworkConfig::new().set_enable_cilium_clusterwide_network_policy(true);Sourcepub fn set_or_clear_enable_cilium_clusterwide_network_policy<T>(
self,
v: Option<T>,
) -> Self
pub fn set_or_clear_enable_cilium_clusterwide_network_policy<T>( self, v: Option<T>, ) -> Self
Sets or clears the value of enable_cilium_clusterwide_network_policy.
§Example
let x = NetworkConfig::new().set_or_clear_enable_cilium_clusterwide_network_policy(Some(false));
let x = NetworkConfig::new().set_or_clear_enable_cilium_clusterwide_network_policy(None::<bool>);Sourcepub fn set_default_enable_private_nodes<T>(self, v: T) -> Self
pub fn set_default_enable_private_nodes<T>(self, v: T) -> Self
Sets the value of default_enable_private_nodes.
§Example
let x = NetworkConfig::new().set_default_enable_private_nodes(true);Sourcepub fn set_or_clear_default_enable_private_nodes<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_default_enable_private_nodes<T>(self, v: Option<T>) -> Self
Sets or clears the value of default_enable_private_nodes.
§Example
let x = NetworkConfig::new().set_or_clear_default_enable_private_nodes(Some(false));
let x = NetworkConfig::new().set_or_clear_default_enable_private_nodes(None::<bool>);Sourcepub fn set_disable_l4_lb_firewall_reconciliation<T>(self, v: T) -> Self
pub fn set_disable_l4_lb_firewall_reconciliation<T>(self, v: T) -> Self
Sets the value of disable_l4_lb_firewall_reconciliation.
§Example
let x = NetworkConfig::new().set_disable_l4_lb_firewall_reconciliation(true);Sourcepub fn set_or_clear_disable_l4_lb_firewall_reconciliation<T>(
self,
v: Option<T>,
) -> Self
pub fn set_or_clear_disable_l4_lb_firewall_reconciliation<T>( self, v: Option<T>, ) -> Self
Sets or clears the value of disable_l4_lb_firewall_reconciliation.
§Example
let x = NetworkConfig::new().set_or_clear_disable_l4_lb_firewall_reconciliation(Some(false));
let x = NetworkConfig::new().set_or_clear_disable_l4_lb_firewall_reconciliation(None::<bool>);Trait Implementations§
Source§impl Clone for NetworkConfig
impl Clone for NetworkConfig
Source§fn clone(&self) -> NetworkConfig
fn clone(&self) -> NetworkConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more