Preemptible VMs, also known as spot VMs or spot instances, are virtual machines that Compute may stop at any time. This can happen when the system needs resources to launch a regular VM in the same region.
Compute sends a SIGTERM signal 60 seconds before stopping the VM. If your system does not respond in time, Compute sends a SIGKILL signal to force shutdown.
Compute preserves all data on the volumes attached to a stopped preemptible VM. It does not preserve dynamic resources, such as dynamic public IP addresses.
Preemptible VMs cost less than regular ones, but they do not provide guaranteed availability.
You can create a preemptible VM, but you cannot change the type of an existing VM—either from regular to preemptible or from preemptible to regular.
You can run preemptible VMs only on the following VM platforms:
- NVIDIA® B300 NVLink with Intel Granite Rapids (
gpu-b300-sxm)
- NVIDIA® B200 NVLink with Intel Emerald Rapids (
gpu-b200-sxm)
- NVIDIA® B200 NVLink with Intel Emerald Rapids (
gpu-b200-sxm-a)
- NVIDIA® H200 NVLink with Intel Sapphire Rapids (
gpu-h200-sxm)
- NVIDIA® H100 NVLink with Intel Sapphire Rapids (
gpu-h100-sxm)
You can get an up-to-date list of platforms by using the nebius compute platform list command. The platforms available for preemptible VMs are marked as allowed_for_preemptibles: true.
For more information about the supported platforms and their regions, see Types of virtual machines and GPUs in Nebius AI Cloud.
How to create a preemptible VM
Web console
CLI
Terraform
- Go to the web console, click Create resource and then select Virtual machine.
- When creating a VM, set the VM type parameter to Preemptible.
When creating a VM:
-
Select a platform that supports preemptible VMs.
-
Add the following parameters to the
spec section of the VM configuration:
nebius compute instance create \
--format json \
- <<EOF
{
...
"spec": {
"recovery_policy": "FAIL",
"preemptible": {
"priority": 1,
"on_preemption": "STOP"
},
...
}
}
EOF
In this configuration, the following values are specified:
recovery_policy defines what Compute does with a VM after it’s preempted or fails. Preemptible VMs support only the FAIL value, which stops the VM. They do not support the RECOVER value, which tries to restart the VM. Setting RECOVER for a preemptible VM results in an error.
priority affects the order in which Compute tries to stop VMs in your projects. It starts with VMs that have lower priority values but does not guarantee the exact order. The value can range from 1 to 5, where 5 indicates the highest priority.
on_preemption specifies what happens when the VM is preempted. The only supported value is STOP: Compute stops the VM without deleting or restarting it.
For details about the nebius compute instance create command, see the Nebius AI Cloud CLI reference. When creating a VM, select a platform that supports preemptible VMs and set the following parameters in the VM configuration:resource "nebius_compute_v1_instance" "instance" {
...
recovery_policy = "FAIL"
preemptible = {
on_preemption = "STOP"
priority = 1
}
...
}
In this configuration, the following values are specified:
recovery_policy defines what Compute does with a VM after it’s preempted or fails. Preemptible VMs support only the FAIL value, which stops the VM. They do not support the RECOVER value, which tries to restart the VM. Setting RECOVER for a preemptible VM results in an error.
priority affects the order in which Compute tries to stop VMs in your projects. It starts with VMs that have lower priority values but does not guarantee the exact order. The value can range from 1 to 5, where 5 indicates the highest priority.
on_preemption specifies what happens when the VM is preempted. The only supported value is STOP: Compute stops the VM without deleting or restarting it.
For details about the nebius_compute_v1_instance Terraform resource, see the provider reference.
A dynamic IP address is released when a preemptible VM stops. To keep your workload stable, consider using a static IP address instead.
How to continue working with a stopped preemptible VM
When Compute stops a preemptible VM, it preserves all data on the attached volumes. To resume work, start the VM again. If you used a dynamic IP address, update all systems that depended on the old IP address.
You can also create a regular VM with the same attached volumes.