How to Provision a Vultr Kubernetes Engine Cluster

Updated on September 23, 2024

Vultr Kubernetes Engine (VKE) is a fully-managed service that lets you deploy Kubernetes clusters with predictable pricing. Vultr manages the control plane and worker nodes while providing integration with other managed services such as Load Balancers, Block Storage, and DNS. VKE clusters simplify orchestration, allowing you to focus on scaling and building applications with minimal overhead. Vultr Kubernetes Engine (VKE) is ideal for automating CI/CD pipelines, managing microservices, or deploying AI-driven applications with global reach and reliability.

Follow this guide to provision a Vultr Kubernetes Engine cluster on your Vultr Account using the Vultr Customer Portal, API, or CLI.

  • Vultr Customer Portal
  • Vultr API
  • Vultr CLI
  1. Navigate to Products and click Kubernetes.
  2. Click Add Cluster.
  3. Enter your desired VKE cluster name in the Cluster Name field.
  4. Click the Kubernetes Version drop-down and select your target version.
  5. Optional: Enable High Availability for multiple nodes and Vultr Firewall to filter network traffic.
  6. Under Cluster Configuration, click the Node Pool Type drop-down and select the node instance type.
  7. Click the Node Pool Plan drop-down and select the target node plan.
  8. Enter a Label for your node and select the Number of Nodes to attach to the cluster.
  9. Choose a Vultr Location for your cluster.
  10. Click Deploy Now to provision the Vultr Kubernetes Engine (VKE) Cluster.
  1. Send a GET request to the List Regions endpoint and note your target Vultr region ID.

    console
    $ curl "https://api.vultr.com/v2/regions" \
        -X GET \
        -H "Authorization: Bearer ${VULTR_API_KEY}"
    
  2. Send a GET request to the List available plans in region endpoint to view all available instance plans in your chosen region and note the target node pool plan.

    console
    $ curl "https://api.vultr.com/v2/regions/{region-id}/availability" \
        -X GET \
        -H "Authorization: Bearer ${VULTR_API_KEY}"
    
  3. Send a GET request to the Get Kubernetes Versions endpoint and note your target Kubernetes version to use.

    console
    $ curl "https://api.vultr.com/v2/kubernetes/versions" \
        -X GET \
        -H "Authorization: Bearer ${VULTR_API_KEY}"
    
  4. Send a POST request to the Create Kubernetes Cluster endpoint to provision a VKE cluster with your target region, plan, and Kubernetes version.

    console
    $ curl "https://api.vultr.com/v2/kubernetes/clusters" \
        -X POST \
        -H "Authorization: Bearer ${VULTR_API_KEY}" \
        -H "Content-Type: application/json" \
        --data '{
            "label": "{cluster-name}",
            "region": "{region-id}",
            "version": "{kubernetes-version}",
            "node_pools": [
                {
                    "node_quantity": {number-of-nodes},
                    "label": "{node-label}",
                    "plan": "{node-plan}"
                }
            ]
        }'
    

    Visit the Create Kubernetes Cluster page to view additional attributes you can apply to your VKE cluster provisioning request.

  5. Send a GET request to the List all Kubernetes Clusters endpoint to list all VKE clusters in your Vultr account.

    console
    $ curl "https://api.vultr.com/v2/kubernetes/clusters" \
        -X GET \
        -H "Authorization: Bearer ${VULTR_API_KEY}"
    
  1. List all Vultr regions and note your target region ID.

    console
    $ vultr-cli regions list
    
  2. List all available instance plans in your target region and note the target node pool plan.

    console
    $ vultr-cli regions availability <region-id>
    
  3. List all available Kubernetes versions and note your target version to use.

    console
    $ vultr-cli kubernetes versions
    
  4. Provision a VKE cluster with your target node plan, region ID, Kubernetes version and region.

    console
    $ vultr-cli kubernetes create --label "<cluster-name>" --region "<region-id>" --version "<kubernetes-version>" --node-pools "quantity:<number-of-nodes>,plan:<node-plan>,label:<node-label>"
    

    Run vultr-cli kubernetes create --help to view additional options you can apply to your VKE cluster provisioning request.

  5. List all VKE clusters in your Vultr account.

    console
    $ vultr-cli kubernetes list --summarize
    

Comments

No comments yet.