Add a node group to a Managed Kubernetes cluster
You can add a node group to a Managed Kubernetes cluster on a cloud or dedicated server. You cannot simultaneously use node groups on a dedicated server and node groups on a cloud server in the same cluster.
Learn more about configurations in the Managed Kubernetes node configurations guide.
Add a node group on a cloud server
Control panel
API
Terraform
If the configurations in the Control panel are not suitable, you can create a node group with a fixed cloud server configuration (flavor) via the Managed Kubernetes API or Terraform.
-
In the Control panel, on the top menu, click Products and select Managed Kubernetes.
-
Open the cluster page → Cluster composition tab.
-
Click Add node group.
-
Select the pool segment where all worker nodes in the group will be located. After adding a node group, the pool segment cannot be changed.
-
Configure the worker node configuration in the group:
5.1. Click Select configuration and choose the worker node configuration in the group:
- custom — you can specify any resource ratio;
- or fixed with GPU — prebuilt node configurations with graphics processors and a specified resource ratio.
If standard configurations are not suitable, after creating the cluster, you can add a node group with a fixed cloud server configuration via the Managed Kubernetes API or Terraform.
5.2. If you have selected a custom configuration, specify the number of vCPUs, RAM, and select a boot disk. Specify the disk size.
5.3. If you have selected a fixed configuration with GPU, select a prebuilt node configuration with graphics processors, a boot disk, and specify the disk size. To install GPU drivers yourself, turn off the GPU drivers switch. By default, the GPU drivers switch is turned on, and the cluster uses preinstalled drivers.
5.4. Click Save.
-
Configure the number of worker nodes. For fault-tolerant operation of system components, we recommend having at least two worker nodes in the cluster; nodes can be in different groups:
6.1. To have a fixed number of nodes in the node group, open the Fixed tab and specify the number of nodes.
6.2. To use autoscaling in the node group, open the With autoscaling tab and set the minimum and maximum number of nodes in the group — the number of nodes will only change within this range. Autoscaling is not available for GPU node groups without drivers.
-
Optional: to make the node group preemptible, select the Preemptible node group checkbox. Preemptible node groups are available in the regions of St. Petersburg, Moscow, and Novosibirsk.
-
Optional: add node group labels:
8.1. In the Labels field, click Add.
8.2. Enter the label key and value.
8.3. Click Add.
Once a cluster has been created, labels cannot be modified or deleted.
-
Optional: add node group taints:
9.1. In the Taints field, click Add.
9.2. Enter the taint key and value.
9.3. Select an effect:
- NoSchedule — new pods will not be added and existing pods will continue to run;
- PreferNoSchedule — new pods will be added if there are no other available slots in the cluster;
- NoExecute — running pods without tolerations will be evicted.
9.4. Click Add.
-
Optional: add a script with custom parameters for Managed Kubernetes cluster configuration:
10.1. In the User data field, click Add.
10.2. Paste the script. The maximum size of a script containing non-Base64 encoded data is 47 KB. Script examples and supported formats can be found in the User data guide.
-
Click Add node group. You can view all created nodes in the Control panel: in the top menu, click Products and select Cloud Servers.
View a list of flavors in a specific pool
Flavors correspond to cloud server configurations and define the number of vCPUs, RAM, and the size of the local disk (optional) of the server. You can view all ready-made cloud server flavors and custom-ordered flavors.
-
Open OpenStack CLI.
-
If the pool you specified when configuring OpenStack CLI does not match the pool whose flavors you need to view, change your authorization data in the OpenStack API.
-
View a list of available flavors:
openstack flavor listExample response for the ru-9 pool (abbreviated):
+------------+-----------------------+--------+------+-----------+-------+-----------+| ID | Name | RAM | Disk | Ephemeral | VCPUs | Is Public |+------------+-----------------------+--------+------+-----------+-------+-----------+| 1 | m1.tiny | 512 | 0 | 0 | 1 | True || 1011 | SL1.1-1024 | 1024 | 0 | 0 | 1 | True || 3021 | GL2.6-24576-0-1GPU | 24576 | 0 | 0 | 6 | True || 9011 | PRC10.1-512 | 512 | 0 | 0 | 1 | True || 9021 | PRC20.1-512 | 512 | 0 | 0 | 1 | True || 9051 | PRC50.1-512 | 512 | 0 | 0 | 1 | True || 8301 | HFL1.1-2048-30 | 2048 | 30 | 0 | 1 | True |+------------+-----------------------+--------+------+-----------+-------+-----------+Where:
-
ID— cloud server flavor ID; -
Name— flavor name that corresponds to the configuration:m1.XX— OpenStack base configurations, similar to custom configurations;SLХ.XX— fixed configurations of the Standard line;GLХ.XX— fixed configurations of the GPU line;PRC10.XX— fixed configurations of the Shared line with 10% vCPU share;PRC20.XX— fixed configurations of the Shared line with 20% vCPU share;PRC50.XX— fixed configurations of the Shared line with 50% vCPU share;HFLX.XX— fixed configurations of the HighFreq line;
-
RAM— RAM size in MB; -
Disk— local disk size in GB; -
VCPUs— number of vCPUs; -
Is Public— flavor scope:True— public ready-made flavors;False— private flavors.
-
Add a node group on a dedicated server
-
In the Control panel, in the top menu, click Products and select Managed Kubernetes.
-
Open the cluster page → Cluster Composition tab.
-
Click Add node group.
-
Select the pool where all worker nodes in the group will be located. Worker nodes must be in a pool from the same availability zone as the master nodes. Once a node group has been created, the pool cannot be changed.
-
Configure the worker nodes in the group:
5.1. Click Select configuration.
5.2. Select a billing option.
5.3. If you need a configuration with GPU, check the GPU only checkbox.
5.4. Select a ready-made configuration of dedicated servers.
5.5. Click Select.
Once the cluster is created, the node configuration cannot be changed.
-
Optional: change the default disk partitioning:
6.1. Click Edit.
6.2. To remove the
/storagepartition, uncheck the /storage checkbox.6.3. To change the size of the
/rootpartition, adjust the number of gigabytes allocated for this partition in the /root row. The minimum size is 30 GB. The maximum size is the disk size minus 2 GB (1 GB for the/bootpartition and 1 GB for the/storagepartition).6.4. Click Save.
-
Configure the number of worker nodes:
7.1. Open the Fixed tab.
7.2. Specify the number of nodes. The minimum number of nodes is one. For fault-tolerant operation of system components, we recommend having at least two worker nodes in the cluster; nodes can be located in different groups.
-
Optional: in the Node group subnet CIDR field, enter the CIDR of the new private subnet that will be used for the worker nodes in the group.
The subnet must meet the following conditions:
- the subnet must be private — belong to the
10.0.0.0/8,172.16.0.0/12, or192.168.0.0/16ranges; - the subnet size must be
/24; - the subnet must not overlap with the ranges
10.10.0.0/16,10.222.0.0/16,10.250.0.0/16,10.251.0.0/24, and172.250.0.0/14. These ranges are used for internal Managed Kubernetes addressing; - the subnet must not overlap with the CIDR of another node group subnet or the cloud network CIDR used for communication between master nodes and the service global router.
The subnet will be created in a separate VLAN. If you do not specify a CIDR, it will be assigned automatically when the cluster is created.
- the subnet must be private — belong to the
-
Optional: add node group labels:
8.1. In the Labels field, click Add.
8.2. Enter the label key and value.
8.3. Click Add.
-
Optional: add node group taints:
9.1. In the Taints field, click Add.
9.2. Enter the taint key and value.
9.3. Select an effect:
- NoSchedule — new pods will not be added and existing pods will continue to run;
- PreferNoSchedule — new pods will be added if there are no other available slots in the cluster;
- NoExecute — running pods without tolerations will be evicted.
9.4. Click Add.
-
Optional: add a script with custom parameters for Managed Kubernetes cluster configuration:
9.1. In the User data field, click Add.
9.2. Paste the script. The maximum size of a script containing non-Base64 encoded data is 47 KB. Script examples and supported formats can be found in the User data guide.
-
Click Add. You can view all created nodes in the Control panel: in the top menu, click Products → Dedicated Servers.