> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nebius.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Parameters of a virtual machine configuration in Compute

When you [create a virtual machine](/compute/virtual-machines/manage) (VM) or edit its configuration, you operate with VM settings. Below is the list of the VM settings available in the [web console](https://console.nebius.com) creation wizard and on the VM settings page.

## General

If you have [capacity block groups](/overview/limits/capacity-block-groups), on the **General** step of the wizard, you choose how Compute allocates resources:

* **Reserved VM**: Capacity is assured by your capacity block groups. This option is for regular VMs with GPUs.
* **Pay-as-you-go VM**: Capacity is subject to availability. This option allows [preemptible VMs](/compute/virtual-machines/preemptible) and VMs without GPUs.

If you do not have capacity block groups, the wizard skips the **General** step and opens **Compute** instead.

## Compute

On the **Compute** step, you configure computing resources. The available settings depend on whether you selected **Reserved VM** or **Pay-as-you-go VM** on the **General** step. If the **General** step was skipped, use the **Pay-as-you-go VM** settings below.

### Reserved VM

* [Platform](/compute/virtual-machines/types). The list shows platforms that match your capacity block groups.

* [**Reservation**](/compute/virtual-machines/reservations) settings: **Region**, **Any (existing and future)**, specific capacity block groups, and **Switch to PAYG** with **When reservation is exhausted** or **Never**.

* Preset.

* (Optional) [GPU cluster](/compute/clusters/gpu/index). Allows accelerating tasks that require high-performance computing (HPC) power, such as training a model.

  A GPU cluster only helps if you add at least two VMs with 8 GPUs each to the cluster.

  For container VMs, you can assign a GPU cluster in the **Advanced settings** section.

* VM name.

* Project for the VM location.

### Pay-as-you-go VM

* Select **With GPUs** or **Without GPUs** and the VM type **Regular** or [Preemptible](/compute/virtual-machines/preemptible).

* [Platform and preset](/compute/virtual-machines/types).

* Preset.

* (Optional) [GPU cluster](/compute/clusters/gpu/index). Allows accelerating tasks that require HPC power, such as training a model.

  A GPU cluster only helps if you add at least two VMs with 8 GPUs each to the cluster.

  For container VMs, you can assign a GPU cluster in the **Advanced settings** section.

* VM name.

* Project for the VM location.

## Storage

On the **Storage** step, you can add a boot disk, additional disks and shared filesystems. For disks, you specify their type, size and block size. A boot disk is additionally based on an operating system. For more information about these settings, see [Volume parameters](/compute/storage/manage#volume-parameters).

Boot disks are unavailable for container VMs. Only additional disks are available in advanced settings.

For shared filesystems, you specify the following settings:

* [Name, size and block size](/compute/storage/manage#volume-parameters).

* Mount tag for mounting the filesystem to the VM.

  Create your own tag, such as `my-filesystem`. Make sure that it is unique within the VM.

* **Auto mount** option enabled to mount the filesystem to the VM automatically.

## Network

On the **Network** step, you select a [network and subnet](/vpc/overview) and manage the VM addresses:

* **Private address**: Select whether to allocate a random private IP address for the VM or to attach an allocation of a private address.
* **Public address**: Specify whether the VM should have a public IP address and whether it should be static or dynamic.
* **Hostname**: Select **Same as VM ID** or specify a **Custom** hostname for the VM's [FQDN](/compute/virtual-machines/fqdn).

If you need to secure your VM and make it isolated, you can create a VM without a public IP address. If you need to connect to this VM from the internet, you can [set up a WireGuard jump server](/compute/virtual-machines/wireguard). It has an IP address in the internet and an IP address in the VM's network. As a result, you can access the VM via the jump server from the internet. This approach enhances security and still provides access to the VM.

For more information about the settings of the addresses, see [Private and public IP addresses of Compute virtual machines](/compute/virtual-machines/network).

## Configuration

On the **Configuration** step, you configure access, identity and VM startup settings for the VM.

### Access

In the **Username and SSH key** field, you add credentials of the user on behalf of whom you can [connect to the VM](/compute/virtual-machines/connect).

The access settings include the following:

* Username of the VM user.

  Cannot be `root` or `admin`. These usernames are reserved for internal needs and are not allowed to connect to a VM by SSH.

* [Public key of your SSH key pair](/compute/virtual-machines/ssh-keys#getting-the-public-key).

* Name of credentials to recognize the key in the list of keys.

### Additional

(Optional) **Service account**: Select an existing [service account](/iam/service-accounts/manage) or create a new one. The service account will perform actions on behalf of the VM, for example, run scripts.

### User data

(Optional) Select **Enable custom cloud-init config** and set a configuration in the [cloud-init](https://cloudinit.readthedocs.io/en/latest/reference/modules.html#users-and-groups) format to customize how the VM starts.

## Review

On the **Review** step, you see a summary of all settings before creating the VM. To edit a section, click <Icon icon="https://mintcdn.com/nebius-ai-cloud/1Ha0sWR6e1mnIaHS/_assets/pencil-to-line.svg?fit=max&auto=format&n=1Ha0sWR6e1mnIaHS&q=85&s=9f557f28487b7fec78ae7508b5b6a145" width="16" height="16" data-path="_assets/pencil-to-line.svg" /> next to the corresponding block on the **Review** step.
