additionalIpRangesConfigs = $additionalIpRangesConfigs; } /** * @return AdditionalIPRangesConfig[] */ public function getAdditionalIpRangesConfigs() { return $this->additionalIpRangesConfigs; } /** * 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. * * @param AdditionalPodRangesConfig $additionalPodRangesConfig */ public function setAdditionalPodRangesConfig(AdditionalPodRangesConfig $additionalPodRangesConfig) { $this->additionalPodRangesConfig = $additionalPodRangesConfig; } /** * @return AdditionalPodRangesConfig */ public function getAdditionalPodRangesConfig() { return $this->additionalPodRangesConfig; } /** * Optional. AutoIpamConfig contains all information related to Auto IPAM * * @param AutoIpamConfig $autoIpamConfig */ public function setAutoIpamConfig(AutoIpamConfig $autoIpamConfig) { $this->autoIpamConfig = $autoIpamConfig; } /** * @return AutoIpamConfig */ public function getAutoIpamConfig() { return $this->autoIpamConfig; } /** * This field is deprecated, use cluster_ipv4_cidr_block. * * @deprecated * @param string $clusterIpv4Cidr */ public function setClusterIpv4Cidr($clusterIpv4Cidr) { $this->clusterIpv4Cidr = $clusterIpv4Cidr; } /** * @deprecated * @return string */ public function getClusterIpv4Cidr() { return $this->clusterIpv4Cidr; } /** * 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](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) * 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. * * @param string $clusterIpv4CidrBlock */ public function setClusterIpv4CidrBlock($clusterIpv4CidrBlock) { $this->clusterIpv4CidrBlock = $clusterIpv4CidrBlock; } /** * @return string */ public function getClusterIpv4CidrBlock() { return $this->clusterIpv4CidrBlock; } /** * 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. * * @param string $clusterSecondaryRangeName */ public function setClusterSecondaryRangeName($clusterSecondaryRangeName) { $this->clusterSecondaryRangeName = $clusterSecondaryRangeName; } /** * @return string */ public function getClusterSecondaryRangeName() { return $this->clusterSecondaryRangeName; } /** * Whether a new subnetwork will be created automatically for the cluster. * This field is only applicable when `use_ip_aliases` is true. * * @param bool $createSubnetwork */ public function setCreateSubnetwork($createSubnetwork) { $this->createSubnetwork = $createSubnetwork; } /** * @return bool */ public function getCreateSubnetwork() { return $this->createSubnetwork; } public function setDefaultPodIpv4RangeUtilization($defaultPodIpv4RangeUtilization) { $this->defaultPodIpv4RangeUtilization = $defaultPodIpv4RangeUtilization; } public function getDefaultPodIpv4RangeUtilization() { return $this->defaultPodIpv4RangeUtilization; } /** * The ipv6 access type (internal or external) when create_subnetwork is true * * Accepted values: IPV6_ACCESS_TYPE_UNSPECIFIED, INTERNAL, EXTERNAL * * @param self::IPV6_ACCESS_TYPE_* $ipv6AccessType */ public function setIpv6AccessType($ipv6AccessType) { $this->ipv6AccessType = $ipv6AccessType; } /** * @return self::IPV6_ACCESS_TYPE_* */ public function getIpv6AccessType() { return $this->ipv6AccessType; } /** * Cluster-level network tier configuration is used to determine the default * network tier for external IP addresses on cluster resources, such as node * pools and load balancers. * * @param NetworkTierConfig $networkTierConfig */ public function setNetworkTierConfig(NetworkTierConfig $networkTierConfig) { $this->networkTierConfig = $networkTierConfig; } /** * @return NetworkTierConfig */ public function getNetworkTierConfig() { return $this->networkTierConfig; } /** * This field is deprecated, use node_ipv4_cidr_block. * * @deprecated * @param string $nodeIpv4Cidr */ public function setNodeIpv4Cidr($nodeIpv4Cidr) { $this->nodeIpv4Cidr = $nodeIpv4Cidr; } /** * @deprecated * @return string */ public function getNodeIpv4Cidr() { return $this->nodeIpv4Cidr; } /** * 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](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) * 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. * * @param string $nodeIpv4CidrBlock */ public function setNodeIpv4CidrBlock($nodeIpv4CidrBlock) { $this->nodeIpv4CidrBlock = $nodeIpv4CidrBlock; } /** * @return string */ public function getNodeIpv4CidrBlock() { return $this->nodeIpv4CidrBlock; } /** * [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. * * @param PodCIDROverprovisionConfig $podCidrOverprovisionConfig */ public function setPodCidrOverprovisionConfig(PodCIDROverprovisionConfig $podCidrOverprovisionConfig) { $this->podCidrOverprovisionConfig = $podCidrOverprovisionConfig; } /** * @return PodCIDROverprovisionConfig */ public function getPodCidrOverprovisionConfig() { return $this->podCidrOverprovisionConfig; } /** * This field is deprecated, use services_ipv4_cidr_block. * * @deprecated * @param string $servicesIpv4Cidr */ public function setServicesIpv4Cidr($servicesIpv4Cidr) { $this->servicesIpv4Cidr = $servicesIpv4Cidr; } /** * @deprecated * @return string */ public function getServicesIpv4Cidr() { return $this->servicesIpv4Cidr; } /** * 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](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) * 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. * * @param string $servicesIpv4CidrBlock */ public function setServicesIpv4CidrBlock($servicesIpv4CidrBlock) { $this->servicesIpv4CidrBlock = $servicesIpv4CidrBlock; } /** * @return string */ public function getServicesIpv4CidrBlock() { return $this->servicesIpv4CidrBlock; } /** * Output only. The services IPv6 CIDR block for the cluster. * * @param string $servicesIpv6CidrBlock */ public function setServicesIpv6CidrBlock($servicesIpv6CidrBlock) { $this->servicesIpv6CidrBlock = $servicesIpv6CidrBlock; } /** * @return string */ public function getServicesIpv6CidrBlock() { return $this->servicesIpv6CidrBlock; } /** * 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. * * @param string $servicesSecondaryRangeName */ public function setServicesSecondaryRangeName($servicesSecondaryRangeName) { $this->servicesSecondaryRangeName = $servicesSecondaryRangeName; } /** * @return string */ public function getServicesSecondaryRangeName() { return $this->servicesSecondaryRangeName; } /** * The IP stack type of the cluster * * Accepted values: STACK_TYPE_UNSPECIFIED, IPV4, IPV4_IPV6 * * @param self::STACK_TYPE_* $stackType */ public function setStackType($stackType) { $this->stackType = $stackType; } /** * @return self::STACK_TYPE_* */ public function getStackType() { return $this->stackType; } /** * Output only. The subnet's IPv6 CIDR block used by nodes and pods. * * @param string $subnetIpv6CidrBlock */ public function setSubnetIpv6CidrBlock($subnetIpv6CidrBlock) { $this->subnetIpv6CidrBlock = $subnetIpv6CidrBlock; } /** * @return string */ public function getSubnetIpv6CidrBlock() { return $this->subnetIpv6CidrBlock; } /** * 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. * * @param string $subnetworkName */ public function setSubnetworkName($subnetworkName) { $this->subnetworkName = $subnetworkName; } /** * @return string */ public function getSubnetworkName() { return $this->subnetworkName; } /** * 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](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) * 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. This field is deprecated due to the deprecation of 2VM TPU. The end * of life date for 2VM TPU is 2025-04-25. * * @deprecated * @param string $tpuIpv4CidrBlock */ public function setTpuIpv4CidrBlock($tpuIpv4CidrBlock) { $this->tpuIpv4CidrBlock = $tpuIpv4CidrBlock; } /** * @deprecated * @return string */ public function getTpuIpv4CidrBlock() { return $this->tpuIpv4CidrBlock; } /** * 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 * * @param bool $useIpAliases */ public function setUseIpAliases($useIpAliases) { $this->useIpAliases = $useIpAliases; } /** * @return bool */ public function getUseIpAliases() { return $this->useIpAliases; } /** * 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 * * @param bool $useRoutes */ public function setUseRoutes($useRoutes) { $this->useRoutes = $useRoutes; } /** * @return bool */ public function getUseRoutes() { return $this->useRoutes; } } // Adding a class alias for backwards compatibility with the previous class name. class_alias(IPAllocationPolicy::class, 'Google_Service_Container_IPAllocationPolicy');