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.



6132
6133
6134
# File 'lib/google/apis/container_v1/classes.rb', line 6132

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



6055
6056
6057
# File 'lib/google/apis/container_v1/classes.rb', line 6055

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



6061
6062
6063
# File 'lib/google/apis/container_v1/classes.rb', line 6061

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)


6071
6072
6073
# File 'lib/google/apis/container_v1/classes.rb', line 6071

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)


6079
6080
6081
# File 'lib/google/apis/container_v1/classes.rb', line 6079

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



6085
6086
6087
# File 'lib/google/apis/container_v1/classes.rb', line 6085

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



6090
6091
6092
# File 'lib/google/apis/container_v1/classes.rb', line 6090

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



6095
6096
6097
# File 'lib/google/apis/container_v1/classes.rb', line 6095

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)


6106
6107
6108
# File 'lib/google/apis/container_v1/classes.rb', line 6106

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)


6113
6114
6115
# File 'lib/google/apis/container_v1/classes.rb', line 6113

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)


6122
6123
6124
# File 'lib/google/apis/container_v1/classes.rb', line 6122

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)


6130
6131
6132
# File 'lib/google/apis/container_v1/classes.rb', line 6130

def subnetwork
  @subnetwork
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



6137
6138
6139
6140
6141
6142
6143
6144
6145
6146
6147
6148
6149
# File 'lib/google/apis/container_v1/classes.rb', line 6137

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