Available in VPC
You can view the list of node pools in a cluster and manage individual node pools, including viewing details, deleting, upgrading, and changing the number of worker nodes.
View the list of node pools
List of all node pools
To view the list of all node pools created in the service, navigate to Menu > Services > Containers > Ncloud Kubernetes Service > Node pools in the VPC environment of the NAVER Cloud Platform console.
List of node pools in a cluster
To view the list of node pools in a specific cluster:
- In the VPC environment of the NAVER Cloud Platform console, navigate to** Menu** > Services > Containers > Ncloud Kubernetes Service.
- From the list of clusters, click the row of the cluster for which you want to view node pools.
View node pools details
To view details for a node pool, click the name of the node pool in the list of node pools.
Add node pools
To add a new node pool to a cluster:
- From the list of clusters, click the row of the target cluster.
- In the cluster details tab, click [Add] under the node pools section.
- Enter the node pool name, server image name, server type, number of nodes, Kubernetes labels, taints, subnet, and Node IAM Role, then click [Next].
- After reviewing the node pool settings, click [Create].
Change the number of worker nodes in node pools
Change the number of worker nodes manually
You can manually change the number of worker nodes in a cluster node pool or set it to scale automatically using Cluster Autoscaler.
To manually change the number of worker nodes in a cluster node pool:
- From the list of clusters, click the row of the target cluster.
- In the cluster details tab, click the name of the target node pool in the list of node pools.
- On the node pool details page, click [Edit].
- In the settings popup, click Not set and enter the number of worker nodes.
- Click [Edit].
Remove specific worker nodes
When reducing the number of nodes in a node pool, the priority is as follows:
- Stopped nodes
- Nodes with earlier creation dates
To remove a specific node from a cluster node pool:
- From the list of clusters, click the row of the target cluster.
- In the cluster details tab, click the name of the target node pool in the list of node pools.
- On the node pool details page, click [Delete] for the target node.
Alternatively, you can stop the target node and then change the number of nodes.
Automatically scale the number of nodes using Cluster Autoscaler
To automatically scale the number of worker nodes using Cluster Autoscaler, see Using Cluster Autoscaler.
Edit Kubernetes labels and taints for node pools
To edit Kubernetes labels and taints for a node pool:
- From the list of clusters, click the row of the target cluster.
- In the cluster details tab, click the name of the target node pool in the list of node pools.
- On the node pool details page, click [Edit] below the Kubernetes labels or taints list.
- Modify the Kubernetes labels or taints, then click [OK].
Delete node pools
To delete a cluster node pool:
- From the list of clusters, click the row of the target cluster.
- In the cluster details tab, click the name of the node pool you want to delete in the list of node pools.
- On the node pool details page, click [Delete].
- In the confirmation popup, enter the node pool name, then click [Delete].
Identify node pools using node labels
Information about the node pool each node belongs to is added as a node label and displayed in the format "ncloud.com/nks-nodepool: {node pool name}." Use the "--show-labels" option to view node labels. You can use node labels to identify node pools and efficiently schedule pods based on each node pool's specifications.
To view node labels, run the following command:
$ kubectl --kubeconfig $KUBE_CONFIG get nodes --show-labels
Upgrade node pools
To upgrade a node pool version, you can specify the number of max-surge-upgrade nodes and max-unavailable-upgrade nodes. Node pool version upgrades proceed as follows:
- Create new version nodes equal to the number of max-surge-upgrade nodes and wait until they are registered.
- Prevent pods from being scheduled on nodes to be replaced, then reschedule existing pods to other nodes.
- Remove the nodes to be replaced.
- Repeat the above steps until all nodes are upgraded to the new version.
Check before an upgrade
To identify elements that may affect the service before upgrading node pools, review the following:
- Changes in the new version: To check whether changes in the new version may affect your service, see Kubernetes changelog.
- Version skew policy: To check version compatibility between the cluster and its components, see Version Skew Policy.
- Admission Webhook: If webhooks exist in the cluster, upgrades may cause a deadlock. To take necessary measures before upgrading, see Dynamic Admission Control.
- Secure available servers: Secure available servers equal to the number of max-surge-upgrade nodes for a stable upgrade.
- Check node information changes: Upgrading node pools initializes or changes existing node information. Before upgrading, check local volume details, node names, IP addresses, labels, and other relevant information.
When upgrading node pools, worker nodes are replaced. Existing node IPs and settings are not retained, and existing information cannot be reused or reassigned after the upgrade. To minimize service impact, review relevant information and settings in advance.
Use the following to configure upgrade-related settings:
- PodDisruptionBudget: To maintain running pods at a desired ratio or number during cluster upgrades, see Specifying a Disruption Budget.
- Readiness Probe: To ensure that only pods in a ready state are accessible through Ncloud Kubernetes Service resources when pods are rescheduled during node pool replacement, see Define readiness probes.
How to upgrade
To upgrade a node pool:
- From the list of clusters, click the row of the cluster that contains the node pool to upgrade.
- In the cluster details tab, click [Upgrade] under the name of the target node pool.
- Set the number of max-surge-upgrade nodes and max-unavailable-upgrade nodes, then perform the upgrade.
- Max surge upgrade nodes: The number of nodes that can be added during an upgrade. The default value is 1, and you can specify from 0 to 0.
- Max unavailable upgrade nodes: The number of nodes that can become unavailable during the upgrade. The default value is 0, and you can specify up to 5.
When the number of existing nodes decreases, it can decrease by this number. When new nodes are added, the total number can increase up to the sum of max-surge-upgrade nodes and max-unavailable-upgrade nodes.
Examples of node count settings
- Example 1: Node pool size 5, max-surge-upgrade nodes 1, max-unavailable-upgrade nodes 0.
Up to 1 additional node can be created beyond the node pool size, resulting in up to 6 nodes.
The number of nodes does not decrease below the original node pool size.
Since nodes are replaced one by one, the upgrade is relatively slow but stable. - Example 2: Node pool size 5, max-surge-upgrade nodes 5, max-unavailable-upgrade nodes 0.
Up to 5 additional nodes can be created, resulting in up to 10 nodes.
The number of nodes does not decrease below the original node pool size.
Since many nodes are added at once, the upgrade is relatively fast and stable. - Example 3: Node pool size 5, max-surge-upgrade nodes 0, max-unavailable-upgrade nodes 5.
The number of nodes can decrease below the original node pool size, down to 0 nodes.
The number of nodes cannot increase beyond the original node pool size.
Since many nodes can be replaced at once, the upgrade is fast but may cause cluster instability.