Documentation Index
Fetch the complete documentation index at: https://docs.xloud.tech/llms.txt
Use this file to discover all available pages before exploring further.
Overview
VM Templates let you save a complete instance configuration — disk, flavor, network, security groups, and key pair — as a reusable template. Deploy templates to create standardized instances with consistent configurations across your projects. Templates appear in the dedicated Compute > VM Templates page, separate from regular images and snapshots.Xloud-Developed — VM Templates are developed by Xloud and ship with XAVS / XPCI.
Prerequisites
- An active instance to create a template from
- Sufficient image storage quota
What a VM Template Is
A VM Template is a first-class template object surfaced in the Dashboard, implemented on top of the Image Service with axloud_template=true discriminator
and captured config metadata. It is more than a snapshot used as a base image — it
also carries the surrounding launch context.
| Capability | VM Template | Snapshot used as base image |
|---|---|---|
Version field (e.g. 1.0) | Yes | — |
| Category field (Base OS, Web Server, Database, Application, Custom) | Yes | — |
| Captured flavor (vCPU / RAM summary shown on the row) | Yes | — |
| Captured network, security groups, key pair | Yes | — |
| Deploy action that pre-fills the launch wizard from the captured config | Yes | — |
| Lives on its own Compute → VM Templates page | Yes | — |
| Just disk content for a future boot | — | Yes |
Implementation note — under the hood, a VM Template is stored in the Image
Service like any other image, marked with
xloud_template=true plus the captured
config metadata. Operators can list templates from the CLI with
openstack image list --property xloud_template=true. The same storage backend,
RBAC privileges, and quotas that apply to images apply to templates — there is
no separate subsystem to learn.View Templates
- Dashboard
- CLI
Navigate to Compute > VM Templates in the sidebar. The list shows all templates
in your project.
Filter by Name or Status.
| Column | Description |
|---|---|
| Template Name | Template identifier (clickable to view details) |
| Description | Optional template description |
| Version | Template version (e.g., 1.0) |
| Category | Base OS, Web Server, Database, Application, or Custom |
| Flavor | Captured flavor name |
| Configuration | vCPUs / RAM summary |
| Status | Active, Saving, etc. |
| Size | Template image size |
| Created At | Creation timestamp |
Administrators see an additional Project ID/Name column and can view
templates across all projects.
Create a Template
There are two ways to create a template:From the VM Templates Page
- Dashboard
- CLI
Select the source instance
| Field | Type | Required | Description |
|---|---|---|---|
| Source Instance | Dropdown | Yes | Select an instance (Active, Stopped, Shutoff, or Paused) |
| Template Name | Text | Yes | Name for the template |
| Version | Text | Yes | Version string (default: 1.0) |
| Category | Dropdown | No | Classification (default: Custom) |
| Description | Text area | No | Optional notes |
| Delete Instance After Conversion | Checkbox | No | Delete the source instance after template creation |
| Category | Use Case |
|---|---|
| Base OS | Clean OS installations (Ubuntu, CentOS, Windows) |
| Web Server | Pre-configured web stacks (Nginx, Apache, etc.) |
| Database | Database servers (MySQL, PostgreSQL, MongoDB) |
| Application | Custom application stacks |
| Custom | General-purpose templates (default) |
From an Instance (Convert to Template)
Navigate to Compute > Instances. Click the More dropdown on the instance row and select Convert to Template under the Clone & Template group. The form is the same as above except the source instance is pre-selected.Convert to Template is available for instances in
Active, Stopped, Shutoff,
or Paused status.Template Detail
- Dashboard
- CLI
Click a template name to open the detail page. Three info cards are displayed:Template Info:
VM Configuration (captured from the source instance):
Image Info (underlying Glance image):
| Field | Description |
|---|---|
| Template Name | Display name |
| Version | Version string |
| Category | Classification (Base OS, Web Server, etc.) |
| Description | Template description |
| Source Instance | Instance this template was created from (copyable) |
| Created By | User who created the template |
| Template Created | Creation timestamp |
| Field | Description |
|---|---|
| Flavor | Original flavor name |
| vCPUs | CPU count |
| RAM (MB) | Memory allocation |
| Disk (GB) | Root disk size |
| Network | Network name |
| Security Groups | Comma-separated list |
| Key Pair | SSH key pair name |
| Availability Zone | Zone placement |
| Field | Description |
|---|---|
| Image ID | UUID (copyable) |
| Status | Active, Saving, etc. |
| Size | Image file size |
| Disk Format | QCOW2, RAW, etc. |
| Visibility | Public, Private, or Shared |
| Protected | Yes/No |
| Checksum | Image checksum (copyable) |
Deploy a Template
- Dashboard
- CLI
Select Deploy
Navigate to Compute > VM Templates. Click the More dropdown on the
template row and select Deploy.
Edit a Template
- Dashboard
- CLI
Click Edit (the first row action) on the template row. You can modify:
Click Confirm to save changes.
| Field | Description |
|---|---|
| Name | Template display name |
| Version | Version string |
| Category | Template classification |
| Description | Template description (max 255 chars) |
| Public | Make visible to all projects (admin only) |
| Protected | Prevent accidental deletion |
| Configuration fields | Flavor, vCPUs, RAM, Disk, Network, Key Pair, AZ |
Delete a Template
Click the More dropdown on the template row and select Delete Template. Templates withProtected enabled must have protection removed before deletion.
Batch delete is available via checkboxes.
Deleting a template permanently removes the underlying image. Instances previously
deployed from this template are not affected, but no new deployments can be made.
Manage Access (Admin Only)
Administrators can share templates with specific projects via the Manage Access action in the More dropdown. This requires the template to haveShared visibility.
Template Actions Summary
| Action | Location | Description |
|---|---|---|
| Edit | First row action | Edit template name, version, category, configuration |
| Deploy | More dropdown | Launch a new instance from the template |
| Delete | More dropdown / batch | Delete the template |
| Manage Access | More dropdown (admin) | Share with specific projects (requires Shared visibility) |
| Create Template | Primary action (top) | Create a new template from an existing instance |
Next Steps
Clone an Instance
Create an exact copy of a running instance without templates
Instance Snapshots
Create point-in-time snapshots (simpler than templates)
Create an Instance
Launch instances from the 4-step wizard
Image Management
Upload and manage OS images