Virtual Machines

Create and manage virtual machines with custom hardware configurations, flexible networking, and full lifecycle control.

Overview

Virtual machines (VMs) are the core compute resource in Xelon HQ. Each VM runs on enterprise-grade hypervisors and can be configured with custom CPU, RAM, disk, and network settings. The platform supports a wide range of operating systems through pre-built templates and custom ISO uploads.

VMs are scoped to the organization (tenant) that creates them. Users with the appropriate permissions can manage the full VM lifecycle, from creation through monitoring to deletion.

Device Detail Page

When you open a device, the detail page provides several tabs for managing different aspects of your VM:

  • Overview — General info, hardware, and power controls
  • Monitoring — Real-time CPU, memory, disk, and network metrics
  • Snapshots — Point-in-time snapshots
  • Backups — Scheduled backup jobs and restore
  • SSH Keys — Manage SSH keys for the device
  • Scripts — Run Bash and PowerShell automation scripts

Replication status is also shown in the device sidebar when configured. See Replication for details.

Creating a Virtual Machine

To create a new VM, navigate to Virtual Datacenter > All Devices and click Create Device. The creation wizard guides you through the following configuration steps:

1. Select an Operating System

Choose from the available OS templates or use a custom ISO. Pre-built templates include popular distributions such as:

  • Ubuntu 20.04 / 22.04 / 24.04 LTS
  • Debian 11 / 12
  • CentOS Stream 8 / 9
  • Rocky Linux 8 / 9
  • Windows Server 2019 / 2022
Tip

You can also create VMs from your own templates. See Templates & ISOs for details on creating and managing custom images.

2. Configure Hardware

Resource Options Notes
CPU 1 – 16 vCPUs Select based on workload requirements. CPU-intensive tasks benefit from higher core counts.
RAM 1 GB – 128 GB Memory is allocated in 1 GB increments. Ensure sufficient RAM for your OS and applications.
Disk 5 GB – 2 TB per disk Choose between HDD (cost-effective bulk storage) and SSD (high-performance I/O). Multiple disks can be added.

3. Select a Network

Assign the VM to one or more virtual networks. Each network interface (NIC) receives an IP address from the selected network's subnet. You can add additional NICs after creation.

4. Add SSH Keys (Optional)

For Linux-based VMs, you can attach one or more SSH public keys during creation. These keys are injected into the VM's authorized_keys file, enabling passwordless authentication. See Console & SSH Keys for SSH key management.

5. Review and Create

Review the configuration summary, including the estimated monthly cost, and click Create. The VM will be provisioned and started automatically. Provisioning typically completes within 30 to 90 seconds.

Managing VM Power State

Control the power state of your VMs from the VM detail page or the VM list. The following actions are available:

Action Description Use Case
Start Power on a stopped VM. Resume a VM after maintenance or after it has been manually stopped.
Stop Immediately cut power to the VM (hard stop). Use when the guest OS is unresponsive. Equivalent to pulling the power cable.
Shutdown Send an ACPI shutdown signal to the guest OS for a graceful power-off. Preferred method for stopping a VM. Allows the OS to flush buffers and close services cleanly.
Reboot Restart the VM by sending an ACPI reboot signal. Apply configuration changes or updates that require a restart.
Important

Using Stop (hard stop) may result in data loss or filesystem corruption if the guest OS has pending writes. Always prefer Shutdown when possible.

Cloning a Virtual Machine

Cloning creates an exact copy of an existing VM, including its disks, configuration, and network settings. This is useful for creating test environments, scaling horizontally, or migrating workloads.

  1. Navigate to the VM detail page.
  2. Click the Clone button.
  3. Enter a device name and hostname for the cloned VM.
  4. Optionally select a snapshot to clone from, or clone from the current device state.
  5. Select the network configuration for the clone.
  6. Click Clone.
Tip

The source VM should be in a stopped or shutdown state before cloning to ensure data consistency. Cloning a running VM may result in inconsistent disk data.

Modifying Hardware

You can modify the hardware configuration of an existing VM. Some changes require the VM to be stopped, while others can be applied while the VM is running.

Add or Remove Disks

  • Add Disk — Attach a new HDD or SSD disk to the VM. Specify the size and type. The new disk appears as an unformatted block device inside the guest OS.
  • Remove Disk — Detach a disk from the VM. The data on the disk is preserved until the disk is explicitly deleted.
  • Resize Disk — Increase the size of an existing disk. Disk shrinking is not supported to prevent data loss.
Important

After adding or resizing a disk, you must partition and format the new space inside the guest OS. Xelon HQ manages the virtual disk layer; the OS handles the filesystem.

Add or Remove Network Interfaces

  • Add NIC — Attach a new network interface and assign it to a virtual network. The VM receives an IP address from the network's DHCP range or you can set a static IP.
  • Remove NIC — Detach a network interface from the VM. The associated IP address is released back to the network pool.

Resize CPU and RAM

CPU and RAM can be adjusted from the VM edit page. By default, changing these resources requires the VM to be in a stopped state. However, if Hotplug is enabled, CPU and RAM can be increased while the VM is running.

  1. Navigate to the VM edit page.
  2. Open the System tab.
  3. Adjust the CPU and RAM values to the desired settings.
  4. Click Save Changes.

To enable Hotplug (live CPU/RAM changes), scroll to the Hotplug section on the same page. Note that enabling Hotplug requires a device reboot if the VM is powered on.

Performance Monitoring

Each VM provides performance graphs accessible from the Monitoring tab on the VM detail page. The Monitoring tab is organized into the following sub-tabs:

Sub-tab Description
General Overview of key performance indicators across all resource types.
CPU CPU utilization metrics. Sustained high usage may indicate the need for additional cores.
Memory Memory consumption relative to the allocated amount. Monitor for memory pressure or swap usage.
Disk Disk read and write operations and throughput per attached disk.
Network Inbound and outbound traffic across all NICs. Useful for identifying bandwidth bottlenecks.

Use these metrics to right-size your VMs and identify performance bottlenecks.

VM Notes and Naming

Each VM supports a custom display name and a free-text notes field. Use notes to document the purpose of the VM, installed software, responsible team members, or any operational context. Both fields can be edited at any time from the VM detail page.

  • Display Name — A human-readable label shown in the VM list and dashboard. Does not affect the hostname inside the guest OS.
  • Notes — A multi-line text field for operational documentation. Visible to all users with allow_view_virtual_machines permission.

Deleting a Virtual Machine

Warning

Deleting a VM permanently removes the machine and all attached disks. This action cannot be undone. Snapshots associated with the VM are also deleted.

To delete a VM:

  1. Navigate to the VM detail page.
  2. Ensure the VM is powered off. If it is running, shut it down first.
  3. Click the Delete button.
  4. A confirmation dialog appears. Check the confirmation checkbox acknowledging that the deletion is irreversible.
  5. Enter your account password for security verification.
  6. Click Delete Device to proceed.

Before deleting, consider creating a snapshot or template if you may need the VM's data or configuration in the future.