---
title: Provisioning
url: https://docs.vultr.com/products/compute/instances/cloud-compute/provisioning
description: A guide explaining how to set up and deploy new cloud compute instances on the Vultr platform.
publish_date: 2024-09-23T20:19:47.742076Z
last_updated: 2026-05-26T18:41:50.129882Z
---

# How to Provision Vultr Cloud Compute Instances

Vultr Cloud Compute instances are shared CPU virtual machines designed for demanding applications with bursty performance, such as low-traffic websites, blogs, CMS, development/test environments, and small databases. Vultr Cloud Compute instances are capable of running general purpose applications without specific CPU, memory or storage performance restrictions.

Follow this guide to provision Vultr Cloud Compute instances using the Vultr Console, API, CLI, or Terraform.

=== "Vultr Console"

    1. Navigate to **Products** and click **Compute**.
    1. Click **Deploy**.
    1. Choose **Shared CPU** as the instance type.
    1. Select your desired Vultr location to deploy the instance to.
    1. Select a plan category from the sidebar:

        * **Cloud Compute**: Virtual Machines powered by previous generation Intel CPUs and regular SSD, and offer a good balance of price and performance.
        * **High Frequency**: Virtual Machines with a higher clock speed (>3Ghz) for CPU intensive applications and ultra fast NVMe storage.
        * **High Performance**: Virtual Machines powered by the latest generation Intel Xeon CPUs or AMD EPYC CPUs and ultra fast NVMe storage.

    1. Select a plan from the available options based on your vCPU, memory, storage, and bandwidth requirements.
    1. Click **Configure Software**.
    1. Select a cloud image to install on the instance based on the following options:

        * **Operating System**: Installs a fresh operating system image on the instance.
        * **Marketplace Apps**: Installs a prebuilt software stack or application and the recommended operating system image on the instance.
        * **ISO/iPXE**: Boots a specific ISO available or iPXE-compatible image on the instance.
        * **ISO Library**: Installs a specific ISO image from the Vultr ISOs library.
        * **Backup**: Recovers a specific backup available in your Vultr account to the instance.
        * **Snapshot**: Installs a specific snapshot available in your Vultr account to the instance.

    1. Select optional **Server Settings** to apply on the instance.

        * **SSH Keys**: Installs a specific SSH key on the instance.
        * **Startup Script**: Enables a startup script to execute at deployment or a PXE script to automate the operating system installation.
        * **Firewall Group**: Activates a Vultr Firewall group to filter incoming network traffic on the instance.

    1. Enter a new hostname in the **Server Hostname** field and a descriptive label in the **Server Label** field to identify the instance.

    1. Configure **Additional Features** for the instance.

        * **Instance Connectivity**: Select how the instance connects to the internet.
            - **Instance(s) with Public IP**: Assigns public IP addresses directly to the instance. Under **Instance Address**, **Public IPv4** is enabled by default. Select **Public IPv6** to enable IPv6 addressing. After selecting IPv6, you can optionally deselect **Public IPv4** to create an IPv6-only instance.
            - **Private Instance(s) behind NAT Gateway**: Routes internet traffic through a NAT Gateway in a Virtual Private Cloud (VPC) Network. Select an existing VPC Network with a NAT Gateway or click **Add VPC Network** to create a new one.
        * **VPC Network**: Connects the instance to a VPC Network in the current location.
        * **Automatic Backups**: Automatically creates backups for data recovery in case of instance failures.
        * **DDoS Protection**: Prevents potential Distributed Denial of Service (DDoS) attacks on the instance.
        * **Limited User Login**: Creates a `linuxuser` non-root user with sudo privileges as the default user account instead of `root`.
        * **Cloud-Init User Data**: Enables Cloud-Init user data to initialize and customize the instance at boot.

    1. Click **Deploy** to provision the instance.

=== "Vultr API"

    1. Send a `POST` request to the [**Create Instance** endpoint](https://www.vultr.com/api/#tag/instances/operation/create-instance) to create a new Vultr Cloud Compute instance. Replace `VULTR_LOCATION`, `INSTANCE_PLAN`, `OS_ID`, `INSTANCE_LABEL`, and `HOSTNAME` with your target values.

        ```console
        $ curl "https://api.vultr.com/v2/instances" \
          -X POST \
          -H "Authorization: Bearer ${VULTR_API_KEY}" \
          -H "Content-Type: application/json" \
          --data '{
            "region" : "VULTR_LOCATION",
            "plan" : "INSTANCE_PLAN",
            "os_id" : OS_ID,
            "label" : "INSTANCE_LABEL",
            "hostname": "HOSTNAME"
          }'
        ```

        Visit the [**Create Instance** API page](https://www.vultr.com/api/#tag/instances/operation/create-instance) to view additional attributes you can apply on the Vultr Cloud Compute instance.

    1. Send a `GET` request to the [**List Instances** endpoint](https://www.vultr.com/api/#tag/instances/operation/list-instances) to list all available instances.

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

=== "Vultr CLI"

    1. Create a new Vultr Cloud Compute instance. Replace `VULTR_LOCATION`, `INSTANCE_PLAN`, `OS_ID`, `INSTANCE_LABEL`, and `HOSTNAME` with your target values.

        ```console
        $ vultr-cli instance create --region VULTR_LOCATION --plan INSTANCE_PLAN --os OS_ID --label INSTANCE_LABEL --host HOSTNAME
        ```
       
        Run `vultr-cli instance create --help` to view additional options you can apply on the Vultr Cloud Compute instance.

    1. List all available instances.

        ```console
        $ vultr-cli instance list
        ```

=== "Terraform"

    1. Ensure the [Vultr Terraform provider](https://registry.terraform.io/providers/vultr/vultr/latest/docs) is configured in your Terraform project.

    1. Define the Cloud Compute instance in your Terraform configuration file.

        ```terraform
        terraform {
            required_providers {
                vultr = {
                    source  = "vultr/vultr"
                    version = "~> 2.26"
                }
            }
        }

        provider "vultr" {}

        resource "vultr_instance" "cc" {
            label       = "cc-instance-1"
            hostname    = "cc-instance-1"
            region      = "del"            # such as ewr, ams, sgp
            plan        = "vc2-2c-4gb"     # Cloud Compute (shared CPU) plan code; use vhf-* for High Frequency
            os_id       = 2284             # Ubuntu 24.04 LTS x64
            enable_ipv6 = true
        }

        output "public_ip" {
            value = vultr_instance.cc.main_ip
        }
        ```

    1. Apply the configuration and observe the following output:

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