> For the complete documentation index, see [llms.txt](https://docs.acecloud.ai/knowledge-base/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.acecloud.ai/knowledge-base/kubernetes-hosted/how-to-add-a-node-group-to-a-hosted-kubernetes-cluster.md).

# How to Add a Node Group to a Hosted Kubernetes Cluster?

## **Overview**

Hosted Kubernetes allows you to add worker nodes to an existing cluster by creating a **Node Group**. A node group is a pool of worker nodes with a common configuration, including compute flavor, storage, security groups, key pair, autoscaling settings, labels, and taints.

## **Prerequisites**

Before adding a node group:

* Ensure that a Hosted Kubernetes cluster is available.
* Ensure that you have the required **quota** available for the worker nodes, including the required **compute flavor, number of worker nodes, and storage capacity**
* Ensure that you have the required **Security Group** and **Key Pair**, or permission to create them.
* Determine the required compute flavor, number of worker nodes, and storage capacity.
* If autoscaling is required, determine the minimum and maximum number of worker nodes.

## **Add a Node Group**

1. Log in to the **AceCloud portal**.
2. Navigate to **Kubernetes > Hosted > Overview**.

![](https://315001803-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4J4izUBTSuiTE14qXBAP%2Fuploads%2F2HTDhx7YtY4uCf8RIrvn%2Funknown.png?alt=media\&token=34586e8e-0be4-4580-8646-5e679632da18)

3. Click the name of the cluster to which you want to add worker nodes.

![](https://315001803-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4J4izUBTSuiTE14qXBAP%2Fuploads%2FKVbLr2ysbPEaPJhQ2igd%2Funknown.png?alt=media\&token=9f5607c8-08db-45ee-96e2-42c31bb74faa)

4. Go to the **Compute** tab.

![](https://315001803-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4J4izUBTSuiTE14qXBAP%2Fuploads%2F5r3J76rkfy5oDomnCSSW%2Funknown.png?alt=media\&token=f8a543de-3780-4be7-9793-0e2abd7b4d35)

5. Under **Node Groups**, click **Add Node Group**.

![](https://315001803-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4J4izUBTSuiTE14qXBAP%2Fuploads%2F2aiMA5Vdb5aciQ0xUJDH%2Funknown.png?alt=media\&token=d85adee8-80a5-4aef-9000-2f1fa629c267)

### **Configure Node Group Details**

Under **Node Group Details**, enter the following:

* **Node Group Name**: Enter a unique name for the node group. This name is used as the hostname prefix for the worker nodes in the pool.

![](https://315001803-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4J4izUBTSuiTE14qXBAP%2Fuploads%2FjQD2TLlbzq9LGLW19Agp%2Funknown.png?alt=media\&token=606b73db-dc55-491b-9c01-85240b8dcb57)

### **Configure Compute and Storage**

Under **Specification**, configure the worker node resources:

1. Select the required **Flavor Type**.
2. Select the required **Flavor**.
3. Enter the **Quantity of worker nodes** to specify the number of worker nodes to create.
4. Enter the required **Volume (GB)** for worker node storage.

![](https://315001803-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4J4izUBTSuiTE14qXBAP%2Fuploads%2FaX0fu7s6GVIjQWTkYjD9%2Funknown.png?alt=media\&token=2f3b301c-ad3f-4d8f-8572-27637b7d0acd)

***Note:** GPU-based flavors are subject to availability. If you require a GPU flavor that is not currently available, create a **Support Ticket** through the AceCloud portal to request GPU resources.*

### **Configure Access and Metadata**

Under **Access & Metadata**, configure the following options:

#### **Security Groups**

Select the required **Security Group** for the worker nodes.

If the required security group is not available, click **Create** to create one.

#### **Key Pair**

Select the **Key Pair** that will be used for SSH access to the worker nodes.

If required, click **Create** to create a new key pair.

### **Configure Autoscaling**

Enable **Enable Autoscaling** if you want the number of worker nodes in the node group to automatically scale based on the configured limits.

When autoscaling is enabled:

* **Minimum worker nodes**: Specify the minimum number of worker nodes that the node group can scale down to.
* **Maximum worker nodes**: Specify the maximum number of worker nodes that the node group can scale up to.

If autoscaling is disabled, the node group maintains the configured quantity of worker nodes.

### **Configure Worker Node Labels**

Use **Worker Node Labels** to assign key-value labels to the worker nodes.

1. Enter a label **Key**.
2. Enter the corresponding **Value**.
3. Click **+ Add Label** to add additional labels.

Labels can be used to identify and organize worker nodes and can be used by Kubernetes workloads for node selection.

### **Configure Taints**

Use **Taints** to control which workloads can be scheduled on the worker nodes.

1. Enter the **Key**.
2. Enter the **Value**.
3. Select the required **Effect**.
4. Click **+ Add Taint** to add additional taints.

![](https://315001803-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4J4izUBTSuiTE14qXBAP%2Fuploads%2FDKV7Tyf2rTitOC1KyC1N%2Funknown.png?alt=media\&token=40eaeda9-1459-4d9c-b521-bf47454b2d9c)

## **Review the Node Group Configuration**

The **Node Group Overview** panel displays a summary of the configuration, including:

* Node Group Name
* Flavor
* Quantity of worker nodes
* Volume
* Key Pair
* Security Groups
* Worker Node Labels
* Taints
* Autoscaling status
* Minimum worker nodes
* Maximum worker nodes

Review the configuration before creating the node group.

![](https://315001803-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4J4izUBTSuiTE14qXBAP%2Fuploads%2FgfAJx7YAOyLToly0ke9B%2Funknown.png?alt=media\&token=b9c9632c-807c-4f22-bd9b-bc5a84511169)

## **Create the Node Group**

1. Review the configuration in the **Node Group Overview** panel.
2. Click **Create Node Group**.

![](https://315001803-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4J4izUBTSuiTE14qXBAP%2Fuploads%2Fa8V3tvZy8vU6j0rtncv1%2Funknown.png?alt=media\&token=c2178062-48ac-46f2-ac73-609c13b68fd4)

3. The node group is created and added to the selected Hosted Kubernetes cluster.

After successful creation, the node group and its worker nodes are available under the cluster's **Compute** tab.

**Note:** The available flavors, security groups, key pairs, and other options may vary depending on the project, region, and available resources.

### Node States

After a node group is created or modified, worker nodes progress through different states during provisioning and removal. The **State** column in the node group displays the current status of each worker node.

| **State**        | **Description**                                                                                |
| ---------------- | ---------------------------------------------------------------------------------------------- |
| **Pending**      | The node request has been accepted, and the node configuration is being prepared.              |
| **Provisioning** | The required port, volume, and instance are being created.                                     |
| **Provisioned**  | The instance is booting and preparing to join the Kubernetes cluster.                          |
| **Running**      | The worker node has successfully joined the Kubernetes cluster and is available for workloads. |
| **Deleting**     | The port, volume, and instance associated with the worker node are being removed.              |

> **Note:** The node state is updated as the provisioning or deletion process progresses. A newly added worker node may take some time to reach the **Running** state.

## Manage Node Group Capacity

After creating a node group, you can manage its worker node capacity directly from the **Compute** tab. The node group provides the following actions:

| Action                      | Description                                                                                                                                                               |
| --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Show node group details** | Opens the node group details and displays its configuration, including autoscaling status, Kubernetes version, key pair, security groups, worker node labels, and taints. |
| **Scale in**                | Removes one worker node from the node group, reducing the number of worker nodes in the pool by one.                                                                      |
| **Scale out**               | Adds one worker node to the node group, increasing the number of worker nodes in the pool by one.                                                                         |

<figure><img src="https://315001803-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4J4izUBTSuiTE14qXBAP%2Fuploads%2F4jUu2G6ZnihoCGATAcCz%2Fimage.png?alt=media&amp;token=cbe888bc-a62b-4ba6-b090-d4df55da256d" alt=""><figcaption></figcaption></figure>

### Scale In

To remove a worker node:

1. In the required node group, click the **– (Scale in)** icon.
2. A confirmation dialog is displayed showing the node group **scale in**.
3. Review the details and click **Confirm** to proceed.

<figure><img src="https://315001803-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4J4izUBTSuiTE14qXBAP%2Fuploads%2F840RnOsLuPSYt18StEBh%2Fimage.png?alt=media&amp;token=6ce4ee7a-7c80-4897-8aff-4da5c3f07b3c" alt=""><figcaption></figcaption></figure>

> **Note:** Scaling in reduces the number of worker nodes in the node group by one. Ensure that removing a worker node does not affect your workload capacity.

### Scale Out

To add a worker node:

1. In the required node group, click the **+ (Scale out)** icon.
2. A confirmation dialog is displayed showing the node group **scale out**.
3. Review the details and click **Confirm** to proceed.

<figure><img src="https://315001803-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4J4izUBTSuiTE14qXBAP%2Fuploads%2FSLFtemPf79at2oOO7oj2%2Fimage.png?alt=media&amp;token=b46bb8ee-f48c-413f-8894-9d51477a0e09" alt=""><figcaption></figcaption></figure>

The worker node is then added to the node group.

> **Note:** Scaling out increases the number of worker nodes in the node group by one and may consume additional compute and storage quota.

### View Node Group Details

To view the configuration of a node group:

1. In the required node group, click the **Show node group details** icon.

<figure><img src="https://315001803-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4J4izUBTSuiTE14qXBAP%2Fuploads%2FusTedcsXe6Q5AAOSRZTB%2Fimage.png?alt=media&amp;token=d91b9c44-5dab-4149-811a-c9c785e63a13" alt=""><figcaption></figcaption></figure>

2. Review the displayed configuration.

The details include:

* **Autoscaling**
* **Kubernetes Version**
* **Key Pair**
* **Security Groups**
* **Worker Node Labels**
* **Taints**

<figure><img src="https://315001803-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4J4izUBTSuiTE14qXBAP%2Fuploads%2Fz5aUDYAFSWAsIldYXjrZ%2Fimage.png?alt=media&amp;token=53492020-4c39-45dd-9f53-a30089793b15" alt=""><figcaption></figcaption></figure>

These options allow you to verify the node group's current configuration without opening the node group creation page.
