A guide explaining how to set up and deploy Vultr Bare Metal server instances.
Vultr Bare Metal instances are single-tenant dedicated cloud servers designed for applications with the most demanding performance and security requirements. Bare Metal instances don't use any virtualization and include an operating system that enables you to run applications on the specified server hardware.
Follow this guide to provision Vultr Bare Metal instances using the Vultr Customer Portal, API, CLI, or Terraform.
Navigate to Products and select Compute on the list of product options.
Click Deploy to access the Deploy New Instance page.
Select Bare Metal from the list of options.
Choose your desired Vultr location to deploy the Bare Metal instance.
Select your Bare Metal instance specifications from the list of available Vultr plans.
Click Configure Software.
Select a cloud image to install on your instance based on the following options:
Select optional Server Settings to apply on the instance.
Select the Bare Metal instance Disk configuration based on the following options:
Enter a new hostname in the Server Hostname field and a descriptive label in the Server Label field to identify the instance.
Configure Additional Features for the instance.
linuxuser non-root user with sudo privileges as the default user account instead of root.Click Deploy to provision the instance.
Send a POST request to the Create Bare Metal Instance endpoint to create a new Vultr Bare Metal instance. Replace VULTR_LOCATION, INSTANCE_PLAN, OS_ID, INSTANCE_LABEL, and HOSTNAME with your target values.
$ curl "https://api.vultr.com/v2/bare-metals" \
-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 Bare Metal Instance API page to view additional attributes you can apply on the Vultr Bare Metal instance.
Create a new Vultr Bare Metal instance. Replace VULTR_LOCATION, INSTANCE_PLAN, OS_ID, INSTANCE_LABEL, and HOSTNAME with your target values.
$ vultr-cli bare-metal create --region VULTR_LOCATION --plan INSTANCE_PLAN --os OS_ID --label INSTANCE_LABEL --hostname HOSTNAME
Run vultr-cli bare-metal create --help to view additional options you can apply on the Vultr Bare Metal instance.
Ensure the Vultr Terraform provider is configured in your Terraform project.
Add the Bare Metal instance resource to your Terraform configuration.
terraform {
required_providers {
vultr = {
source = "vultr/vultr"
version = "~> 2.26"
}
}
}
provider "vultr" {}
resource "vultr_bare_metal_server" "bm" {
region = "del" # Target deployment region
plan = "vbm-4c-32gb" # Bare Metal plan ID
os_id = 2284 # Ubuntu 24.04 LTS x64
label = "baremetal-instance-1"
hostname = "baremetal-instance-1"
enable_ipv6 = true
}
output "public_ip" {
value = vultr_bare_metal_server.bm.main_ip
}
Apply the configuration and observe the following output:
Apply complete! Resources: 1 added, 0 changed, 0 destroyed.