Google Cloud Container V1 Client - Class IPAllocationPolicy (2.3.1)

Reference documentation and code samples for the Google Cloud Container V1 Client class IPAllocationPolicy.

Configuration for controlling how IPs are allocated in the cluster.

Generated from protobuf message google.container.v1.IPAllocationPolicy

Namespace

Google \ Cloud \ Container \ V1

Methods

__construct

Constructor.

Parameters
Name Description
data array

Optional. Data for populating the Message object.

↳ use_ip_aliases bool

Whether alias IPs will be used for pod IPs in the cluster. This is used in conjunction with use_routes. It cannot be true if use_routes is true. If both use_ip_aliases and use_routes are false, then the server picks the default IP allocation mode

↳ create_subnetwork bool

Whether a new subnetwork will be created automatically for the cluster. This field is only applicable when use_ip_aliases is true.

↳ subnetwork_name string

A custom subnetwork name to be used if create_subnetwork is true. If this field is empty, then an automatic name will be chosen for the new subnetwork.

↳ cluster_ipv4_cidr string

This field is deprecated, use cluster_ipv4_cidr_block.

↳ node_ipv4_cidr string

This field is deprecated, use node_ipv4_cidr_block.

↳ services_ipv4_cidr string

This field is deprecated, use services_ipv4_cidr_block.

↳ cluster_secondary_range_name string

The name of the secondary range to be used for the cluster CIDR block. The secondary range will be used for pod IP addresses. This must be an existing secondary range associated with the cluster subnetwork. This field is only applicable with use_ip_aliases is true and create_subnetwork is false.

↳ services_secondary_range_name string

The name of the secondary range to be used as for the services CIDR block. The secondary range will be used for service ClusterIPs. This must be an existing secondary range associated with the cluster subnetwork. This field is only applicable with use_ip_aliases is true and create_subnetwork is false.

↳ cluster_ipv4_cidr_block string

The IP address range for the cluster pod IPs. If this field is set, then cluster.cluster_ipv4_cidr must be left blank. This field is only applicable when use_ip_aliases 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) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use.

↳ node_ipv4_cidr_block string

The IP address range of the instance IPs in this cluster. This is applicable only if create_subnetwork 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) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use.

↳ services_ipv4_cidr_block string

The IP address range of the services IPs in this cluster. If blank, a range will be automatically chosen with the default size. This field is only applicable when use_ip_aliases 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) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use.

↳ tpu_ipv4_cidr_block string

The IP address range of the Cloud TPUs in this cluster. If unspecified, a range will be automatically chosen with the default size. This field is only applicable when use_ip_aliases is true. If unspecified, the range will use 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) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use.

↳ use_routes bool

Whether routes will be used for pod IPs in the cluster. This is used in conjunction with use_ip_aliases. It cannot be true if use_ip_aliases is true. If both use_ip_aliases and use_routes are false, then the server picks the default IP allocation mode

↳ stack_type int

The IP stack type of the cluster

↳ ipv6_access_type int

The ipv6 access type (internal or external) when create_subnetwork is true

↳ pod_cidr_overprovision_config PodCIDROverprovisionConfig

[PRIVATE FIELD] Pod CIDR size overprovisioning config for the cluster. Pod CIDR size per node depends on max_pods_per_node. By default, the value of max_pods_per_node is doubled and then rounded off to next power of 2 to get the size of pod CIDR block per node. Example: max_pods_per_node of 30 would result in 64 IPs (/26). This config can disable the doubling of IPs (we still round off to next power of 2) Example: max_pods_per_node of 30 will result in 32 IPs (/27) when overprovisioning is disabled.

↳ subnet_ipv6_cidr_block string

Output only. The subnet's IPv6 CIDR block used by nodes and pods.

↳ services_ipv6_cidr_block string

Output only. The services IPv6 CIDR block for the cluster.

↳ additional_pod_ranges_config AdditionalPodRangesConfig

Output only. The additional pod ranges that are added to the cluster. These pod ranges can be used by new node pools to allocate pod IPs automatically. Once the range is removed it will not show up in IPAllocationPolicy.

↳ default_pod_ipv4_range_utilization float

Output only. The utilization of the cluster default IPv4 range for the pod. The ratio is Usage/[Total number of IPs in the secondary range], Usage=numNodesnumZonespodIPsPerNode.

getUseIpAliases

Whether alias IPs will be used for pod IPs in the cluster.

This is used in conjunction with use_routes. It cannot be true if use_routes is true. If both use_ip_aliases and use_routes are false, then the server picks the default IP allocation mode

Returns
Type Description
bool

setUseIpAliases

