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.



6817
6818
6819
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6817

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)


6734
6735
6736
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6734

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



6740
6741
6742
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6740

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



6746
6747
6748
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6746

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)


6756
6757
6758
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6756

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)


6764
6765
6766
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6764

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



6770
6771
6772
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6770

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



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

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



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

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)


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

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)


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

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)


6807
6808
6809
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6807

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)


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

def subnetwork
  @subnetwork
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



6822
6823
6824
6825
6826
6827
6828
6829
6830
6831
6832
6833
6834
6835
# File 'lib/google/apis/container_v1beta1/classes.rb', line 6822

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