Class: Google::Apis::ContainerV1beta1::NodeNetworkConfig

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/container_v1beta1/classes.rb,
lib/google/apis/container_v1beta1/representations.rb,
lib/google/apis/container_v1beta1/representations.rb

Overview

Parameters for node pool-level network config.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ NodeNetworkConfig

Returns a new instance of NodeNetworkConfig.



6851
6852
6853
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6851

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#accelerator_network_profileString

Immutable. The accelerator network profile for the node pool. For now the only valid value is "auto". If specified, the network configuration of the nodes in this node pool will be managed by this profile for the supported machine types, zone, etc. Corresponds to the JSON property acceleratorNetworkProfile

Returns:

  • (String)


6768
6769
6770
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6768

def accelerator_network_profile
  @accelerator_network_profile
end

#additional_node_network_configsArray<Google::Apis::ContainerV1beta1::AdditionalNodeNetworkConfig>

We specify the additional node networks for this node pool using this list. Each node network corresponds to an additional interface Corresponds to the JSON property additionalNodeNetworkConfigs



6774
6775
6776
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6774

def additional_node_network_configs
  @additional_node_network_configs
end

#additional_pod_network_configsArray<Google::Apis::ContainerV1beta1::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 Corresponds to the JSON property additionalPodNetworkConfigs



6780
6781
6782
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6780

def additional_pod_network_configs
  @additional_pod_network_configs
end

#create_pod_rangeBoolean Also known as: create_pod_range?

Input 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. Corresponds to the JSON property createPodRange

Returns:

  • (Boolean)


6790
6791
6792
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6790

def create_pod_range
  @create_pod_range
end

#enable_private_nodesBoolean Also known as: enable_private_nodes?

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 Corresponds to the JSON property enablePrivateNodes

Returns:

  • (Boolean)


6798
6799
6800
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6798

def enable_private_nodes
  @enable_private_nodes
end

#network_performance_configGoogle::Apis::ContainerV1beta1::NetworkPerformanceConfig

Configuration of all network bandwidth tiers Corresponds to the JSON property networkPerformanceConfig



6804
6805
6806
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6804

def network_performance_config
  @network_performance_config
end

#network_tier_configGoogle::Apis::ContainerV1beta1::NetworkTierConfig

NetworkTierConfig contains network tier information. Corresponds to the JSON property networkTierConfig



6809
6810
6811
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6809

def network_tier_config
  @network_tier_config
end

#pod_cidr_overprovision_configGoogle::Apis::ContainerV1beta1::PodCidrOverprovisionConfig

[PRIVATE FIELD] Config for pod CIDR size overprovisioning. Corresponds to the JSON property podCidrOverprovisionConfig



6814
6815
6816
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6814

def pod_cidr_overprovision_config
  @pod_cidr_overprovision_config
end

#pod_ipv4_cidr_blockString

The 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. Corresponds to the JSON property podIpv4CidrBlock

Returns:

  • (String)


6825
6826
6827
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6825

def pod_ipv4_cidr_block
  @pod_ipv4_cidr_block
end

#pod_ipv4_range_utilizationFloat

Output only. The utilization of the IPv4 range for the pod. The ratio is Usage/ [Total number of IPs in the secondary range], Usage=numNodes*numZones* podIPsPerNode. Corresponds to the JSON property podIpv4RangeUtilization

Returns:

  • (Float)


6832
6833
6834
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6832

def pod_ipv4_range_utilization
  @pod_ipv4_range_utilization
end

#pod_rangeString

The 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. Corresponds to the JSON property podRange

Returns:

  • (String)


6841
6842
6843
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6841

def pod_range
  @pod_range
end

#subnetworkString

The subnetwork path for the node pool. Format: projects/project/regions/ region/subnetworks/subnetwork If the cluster is associated with multiple subnetworks, the subnetwork for the node pool is picked based on the IP utilization during node pool creation and is immutable. Corresponds to the JSON property subnetwork

Returns:

  • (String)


6849
6850
6851
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6849

def subnetwork
  @subnetwork
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



6856
6857
6858
6859
6860
6861
6862
6863
6864
6865
6866
6867
6868
6869
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6856

def update!(**args)
  @accelerator_network_profile = args[:accelerator_network_profile] if args.key?(:accelerator_network_profile)
  @additional_node_network_configs = args[:additional_node_network_configs] if args.key?(:additional_node_network_configs)
  @additional_pod_network_configs = args[:additional_pod_network_configs] if args.key?(:additional_pod_network_configs)
  @create_pod_range = args[:create_pod_range] if args.key?(:create_pod_range)
  @enable_private_nodes = args[:enable_private_nodes] if args.key?(:enable_private_nodes)
  @network_performance_config = args[:network_performance_config] if args.key?(:network_performance_config)
  @network_tier_config = args[:network_tier_config] if args.key?(:network_tier_config)
  @pod_cidr_overprovision_config = args[:pod_cidr_overprovision_config] if args.key?(:pod_cidr_overprovision_config)
  @pod_ipv4_cidr_block = args[:pod_ipv4_cidr_block] if args.key?(:pod_ipv4_cidr_block)
  @pod_ipv4_range_utilization = args[:pod_ipv4_range_utilization] if args.key?(:pod_ipv4_range_utilization)
  @pod_range = args[:pod_range] if args.key?(:pod_range)
  @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
end