Whether alias IPs will be used for pod IPs in the cluster.

This is used in conjunction with use_routes. It cannot be true if use_routes is true. If both use_ip_aliases and use_routes are false, then the server picks the default IP allocation mode

Parameter
Name Description
var bool
Returns
Type Description
$this

getCreateSubnetwork

Whether a new subnetwork will be created automatically for the cluster.

This field is only applicable when use_ip_aliases is true.

Returns
Type Description
bool

setCreateSubnetwork

Whether a new subnetwork will be created automatically for the cluster.

This field is only applicable when use_ip_aliases is true.

Parameter
Name Description
var bool
Returns
Type Description
$this

getSubnetworkName

A custom subnetwork name to be used if create_subnetwork is true. If this field is empty, then an automatic name will be chosen for the new subnetwork.

Returns
Type Description
string

setSubnetworkName

A custom subnetwork name to be used if create_subnetwork is true. If this field is empty, then an automatic name will be chosen for the new subnetwork.

Parameter
Name Description
var string
Returns
Type Description
$this

getClusterIpv4Cidr

This field is deprecated, use cluster_ipv4_cidr_block.

Returns
Type Description
string

setClusterIpv4Cidr

This field is deprecated, use cluster_ipv4_cidr_block.

Parameter
Name Description
var string
Returns
Type Description
$this

getNodeIpv4Cidr

This field is deprecated, use node_ipv4_cidr_block.

Returns
Type Description
string

setNodeIpv4Cidr

This field is deprecated, use node_ipv4_cidr_block.

Parameter
Name Description
var string
Returns
Type Description
$this

getServicesIpv4Cidr

This field is deprecated, use services_ipv4_cidr_block.

Returns
Type Description
string

setServicesIpv4Cidr

This field is deprecated, use services_ipv4_cidr_block.

Parameter
Name Description
var string
Returns
Type Description
$this

getClusterSecondaryRangeName

The name of the secondary range to be used for the cluster CIDR block. The secondary range will be used for pod IP addresses. This must be an existing secondary range associated with the cluster subnetwork.

This field is only applicable with use_ip_aliases is true and create_subnetwork is false.

Returns
Type Description
string

setClusterSecondaryRangeName

The name of the secondary range to be used for the cluster CIDR block. The secondary range will be used for pod IP addresses. This must be an existing secondary range associated with the cluster subnetwork.

This field is only applicable with use_ip_aliases is true and create_subnetwork is false.

Parameter
Name Description
var string
Returns
Type Description
$this

getServicesSecondaryRangeName

The name of the secondary range to be used as for the services CIDR block. The secondary range will be used for service ClusterIPs. This must be an existing secondary range associated with the cluster subnetwork.

This field is only applicable with use_ip_aliases is true and create_subnetwork is false.

Returns
Type Description
string

setServicesSecondaryRangeName

The name of the secondary range to be used as for the services CIDR block. The secondary range will be used for service ClusterIPs. This must be an existing secondary range associated with the cluster subnetwork.

This field is only applicable with use_ip_aliases is true and create_subnetwork is false.

Parameter
Name Description
var string
Returns
Type Description
$this

getClusterIpv4CidrBlock

The IP address range for the cluster pod IPs. If this field is set, then cluster.cluster_ipv4_cidr must be left blank.

This field is only applicable when use_ip_aliases 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) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use.

Returns
Type Description
string

setClusterIpv4CidrBlock

The IP address range for the cluster pod IPs. If this field is set, then cluster.cluster_ipv4_cidr must be left blank.

This field is only applicable when use_ip_aliases 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) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use.

Parameter
Name Description
var string
Returns
Type Description
$this

getNodeIpv4CidrBlock

The IP address range of the instance IPs in this cluster.

This is applicable only if create_subnetwork 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) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use.

Returns
Type Description
string

setNodeIpv4CidrBlock

The IP address range of the instance IPs in this cluster.

This is applicable only if create_subnetwork 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) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use.

Parameter
Name Description
var string
Returns
Type Description
$this

getServicesIpv4CidrBlock

The IP address range of the services IPs in this cluster. If blank, a range will be automatically chosen with the default size.

This field is only applicable when use_ip_aliases 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) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use.

Returns
Type Description
string

setServicesIpv4CidrBlock

The IP address range of the services IPs in this cluster. If blank, a range will be automatically chosen with the default size.

This field is only applicable when use_ip_aliases 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) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use.

Parameter
Name Description
var string
Returns
Type Description
$this

getTpuIpv4CidrBlock

The IP address range of the Cloud TPUs in this cluster. If unspecified, a range will be automatically chosen with the default size.

