IP address pool

Range of addresses for VIP KubeAPI and Ingress when creating a cluster.

What is an IP address pool

IP Pool is a range or list of IP addresses that can be selected to be assigned as VIP for KubeAPI and VIP for Ingress when creating a cluster. The pool simplifies the selection of addresses: instead of manually entering, you select a free address from a drop-down list.

The platform keeps track of which addresses are already assigned to clusters and shows only free addresses in the list.


Why are they needed?

When creating a cluster in the absence of external balancers, KubeAPI and Ingress require two addresses:

AddressPurpose
VIP for KubeAPIIt connects kubectl, dashboards, CI/CD, and management cluster. Must be on the same subnet as the Control Plane nodes
VIP for IngressEntry point for HTTP/HTTPS traffic to applications in the cluster

Without a pool, addresses are entered manually. With a pool - they are selected from the list of free ones, which reduces the risk of errors and conflicts.


For which providers are they used?

IP address pool is supported for:

  • Shturval v2
  • oVirt (zVirt, HostVM, ED Virtualization, ROSA Virtualization)
  • VMware vSphere

For OpenStack, Basis Dynamix, Yandex Cloud, vCloud Director pools are not used - external balancers are used there and addresses are set on the cloud side.


How to configure

Step 1: Create a pool

  1. Go to Providers → IP Pools → Add Pool.
  2. Specify the name of the pool (required).
  3. Add address range (for example, 192.168.1.100–192.168.1.120 or CIDR).
  4. If necessary, add individual IP addresses or exclude addresses that should not be available in the pool.
  5. Save the configuration.

Step 2: Bind the pool to the infrastructure provider instance

  1. Go to Providers → Provider Configuration.
  2. Create or edit a provider instance (Shturval v2, oVirt (and similar) or VMware vSphere).
  3. In the provider instance settings, select IP address pool from the drop-down list.
  4. Save the provider instance.

One pool can be linked to several provider instances.

Step 3: Check Availability

The pool page displays the status of each address (free/busy). When editing, you can add ranges, change them, or exclude addresses.

Pay attention! The status of added addresses appears gradually as their availability is checked and is updated every 5 seconds.


At what point are they used?I

The pool is applied at the cluster creation stage, at the “Basic data” step:

  1. You select a provider template (with a linked pool).
  2. For the “cluster API server address” and “VIP address for Ingress” fields, drop-down lists with free addresses from the pool appear.
  3. You select two addresses from the list (or enter manually if there is no pool or there are not enough free addresses).
  4. When cluster creation starts, the platform assigns the selected KubeAPI and Ingress addresses.

Tip: If a pool is attached to the template, a hint with the number of free addresses is displayed next to it.


Important restrictions

Note: There is no backup mechanism. The pool shows the status at the time of the request. Possible situation:

  • The address was free when setting up the cluster;
  • By the time the cluster creation is initialized, it is already occupied (another cluster or manual assignment);
  • Cluster deployment will fail with an error.

Recommendations:

  • Allocate different subnets for different instances of the infrastructure provider;
  • Create pools with non-overlapping subnets for different teams or environments;
  • If there is one free address in the pool, it can be selected only for the Kube API server or only for Ingress - the cluster will require at least two free addresses.

Editing and deleting

In the IP address pool list you can delete one pool or several at once. How to select objects and confirm deletion: Bulk deletion.

  • Editing a pool - adding ranges, excluding addresses - does not affect addresses already assigned to clusters.
  • Deleting a pool - does not affect clusters that are already assigned addresses from this pool.
  • Removing an address from the pool - if an address is already assigned to a cluster, removing it from the pool does not change the cluster configuration.

Requirements for addresses in the pool

  • VIP for KubeAPI and VIP for Ingress must belong to the same subnet as the Control Plane nodes;
  • VIPs must not match the IP addresses of the cluster nodes.

More information about VIP is in the section Features of FQDN or VIP for KubeAPI and Ingress.

If an error occurs when creating a cluster due to the intersection of subnets or the network as a whole, see Checking the intersection of subnets when creating a cluster.