Templates & ISOs

Reusable VM images, custom installation media, and automation scripts for rapid provisioning.

Overview

Templates and ISOs allow you to standardize and accelerate VM deployments. A template is a pre-configured VM image that can be used to create new machines with a consistent software stack. An ISO is a bootable disk image used for custom operating system installations. Combined with automation scripts, these tools enable repeatable infrastructure provisioning.

Templates

Creating a Template from an Existing VM

You can convert any existing virtual machine into a reusable template. The template captures the VM's disk contents, including the installed operating system, applications, and configurations.

  1. Navigate to Virtual Datacenter > Templates & ISOs.
  2. On the Custom Templates tab, click Create.
  3. Enter a name and description for the template.
  4. Select the owner tenant (if applicable) and choose the source device from the dropdown.
  5. Click Save. The template generation runs in the background, and you will receive an email notification when it is complete.
Tip

Before creating a template, remove any sensitive data (SSH keys, credentials, log files) from the VM. Templates are shared across the organization and may be used by other users.

Using Templates to Create New VMs

When creating a new VM, you can select a custom template instead of a standard OS image:

  1. Navigate to Virtual Datacenter > All Devices and click Create Device.
  2. In the OS selection step, switch to the Custom Templates tab.
  3. Select the desired template from the list.
  4. Configure hardware (CPU, RAM, disk) as needed. The template's disk size is the minimum.
  5. Complete the remaining creation steps and click Create.

The new VM will boot with the exact software configuration captured in the template.

Custom ISOs

ISOs let you install operating systems or software that is not available as a pre-built template. Xelon HQ supports uploading standard bootable ISO images.

Uploading an ISO

  1. Navigate to Virtual Datacenter > Templates & ISOs and open the Custom ISOs tab.
  2. Click Create.
  3. Provide a name, select the owner tenant, choose a category and cloud, and enter a description.
  4. Either enter the URL of the ISO file or upload a .iso file directly from your local machine.
  5. Click Save (for URL-based ISOs) or Upload (for file uploads). The system downloads or receives the ISO and makes it available in your library.
Tip

ISO uploads from a URL are faster than local uploads for large files. Use the direct download link from the OS vendor's website for best results.

Editing an ISO

To update the name, description, or category of an uploaded ISO, click the Edit button next to the ISO entry in the list and then click Apply to save changes. You cannot replace the ISO file itself — upload a new ISO and delete the old one instead.

Deleting an ISO

To remove an ISO from your library:

  1. Navigate to Virtual Datacenter > Templates & ISOs and open the Custom ISOs tab.
  2. Click Delete next to the ISO you want to remove.
  3. Confirm the deletion in the dialog.
Important

Deleting an ISO does not affect VMs that were already installed from it. The ISO is only used during installation and is not required for ongoing VM operation.

Scripts

Scripts are automation tools that allow you to run commands on one or more VMs after provisioning. Use scripts to install packages, apply configurations, register with monitoring systems, or perform any post-deployment task.

Creating a Script

Scripts can be created either from the script library or directly from a VM's Scripts tab:

From the script library:

  1. Navigate to Virtual Datacenter > Templates & ISOs and open the Scripts tab.
  2. Click Create.
  3. Enter a name for the script and select the owner tenant.
  4. Select the script type: Windows Powershell Script or Linux /bin/bash Script.
  5. Write the script content in the editor.
  6. Click Save.

Example script to install and enable Nginx:

#!/bin/bash
apt-get update
apt-get install -y nginx
systemctl enable nginx
systemctl start nginx

Running Scripts on VMs

Scripts are executed on individual VMs from the VM detail page:

  1. Navigate to the VM detail page and open the Scripts tab.
  2. Choose Select Script to run an existing script from the library, or New Script to write and run a script directly.
  3. When selecting an existing script, choose the script from the dropdown and click Run Script.
  4. When creating a new script, enter the name, select the type (Bash or PowerShell), write the code, and click Save script to library and Run to save and execute, or Save script to library to save without executing.
Tip

Script execution requires the allow_manage_virtual_machine_scripts permission. Ensure the target VMs are running and have network connectivity for the script agent to function.