Node Management
A node is a set of machines that run containerized applications. A cluster must have at least one node to deploy the application. A node can be defined and used in a node pool. Nodes in a node pool must share the same server type, size, and OS image, and you can develop a flexible deployment strategy by creating multiple node pools.
After creating a Kubernetes Engine cluster, add a node pool and modify or delete it as needed.
It is recommended not to use the OS firewall on Kubernetes Engine nodes that use Calico.
- The firewall settings of the Samsung Cloud Platform are set to Inactive by default.
- As shown in the reference link below, it is recommended to configure environments using Calico with the firewall disabled.
Add Node Pool
A node refers to a machine that runs containerized applications, and at least one node is required to deploy applications in a Kubernetes cluster. After the creation of the Kubernetes Engine cluster is complete, add a node pool on the details page.
- In Kubernetes Engine, you can define and use a node pool, which is a set of nodes. * Since the nodes in a node pool use the same server type, size, and OS image, users can devise flexible deployment strategies by using multiple node pools.
In the Virtual Server menu, you can create a node pool using the user’s Custom Image. To create a node pool using a Custom Image, follow these steps.
- Create a Virtual Server that includes a Kubernetes Engine image on Samsung Cloud Platform.
- Use the Virtual Server’s Image creation feature to proceed with creating the image.
- Select the registered Custom Image to create a node pool.
- For detailed information, refer to Virtual Server > Image 생성하기.
To add a node pool, follow these steps.
All Services > Container > Kubernetes Engine Click the menu. 1. Navigate to the Service Home page of Kubernetes Engine.
Click the Cluster menu on the Service Home page. 2. Navigate to the Cluster List page.
On the Cluster List page, select the cluster to which you want to add a node pool. 3. Navigate to the Cluster Details page.
On the Cluster Details page, after selecting the Node Pool tab, click the Add Node Pool button. 4. Navigate to the Add Cluster Node Pool page.
Add Cluster Node Pool page, enter the information required to create a node pool, and select detailed options.
- Enter or select the required information in the Service Information Input area.
Category RequiredDetailed description Node pool name required Node pool name - must start with a lowercase English letter and be entered using lowercase English letters, numbers, and special characters (
-) within 3-20 characters- cannot end with a special character (
-)
- cannot end with a special character (
Server Information > Server Type required Virtual Server server types for nodes - Standard: Standard specifications commonly used
- High Capacity: Large‑scale server specifications exceeding Standard
- GPU: GPU specifications available when securing resources for special requirements such as AI/ML
- NPU node: Dedicated computing node specifications available when securing resources for special requirements such as AI/ML
- For detailed information about the server types provided by Virtual Server, refer to Virtual Server Server Type
Server Information > Server OS required Node’s Virtual Sever OS image - Standard: RHEL 8.10, Ubuntu 22.04
- Custom: Custom image for Kubernetes created from the Virtual Server product (RHEL, Ubuntu)
Server Information > Block Storage Required Block Storage settings used by the node’s Virtual Server - SSD: High‑performance general volume
- HDD: General volume
- SSD/HDD_KMS: Additional encrypted volume using Samsung Cloud Platform KMS (Key Management System) encryption keys
- Encryption can be applied only at initial creation and cannot be changed after the service is created
- Using the SSD_KMS disk type may result in performance degradation
- SSD_Provisioned: Enter detailed settings for the selected storage type
- Enter a value in the 5,000–20,000 range for Max IOPS, and a value in the 250–1,000 range for Max Throughput
- For a Custom Image with SSD_Provisioned, preset values are auto‑filled and the fields are disabled
- Specify capacity in Units, entering a value between 13 and 1,536
- Since 1 Unit equals 8 GB, this creates 104–12,288 GB
Server Information > Server Group Selection Apply a pre‑created Server Group in the Virtual Server service on the node - Use click to set Server Group usage
- When enabling use, select a Server Group
- Supports Affinity or Anti‑Affinity policies
- Partition policy is not supported
- Cannot modify after node pool creation
- GPU server type cannot be selected
Server Information > Keypair required Authentication method used to connect to a node’s Virtual Server - New creation: Create a new one if a new Keypair is required
- Refer to Keypair 생성하기 for creating a new Keypair
- Default login account list by OS
- Alma Linux: almalinux
- RHEL: cloud-user
- Rocky Linux: rocky
- Ubuntu: ubuntu
- Windows: sysadmin
Network Information > Subnet Name required Select the Subnet to use among the primary Subnet and additional Subnets connected to the cluster - The primary Subnet displays
(Default)
- You can view Subnet type, classification, IP range, and Availability Zone information in the list
- Only Subnets with a registered DNS IP can be used
Network Information > Availability Zone required Select Availability Zone Network Information > Preferred IP Assignment Selection Click Use and enter an IP address or IP range - You can enter multiple IP addresses or ranges separated by commas
- The IP addresses or IP ranges that can be entered depend on the IP allocation range of the selected Subnet
- Refer to 노드 풀 우선 IP 지정 설정하기 for configuration instructions
Node Information > Node Pool Auto Scaling/Downscaling Required For how to set automatic adjustment of node pool node count - see 노드 풀 자동 확장/축소하기
Node Information > Node Count required Number of nodes to create within a node pool - Enter a value within the 1-100 range
Node Information > Node Auto Recovery required When an abnormal node is detected in the node pool, automatically delete it and create a new one. - Refer to 노드 풀 자동 복구하기 for the configuration method.
Node Information > Labels Select Optionally schedule workloads on nodes - Click the Add button to enter the label key and value
- For configuration instructions, see 노드 풀 레이블 설정하기
Node Information > Taint Select Prevent workloads from being scheduled on the node - Click the Add button to set the taint effect, and enter the key and value
- Refer to 노드 풀 테인트 설정하기 for configuration steps
Node Information > Advanced Settings Select Settings for detailed areas such as pods and logs for the node - Click Use to choose whether to apply advanced settings for the node pool to be created
- Refer to 노드 풀 고급 설정하기 for configuration method
Node pool connection resources Selection Configure linked resources for File Storage and Object Storage that require access to all nodes in the node pool - Add button to select File Storage and Object Storage resources to connect to the node pool, up to three can be selected per resource
- Refer to Configure linked resources for node pool for configuration instructions
Table. Kubernetes Engine node pool service information input fields - must start with a lowercase English letter and be entered using lowercase English letters, numbers, and special characters (
- Enter or select the required information in the Service Information Input area.
Summary Verify the detailed information and estimated billing amount generated in the panel, then click the Create button.
- When creation is complete, check the created resources on the Cluster Details > Node Pool Tab > Node Pool List page.
When the notification popup opens, click the Confirm button.
Adjusting the Number of Nodes
If needed, modify the number of nodes in the node pool on the Kubernetes Engine details page.
To modify the number of nodes, follow these steps.
- All Services > Container > Kubernetes Engine Click the menu. 1. Navigate to the Service Home page of Kubernetes Engine.
- On the Service Home page, click the Cluster menu. 2. Go to the Cluster List page.
- Cluster List page, select the cluster you want to modify the node count for. 3. Navigate to the Cluster Details page.
- On the Cluster Details page, after selecting the Node Pool tab, click the Node Pool Name you want to edit. 4. Navigate to the Node Pool Details page.
- On the Node Pool Details page, click the Adjust Node Count icon on the right of Node Pool Information. 5. Or click the More > Adjust Node Count at the far right of the node pool entry in the Node Pool tab. 5. Node Count Adjustment The popup window opens.
- Node Count Adjustment In the popup window, after modifying the node count information, click the Confirm button.
Upgrade Node Pool
If the control plane’s Kubernetes version and the node pool’s version differ, you can upgrade the node pool to synchronize the versions.
After upgrading the cluster, proceed with the node pool upgrade. Control plane and node pool upgrades of a Kubernetes cluster are performed separately. When you perform a node pool upgrade, a rolling update is carried out on the nodes belonging to the node pool. At this point, a brief service interruption may occur, but this is a normal phenomenon due to rolling updates, and it will automatically normalize after a short period.
- The server OS version may vary depending on the Kubernetes version of the node pool.
To upgrade the node pool, follow these steps.
- All Services > Container > Kubernetes Engine Click the menu. 1. Go to the Service Home page of Kubernetes Engine.
- On the Service Home page, click the Cluster menu. 2. Go to the Cluster List page.
- On the Cluster List page, select the cluster for which you want to perform a node pool version upgrade. 3. Navigate to the Cluster Details page.
- On the Cluster Details page, select the Node Pool tab, then click More > Upgrade at the far right of the Node Pool entry. 4. Or click the Upgrade button at the top right of the node pool detail page. 4. Node Pool Version Upgrade A popup window opens.
- You can upgrade the node pool only when the node’s status is Running.
- Node pool version upgrade After reviewing the information in the popup window, click the Confirm button.
Auto-scaling node pools
Node pool auto-scaling is a feature that automatically adjusts the number of nodes in a specified node pool by adding new nodes or removing existing nodes according to workload demands. This feature operates based on the node pool.
- When a node pool auto‑scales, it is adjusted based on the resource requests of the pods running on the node pool’s nodes rather than the actual resource utilization, and it periodically checks the status of pods and nodes and executes auto‑scaling operations.
To configure the node pool’s automatic scaling feature, follow these steps.
- All Services > Container > Kubernetes Engine Click the menu. 1. Navigate to the Service Home page of Kubernetes Engine.
- On the Service Home page, click the Cluster menu. 2. Navigate to the Cluster List page.
- Cluster List page, select the cluster you want to use the node auto-scaling feature for. 3. Navigate to the Cluster Details page.
- On the Cluster Details page, select the Node Pool tab, then click the Node Pool Name you want to edit. 4. Navigate to the Node Pool Details page.
- On the Node Pool Details page, click the Adjust Node Count icon to the right of the Node Pool Information. 5. Or click More > Adjust Node Count at the far right of the node pool entry in the Node Pool tab. 5. Adjust Node Count The popup window opens.
- In the Node count adjustment popup, select Node pool auto-scaling as Enable.
- After entering the minimum and maximum node counts, click the Confirm button.Reference
Node pool auto-scaling settings can also be configured on the cluster node pool creation page.
- Node pool scaling conditions
- When a pod fails to start in the cluster due to insufficient resources (resulting in a Pending pod)
- Node pool reduction criteria (when all are met)
- If the sum of resource requests (CPU/Memory) of all pods running on a node is less than 50 % of the node’s allocatable resources.
- When all pods running on a node can be scheduled on another node (there must be no pods subject to PDB restrictions, etc.)
- When using automatic node pool scaling, to prevent deletion due to node reduction, please add the following annotation to the node.
cluster-autoscaler.kubernetes.io/scale-down-disabled: “true”
- Node pool scaling conditions
- Node pool auto-scaling operates only when NotReady nodes constitute 45% or less of all nodes in the cluster and are three or fewer.
- If there are nodes that are directly connected instead of node pools created by the Kubernetes Engine service, using this feature may cause malfunction.
Automatically restore node pool
Node auto-recovery is a feature that automatically deletes an abnormal node when it is detected in the cluster, creates a new node, and restores the node count in the node pool to a normal state. This feature operates based on the node pool.
Node auto-recovery deletes the existing node and creates a new one when communication between K8S control planes fails due to node (Virtual Server) problems, a stopped state, network issues, etc., so it should be used with caution.
- When creating a node pool, it is restored according to the initially set conditions, and any custom settings made after node creation are not restored.
If there are nodes directly connected instead of node pools created by the Kubernetes Engine service, using this feature may cause malfunction.
To configure the node auto-recovery feature, follow these steps.
- All Services > Container > Kubernetes Engine Click the menu. 1. Navigate to the Service Home page of Kubernetes Engine.
- On the Service Home page, click the Cluster menu. 2. Navigate to the Cluster List page.
- On the Cluster List page, select the cluster for which you want to use the node auto-recovery feature. 3. Navigate to the Cluster Details page.
- On the Cluster Details page, after selecting the Node Pool tab, click the Node Pool Name you want to edit. 4. Navigate to the Node Pool Details page.
- On the Node Pool Details page, click the Adjust Node Count icon to the right of Node Pool Information. 5. Or click More > Adjust Node Count at the far right of the node pool entry in the Node Pool tab. 5. Node Count Adjustment popup window opens.
- Node Count Adjustment in the popup window, select Node Auto Recovery as Enable, then click the Confirm button.
Node auto-recovery can also be configured on the cluster node pool creation page.
- If the node is an automatic recovery target
- If a node reports a NotReady status in consecutive checks for a set time threshold (approximately 10 minutes)
- When a node fails to report its status at all for a set time threshold (approximately 10 minutes)
- If the node is not a target for automatic recovery
- When the initial node is created, the node remains in the Creating state instead of reaching the Running state.
- When more than five abnormal nodes occur simultaneously in the same node pool.
Setting node pool labels
Node pool labels are a feature for selectively scheduling workloads onto nodes.
- When applying a node pool label, it is not applied to existing nodes; the label is applied only to nodes created thereafter.
- If you need to apply a label to an existing node, the user must configure it directly with kubectl.
To set the node pool label, follow the steps below.
- All Services > Container > Kubernetes Engine menu, click it. 1. Go to the Service Home page of Kubernetes Engine.
- On the Service Home page, click the Cluster menu. 2. Navigate to the Cluster List page.
- On the Cluster List page, select the cluster for which you want to set the node pool label. 3. Navigate to the Cluster Details page.
- On the Cluster Details page, after selecting the Node Pool tab, click the Node Pool Name you want to edit. 4. Node Pool Details page.
- On the Node Pool Details page, when you click the Edit icon of the label, the Label Edit popup window opens.
- Edit label In the popup window, click the Add button to add the required number of labels.
- Enter the label information and click the Confirm button.
Configure node pool taint
Node pool taint is a feature that prevents workloads from being scheduled onto nodes.
- If you set taints on all node pools, pods required for normal cluster operation may not be scheduled.
- When applying a node pool taint, it is not applied to existing nodes; the taint is applied only to nodes created thereafter.
- If you need to apply a taint to an existing node, the user must configure it directly with kubectl.
To set the node pool taint, follow these steps.
- All Services > Container > Kubernetes Engine Click the menu. 1. Navigate to the Service Home page of Kubernetes Engine.
- On the Service Home page, click the Cluster menu. 2. Navigate to the Cluster List page.
- On the Cluster List page, select the cluster for which you want to set the node pool taint. 3. Navigate to the Cluster Details page.
- On the Cluster Details page, after selecting the Node Pool tab, click the Node Pool Name you want to edit. 4. Navigate to the Node Pool Details page.
- On the Node Pool Details page, clicking the Edit icon of a taint opens the Edit Taint popup.
- Tint Edit in the popup window, click the Add button to add as many tints as needed.
- Enter the tint information and click the Confirm button.
Configure Advanced Node Pool Settings
Node pool advanced settings are features that allow you to apply detailed configurations such as the number of pods per node, PID, logs, and image garbage collection.
Each setting corresponds to the kubelet configuration as follows.
- Maximum pods per node: maxPods
- Image GC high threshold percent: imageGCHighThresholdPercent
- Image GC lower bound percent: imageGCLowThresholdPercent
- Container log maximum size MB: containerLogMaxSize
- Container log maximum file count: containerLogMaxFiles
- Pod PID limit: podPidsLimit
- Unsafe Sysctl allowed: allowedUnsafeSysctls
To configure advanced settings for the node pool, follow these steps.
- Click the All Services > Container > Kubernetes Engine menu. 1. Navigate to the Service Home page of Kubernetes Engine.
- On the Service Home page, click the Cluster menu. 2. Navigate to the Cluster List page.
- On the Cluster List page, select the cluster for which you want to configure advanced node pool settings. 3. Navigate to the Cluster Details page.
- On the Cluster Details page, select the Node Pool tab, then click Create Node Pool. 4. Go to the Create Node Pool page.
- On the Node Pool Creation page, select Advanced Settings as Enabled.
- After selecting Use, enter the required information for the items that appear.
- After confirming that the required information has been entered correctly in the Summary tab, click the Create button.
Configure linked resources for node pool
Node pool connection resources are a feature for connecting or disconnecting File Storage and Object Storage on a per-node-pool basis.
- Node pool connection resources have a count limit.
- You can add up to 3 File Storage, up to 3 Object Storage, for a total of 6 connection resources.
- StorageClass and Provisioner for node pool connection resources are not provided.
- Do not arbitrarily modify the automatically added connection resources in the node pool within the File Storage and Object Storage services. * Changes may be reverted or cause unexpected behavior.
To configure node pool connection resources, follow the steps below.
- Click the All Services > Container > Kubernetes Engine menu. 1. Navigate to the Service Home page of Kubernetes Engine.
- On the Service Home page, click the Cluster menu. 2. Navigate to the Cluster List page.
- On the Cluster List page, select the cluster for which you want to configure node pool connection resources. 3. Cluster Details navigate to the page.
- On the Cluster Details page, select the Node Pool tab, then click the Node Pool Name you wish to edit. 4. Node Pool Details Go to the page.
- On the Node Pool Details page, when you click the Edit icon of the node pool connection resource, the Node Pool Connection Resource Edit popup opens.
- When you click the Add button in the Node Pool Connection Resource Edit popup, the Node Pool Connection Resource Add popup opens.
- Add node pool connection resources In the popup window, select File Storage and Object Storage.
- After verifying the resources to connect to the node pool, click the Confirm button.
Configure Preferred IP for Node Pool
This feature allows you to prioritize assigning IPs to new nodes on a per-node-pool basis. When you enable Priority IP assignment, new nodes are assigned IPs sequentially within the specified range. If an IP cannot be allocated within the specified range, just as when Priority IP assignment is not set, the IP within the cluster subnet is automatically assigned.
To configure priority IP assignment for a node pool, follow the steps below.
- All Services > Container > Kubernetes Engine Click the menu. 1. Navigate to the Service Home page of Kubernetes Engine.
- On the Service Home page, click the Cluster menu. 2. Go to the Cluster List page.
- Select the cluster you want to configure node pool primary IP assignment for on the Cluster List page. 3. Navigate to the Cluster Details page.
- On the Cluster Details page, select the Node Pool tab, then click the Node Pool Name you want to edit. 4. Go to the Node Pool Details page.
- On the Node Pool Details page, when you click the Edit icon of the priority IP assignment, the Edit Priority IP Assignment popup opens.
- Edit Primary IP Assignment In the popup window, enter the primary IP range and click the Confirm button.
First, the input format for the IP range is as follows.
- Single IP: one IPv4 address (e.g., 192.168.99.0)
- IP range: specify a continuous address in the startIP‑endIP format (e.g., 192.168.0.0-192.168.0.255)
- Combination: Enter as a single string separating the two above with commas (e.g., 192.168.99.0,192.168.0.0-192.168.0.255,10.0.0.5)
Delete Node Pool
If needed, delete the node pool from the Kubernetes Engine details page.
To delete a node pool, follow these steps.
- All Services > Container > Kubernetes Engine Click the menu. 1. Navigate to the Service Home page of Kubernetes Engine.
- On the Service Home page, click the Cluster menu. 2. Navigate to the Cluster List page.
- On the Cluster List page, select the cluster whose node count you want to modify. 3. Navigate to the Cluster Details page.
- Cluster Details page, select the Node Pool tab, then click the More button at the far right of the node pool item. 4. Or, on the node pool detail page, click the Delete Node Pool button at the top right. 4. Node Pool Deletion The popup window opens.
- Node Pool Deletion In the popup window, select the checkbox, enter the name of the node pool to delete, and click the Confirm button.
- You must select the checkbox in the node deletion confirmation message for the confirm button to become active.
View node details
After creating the cluster, you can view metadata, object information, and other details of the added nodes, and edit resource files using a YAML editor.
To view detailed information about the node pool, follow these steps.
- All Services > Container > Kubernetes Engine Click the menu. 1. Navigate to the Service Home page of Kubernetes Engine.
- On the Service Home page, click the Node menu. 2. Navigate to the Node List page.
- On the Node List page, select the cluster whose detailed information you want to view from the gear button at the top left, then click the Confirm button.
- Select the node you want to view detailed information for and click. 4. Navigate to the Node Details page.
Category Detailed descriptionStatus Indicator Display the current status of the node Detailed Information Check the node’s account information, metadata, and object information. YAML Node resources can be edited in the YAML editor - Click the Edit button, modify the resource, and then click the Save button to apply the changes
- When editing content, click the Diff button to view the changed content
event Check events that occurred on the node Pod Check node pod information - A Pod is the smallest compute unit that can be created, managed, and deployed in Kubernetes Engine
Account information Check basic information about the Account, such as the account name, location, and creation date/time. Metadata Information Check the node’s label, annotation, taint, and other metadata information. Object Information The object information of the created node, such as internal IP, machine ID, capacity, and resources, is displayed - If GPU resources are present, check the number of GPUs in the Capacity > Nvidia.com/GPU column
Table. Node detailed information items