Virtual Machine Images

Virtual machine images are bootable disk images that contain the operating system, kernel, and any additional configurations needed for the virtual machine to operate. These images are distinct from container images in that they are typically larger and include a full operating system.

When deploying a virtual machine on the Cycle Platform, selecting an image is a required step. Unlike containers, virtual machines cannot be reimaged after deployment. This makes choosing the correct image extremely important during the creation process.

Image Format

The Cycle Platform supports virtual machine images in the QCOW2 format

Virtual Machine Image Sources

Virtual machine images on Cycle can be sourced in three ways: from Cycle's built-in base images, a remote URL, or using an IPXE script . Each option provides flexibility depending on your workload's requirements and the level of customization needed.

Cycle Base Images

Cycle provides ready-to-go virtual machine base images for several popular Linux distributions. These images are pre-configured to work seamlessly with the Cycle Platform, removing the need for manual installation steps. Once deployed, they will boot directly to a login prompt.

Cycle base images work natively with the platform, leveraging cloud-init to automate key configuration tasks:

  • Injecting user-provided public SSH keys.
  • Configuring networking to integrate the virtual machine into its environment.
  • Setting a root password, which is displayed in the portal and API for initial access.

The most recent 3 releases are supported for the following Linux distributions:

  • Alpine Linux : A lightweight Linux distribution ideal for minimalistic environments.
  • Arch Linux : A rolling-release distribution favored for its simplicity and user control.
  • Debian : A stable and widely-used distribution known for its reliability.
  • Fedora : A cutting-edge Linux distribution featuring the latest technologies.
  • Rocky Linux : A community-driven enterprise OS, perfect for production workloads.
  • Ubuntu : A versatile and beginner-friendly distribution commonly used in cloud and server environments.

URL

For custom use cases, Cycle allows specifying a virtual machine image as a remote URL. This is particularly useful for:

  • Deploying custom operating system builds tailored to specific needs.
  • Using images provided by third-party vendors or software solutions.

The URL must point to a QCOW2 compatible image, which Cycle will securely download and use to boot the virtual machine.

Boot From IPXE

For advanced use cases, Cycle supports booting virtual machines using IPXE (a network booting protocol). This option is ideal for:

  • Deploying images that are not available in QCOW2 format.
  • Dynamically configuring virtual machines with minimal overhead.

The IPXE script can be provided in one of two ways:

  • As a URL pointing to a hosted script file.
  • As raw text, which can be pasted directly into the Cycle portal or API.

This flexibility makes IPXE booting a powerful tool for complex deployment scenarios or environments with unique requirements.

Deploy Virtual Machines on Cycle