Class: Google::Apis::ContainerV1::NodeNetworkConfig

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/container_v1/classes.rb,
lib/google/apis/container_v1/representations.rb,
lib/google/apis/container_v1/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.



5879
5880
5881
# File 'lib/google/apis/container_v1/classes.rb', line 5879

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

Instance Attribute Details

#additional_node_network_configsArray<Google::Apis::ContainerV1::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



5802
5803
5804
# File 'lib/google/apis/container_v1/classes.rb', line 5802

def additional_node_network_configs
  @additional_node_network_configs
end

#additional_pod_network_configsArray<Google::Apis::ContainerV1::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



5808
5809
5810
# File 'lib/google/apis/container_v1/classes.rb', line 5808

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)


5818
5819
5820
# File 'lib/google/apis/container_v1/classes.rb', line 5818

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)


5826
5827
5828
# File 'lib/google/apis/container_v1/classes.rb', line 5826

def enable_private_nodes
  @enable_private_nodes
end

#network_performance_configGoogle::Apis::ContainerV1::NetworkPerformanceConfig

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



5832
5833
5834
# File 'lib/google/apis/container_v1/classes.rb', line 5832

def network_performance_config
  @network_performance_config
end

#network_tier_configGoogle::Apis::ContainerV1::NetworkTierConfig

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



5837
5838
5839
# File 'lib/google/apis/container_v1/classes.rb', line 5837

def network_tier_config
  @network_tier_config
end

#pod_cidr_overprovision_configGoogle::Apis::ContainerV1::PodCidrOverprovisionConfig

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



5842
5843
5844
# File 'lib/google/apis/container_v1/classes.rb', line 5842

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)


5853
5854
5855
# File 'lib/google/apis/container_v1/classes.rb', line 5853

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)


5860
5861
5862
# File 'lib/google/apis/container_v1/classes.rb', line 5860

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)


5869
5870
5871
# File 'lib/google/apis/container_v1/classes.rb', line 5869

def pod_range
  @pod_range
end

#subnetworkString

Output only. 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)


5877
5878
5879
# File 'lib/google/apis/container_v1/classes.rb', line 5877

def subnetwork
  @subnetwork
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
5896
# File 'lib/google/apis/container_v1/classes.rb', line 5884

def update!(**args)
  @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