This field is only applicable when use_ip_aliases is true. If unspecified, the range will use 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) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use.

Returns
Type Description
string

setTpuIpv4CidrBlock

The IP address range of the Cloud TPUs in this cluster. If unspecified, a range will be automatically chosen with the default size.

This field is only applicable when use_ip_aliases is true. If unspecified, the range will use 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) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use.

Parameter
Name Description
var string
Returns
Type Description
$this

getUseRoutes

Whether routes will be used for pod IPs in the cluster.

This is used in conjunction with use_ip_aliases. It cannot be true if use_ip_aliases is true. If both use_ip_aliases and use_routes are false, then the server picks the default IP allocation mode

Returns
Type Description
bool

setUseRoutes

Whether routes will be used for pod IPs in the cluster.

This is used in conjunction with use_ip_aliases. It cannot be true if use_ip_aliases is true. If both use_ip_aliases and use_routes are false, then the server picks the default IP allocation mode

Parameter
Name Description
var bool
Returns
Type Description
$this

getStackType

The IP stack type of the cluster

Returns
Type Description
int

setStackType

The IP stack type of the cluster

Parameter
Name Description
var int
Returns
Type Description
$this

getIpv6AccessType

The ipv6 access type (internal or external) when create_subnetwork is true

Returns
Type Description
int

setIpv6AccessType

The ipv6 access type (internal or external) when create_subnetwork is true

Parameter
Name Description
var int
Returns
Type Description
$this

getPodCidrOverprovisionConfig

[PRIVATE FIELD] Pod CIDR size overprovisioning config for the cluster.

Pod CIDR size per node depends on max_pods_per_node. By default, the value of max_pods_per_node is doubled and then rounded off to next power of 2 to get the size of pod CIDR block per node. Example: max_pods_per_node of 30 would result in 64 IPs (/26). This config can disable the doubling of IPs (we still round off to next power of 2) Example: max_pods_per_node of 30 will result in 32 IPs (/27) when overprovisioning is disabled.

Returns
Type Description
PodCIDROverprovisionConfig|null

hasPodCidrOverprovisionConfig

clearPodCidrOverprovisionConfig

setPodCidrOverprovisionConfig

[PRIVATE FIELD] Pod CIDR size overprovisioning config for the cluster.

Pod CIDR size per node depends on max_pods_per_node. By default, the value of max_pods_per_node is doubled and then rounded off to next power of 2 to get the size of pod CIDR block per node. Example: max_pods_per_node of 30 would result in 64 IPs (/26). This config can disable the doubling of IPs (we still round off to next power of 2) Example: max_pods_per_node of 30 will result in 32 IPs (/27) when overprovisioning is disabled.

Parameter
Name Description
var PodCIDROverprovisionConfig
Returns
Type Description
$this

getSubnetIpv6CidrBlock

Output only. The subnet's IPv6 CIDR block used by nodes and pods.

Returns
Type Description
string

setSubnetIpv6CidrBlock

Output only. The subnet's IPv6 CIDR block used by nodes and pods.

Parameter
Name Description
var string
Returns
Type Description
$this

getServicesIpv6CidrBlock

Output only. The services IPv6 CIDR block for the cluster.

Returns
Type Description
string

setServicesIpv6CidrBlock

Output only. The services IPv6 CIDR block for the cluster.

Parameter
Name Description
var string
Returns
Type Description
$this

getAdditionalPodRangesConfig

Output only. The additional pod ranges that are added to the cluster.

These pod ranges can be used by new node pools to allocate pod IPs automatically. Once the range is removed it will not show up in IPAllocationPolicy.

Returns
Type Description
AdditionalPodRangesConfig|null

hasAdditionalPodRangesConfig

clearAdditionalPodRangesConfig

setAdditionalPodRangesConfig

Output only. The additional pod ranges that are added to the cluster.

These pod ranges can be used by new node pools to allocate pod IPs automatically. Once the range is removed it will not show up in IPAllocationPolicy.

Parameter
Name Description
var AdditionalPodRangesConfig
Returns
Type Description
$this

getDefaultPodIpv4RangeUtilization

Output only. The utilization of the cluster default IPv4 range for the pod. The ratio is Usage/[Total number of IPs in the secondary range], Usage=numNodesnumZonespodIPsPerNode.

Returns
Type Description
float

setDefaultPodIpv4RangeUtilization

Output only. The utilization of the cluster default IPv4 range for the pod. The ratio is Usage/[Total number of IPs in the secondary range], Usage=numNodesnumZonespodIPsPerNode.

Parameter
Name Description
var float
Returns
Type Description
$this