---
title: Delete
url: https://docs.vultr.com/products/compute/kubernetes/management/node-pool/delete
description: Learn how to remove node pools from your Vultr Kubernetes Engine (VKE) cluster to adjust your clusters resources.
publish_date: 2025-03-27T16:38:48.332773Z
last_updated: 2026-05-26T19:00:37.191147Z
---

# How to Delete Node Pools from a Vultr Kubernetes Engine Cluster

Managing resources efficiently in a Vultr Kubernetes Engine (VKE) cluster includes the ability to remove individual worker nodes or delete entire Node Pools when scaling down infrastructure. Removing a single instance from a Node Pool ensures better cost management and workload reallocation, while deleting an entire Node Pool eliminates unnecessary resources and optimizes cluster performance.

Follow this guide to delete a Node or an entire Node Pool from a Vultr Kubernetes Engine cluster on your Vultr account using the Vultr Console, API, CLI, or Terraform.

=== "Vultr Console"

    1. Navigate to **Products** and click **Kubernetes**.
    1. Click your target VKE cluster to open its management page.
    1. Click **Nodes**.
    1. Locate your target Node Pool and click the plus icon to expand the Node Pool to view the attached instances.
    1. Click the delete icon to remove the target Node from the Node Pool.
    1. To delete a Node Pool, click the delete icon at the Node Pool level.
    1. Check the **Yes, destroy this node pool** box in the confirmation prompt, and click **Destroy Node Pool** to permanently delete the target Node Pool.

=== "Vultr API"

    1. Send a `GET` request to the [**List all Kubernetes Clusters** endpoint](https://www.vultr.com/api/#tag/kubernetes/operation/list-kubernetes-clusters) and note the target VKE cluster's ID.

        ```console
        $ curl "https://api.vultr.com/v2/kubernetes/clusters" \
            -X GET \
            -H "Authorization: Bearer $VULTR_API_KEY"
        ```

    1. Send a `GET` request to the [**List NodePools** endpoint](https://www.vultr.com/api/#tag/kubernetes/operation/get-nodepools) to view all Node Pools and note the target Node Pool's ID.

        ```console
        $ curl "https://api.vultr.com/v2/kubernetes/clusters/{cluster-id}/node-pools" \
            -X GET \
            -H "Authorization: Bearer ${VULTR_API_KEY}"
        ```

    1. Send a `GET` request to the [**Get NodePool** endpoint](https://www.vultr.com/api/#tag/kubernetes/operation/get-nodepool) and note the target Node's ID.

        ```console
        $ curl "https://api.vultr.com/v2/kubernetes/clusters/{cluster-id}/node-pools/{nodepool-id}" \
            -X GET \
            -H "Authorization: Bearer ${VULTR_API_KEY}"
        ```

    1. Send a `DELETE` request to the [**Delete NodePool Instance** endpoint](https://www.vultr.com/api/#tag/kubernetes/operation/delete-nodepool-instance) to delete the target Node from the Node Pool.

        ```console
        $ curl "https://api.vultr.com/v2/kubernetes/clusters/{cluster-id}/node-pools/{nodepool-id}/nodes/{node-id}" \
            -X DELETE \
            -H "Authorization: Bearer ${VULTR_API_KEY}"
        ```

    1. Send a `DELETE` request to the [**Delete Nodepool** endpoint](https://www.vultr.com/api/#tag/kubernetes/operation/delete-nodepool) to delete the target Node Pool.

        ```console
        $ curl "https://api.vultr.com/v2/kubernetes/clusters/{cluster-id}/node-pools/{nodepool-id}" \
            -X DELETE \
            -H "Authorization: Bearer ${VULTR_API_KEY}"
        ``` 

=== "Vultr CLI"

    1. List the available VKE clusters in your Vultr account and note the target VKE cluster's ID.

        ```console
        $ vultr-cli kubernetes list --summarize
        ```

    1. List all the available Node Pools in the VKE cluster and note the target Node Pool's ID.

        ```console
        $ vultr-cli kubernetes node-pool list <cluster-id> --summarize
        ```

    1. List the attached instances of the target Node Pool and note the taget Node's ID.

        ```console
        $ vultr-cli kubernetes node-pool get <cluster-id> <nodepool-id>
        ```

    1. Delete the target Node from the Node Pool.

        ```console
        $ vultr-cli kubernetes node-pool node delete <cluster-id> <nodepool-id> <node-id>
        ```

    1. Delete the target Node Pool from the VKE cluster.

        ```console
        $ vultr-cli kubernetes node-pool delete <cluster-id> <nodepool-id>
        ```

=== "Terraform"

    1. Open your Terraform configuration for the existing VKE cluster.

    1. Remove the Node Pool block you want to delete, or reduce `node_quantity` to remove nodes.

        ```terraform
        resource "vultr_kubernetes" "vke" {
            # ...existing fields (label, region, version)

            # keep only the node pools you want to retain
            node_pools {
                node_quantity = 3
                label         = "pool-a"
                plan          = "vc2-2c-4gb"
            }
            # node_pools "pool-b" removed from configuration
        }
        ```

    1. Apply the configuration and observe the following output:

        ```
        Apply complete! Resources: 0 added, 1 changed, 0 destroyed.
        ```
