--- title: "Add and delete worker pools" description: "Add a worker pool to a running TIR Kubernetes cluster, read each pool's plan, nodes, and status on the Node Pool tab, and delete a pool you have finished with." content_type: "how-to" product: "tir-kubernetes" platform: "TIR" url: "/tir/tir-kubernetes/how-to/manage-worker-pools/" topic: ["worker-pools"] --- # Add and delete worker pools Add a worker pool to give a running cluster more capacity, or capacity of a different kind, while the pools it already has keep running. Delete a pool to remove nodes you are done with. Both happen on the cluster's **Node Pool** tab. To change the size of an existing pool instead, see [Resize or autoscale a worker pool](/tir/tir-kubernetes/how-to/resize-or-autoscale-a-worker-pool/). ## Before you begin - A cluster in the **Ready** or **Worker Joined** state. - A role with the update permission on Kubernetes to add a pool, or both the update and the delete permissions to delete one. See [Roles and permissions](/tir/tir-iam/concepts/roles-and-permissions/). - On a prepaid account, enough credit for the new pool. TIR checks your credit and the free capacity before it adds the pool. ## Find your pools Open the cluster's details page and select the **Node Pool** tab. Select a pool to see its plan, price, labels and taints, and the state of each node. For what each pool status means, see [How a TIR Kubernetes cluster works](/tir/tir-kubernetes/concepts/how-a-cluster-works/#worker-pool-statuses). Each worker pool row has buttons for the changes you can make to it. When the status blocks a change, holding the pointer over its button tells you why. ## Add a worker pool 1. On the **Node Pool** tab, select **Add Worker Pool**. It works the same way as on the create form. 2. Keep the **Pool name** TIR suggests, which starts with `worker-pool-` and is unique in the cluster, or type your own. Use up to 128 lowercase letters, numbers, and hyphens, and start and end with a letter or number. 3. Set **Number of nodes**, from 1 to 25. 4. Choose a **Computing resource**, a **Configuration** of vCPUs and RAM, and a **Pricing plan**. Choose **On-Demand** while you are still learning how many nodes the pool needs. **Estimated pool cost** gives the cost for the number of nodes you set; prices for every plan are on [E2E's pricing page](https://www.e2enetworks.com/pricing). 5. (Optional) Add node labels and taints. See [Set node labels and taints](/tir/tir-kubernetes/how-to/set-node-labels-and-taints/). 6. Select **Add node pool**. If the pool needs more nodes than are free, TIR says how many are free. Lower the count or choose another resource to go on. With a committed plan, the pool's node count is fixed until its term ends, and you confirm it in **Committed Plans Confirmation** before TIR adds the pool: tick the box to accept that TIR deducts the full amount upfront and refunds nothing if you delete the pool early, then select **Proceed**. For how committed pools work, see [Manage committed plans](/tir/tir-kubernetes/how-to/manage-committed-plans/). TIR queues the pool, which goes from **Queued** to **Joining** to **Ready**. While its nodes join, the cluster is **Worker Joining**, and returns to **Ready** when they have joined. Your existing pools and the pods on them keep running. If TIR refuses the pool, it gives the reason. ## Delete a worker pool You can delete any pool except the cluster's last one. Deleting a pool removes every node in it, with its local disk, and evicts the pods running on those nodes. The delete is permanent. Before you delete a pool, make sure your workloads have replicas on other pools. Keep their data on a persistent volume, which outlives any one node, rather than on a node's own disk. 1. On the **Node Pool** tab, find the pool's row and select **Delete worker pool**. **Delete Worker Pool** opens and asks you to confirm that TIR removes all worker nodes in the pool. 2. Tick the box that confirms you want to delete the pool, and select **Delete Pool**. TIR queues the deletion and tells you so, and the pool shows **Deleting** until it is gone. Billing for an hourly pool stops the moment you ask to delete it. You paid for a committed pool's term upfront, so you get nothing back if you delete it early. ## Check the pools On the **Node Pool** tab, a new pool shows **Ready** and lists each of its nodes. To see the same nodes from your machine, run `kubectl get nodes` with the cluster's kubeconfig; see [Connect to a Kubernetes cluster](/tir/tir-kubernetes/how-to/connect-to-a-cluster/). To change how many nodes a pool runs later, [resize or autoscale it](/tir/tir-kubernetes/how-to/resize-or-autoscale-a-worker-pool/). If a pool stays on **Joining** or ends at **Failed**, see [Troubleshooting TIR Kubernetes](/tir/tir-kubernetes/troubleshooting/tir-kubernetes/#a-worker-pool-shows-failed).