Templates
Templates are images of a base operating system that the user can choose from when creating a new instance. A template can be reused to create multiple instances. They are reusable configuration for Instances. Zergaw CloudStack ships with different default templates for major Linux and Windows operating systems.
Users can also create and add Templates. The typical sequence of events is:
- Launch an Instance that has the operating system you want. Make any other desired configuration changes to the Instance.
- Stop the Instance.
- Convert the volume into a Template.
There are other ways to add Templates. For example, you can take a Snapshot of the Instance's volume and create a Template from the Snapshot, or import a VHD or QCOW2 from another system.
The root password for the default Templates are generated during instance creation and shown as pop-up. Don't reload the page until the instance complete deploying and the pasword pop up appeared.
Template Types
Zergaw CloudStack supports several template visibility and sharing models that determine how templates can be accessed, used, and managed across domains and accounts. The main template types that Zergaw CloudStack offers are featured templates, community templates, shared templates and private templates
1. Featured Templates

Featured templates are highlighted public templates curated by Zergaw administrators. Appear prominently in the UI to simplify VM provisioning. Usually represent official, recommended, or enterprise-standard images (e.g., hardened OS templates, corporate-standard VM builds). These templates can only be enlisted by Zergaw CloudStack administrators.
2. Community Templates
Community templates are publicly available to all users. Any user can deploy VMs using a community template. Typically used for standard OS images, base application stacks, or commonly used VM configurations.
3. Shared Templates
Shared templates are private templates that the owner has explicitly shared with specific accounts. Access is limited to the accounts selected by the template owner. Useful for collaboration between teams or departments within the same organization. Sharing can be revoked or modified at any time.
4. Private Templates
Private templates are visible and accessible only to the account that created them. They are default template type when a user creates a template. Ideal for personalized operating system images, internal configurations, or workloads that should not be shared with others. They can later be shared or published as community or featured templates by an administrator.
Creating a Template from an Existing Instance
Once you have at least one Instance set up in the way you want, you can use it as the prototype for other Instances.
- Once your instance is in the desired configuration state, stop the instance.
- Wait for the Instance to stop. When the status shows Stopped, go to the next step.
- Go into "View Volumes" and select the Volume having the type "ROOT".


- Click Create Template and provide the following:
- Name and Display Text. These will be shown in the UI, so choose something descriptive.
- OS Type. This helps the hypervisor perform certain operations and make assumptions that improve the performance of the guest. Select one of the following.
- If the operating system of the stopped Instance is listed, choose it.
- If the OS type of the stopped Instance is not listed, choose Other.
Generally you should not choose an older version of the OS than the version in the image. For example, choosing CentOS 5.4 to support a CentOS 6.2 image will in general not work. In those cases you should choose Other.
- Dynamically scalable. Choose Yes if you need your template to support dynamic scaling.
- HVM. Choose Yes if the template requires HVM
- Password Enabled. Choose Yes if your Template has the password change script or cloud-init installed and configured.

- Click OK.
The new Template will be visible in the Templates section when the Template creation process has been completed. The Template is then available when creating a new Instance.
Creating a Template from a Snapshot
If you do not want to stop the Instance in order to use the Create Template menu item, you can create a Template directly from any Snapshot through the UI.
- Take a snapshot of your instance's root volume or navigate to an existing volume snapshot

- Go into "Volumes Snapshot" and select the your volume snapshot from the list.

- Click on Create Template action button at the top. And fill in the required informations and click OK

Uploading Templates and ISOs from a local computer
It's also possible to upload an already prepared Template or an ISO from your local computer.
Example GUI dialog of uploading Template/ISO from local (browser) is given below:


Note that uploading multi-disk Templates is also supported as well as selecting the template/ISO arch type.
Sharing Templates and ISOs with other Accounts/projects
When adding a Template/ISO, it will be a private template by default. Once the Template/ISO is created, the owner can choose to share this Template/ISO so that other Accounts/Projects can also use the Template/ISO.
Currently, the owners can share their Template/ISO with:
- other Accounts inside their own domain (i.e. can't share the Template/ISO with other Accounts in the subdomain of their domain or any other domains)
- projects where they belongs to (i.e. projects where they are the owners/creators or other projects where they have been joined)
Template/ISO permissions can be changed via updateTemplatePermissions/updateIsoPermissions API call or via GUI. It is supported to add, remove or reset (remove all) Template/ISO permissions.

When adding or removing permissions to/from a Template/ISO, it is required to specify Account/Project name which is being added/removed from the Template/ISO permissions.
The images displayed below refer to Template permissions, but the same
applies for ISO permissions.

Sharing the Template with Account "user2"

Revoking permissions from Account "user2"

Sharing the Template with just Account "user2"

Sharing Template with 2 specific projects

Revoking permissions from Account "user2"

Revoking permissions from both projects previously added
Finally, Template permissions can be reset:

Resetting (removing all) permissions
Project-owned Templates are not supported to be shared outside of the Project, and if attempted to do so, a proper error message is shown.
Deleting Templates
Templates may be deleted. However when the Templates are used the default behaviour is to refuse deletion. In general, when a Template spans multiple Zones, only the copy that is selected for deletion will be deleted; the same Template in other Zones will not be deleted.
When Templates are deleted, the Instances instantiated from them will continue to run. However, new Instances cannot be created based on the deleted Template.
As said, Zergaw Cloudstack refuses to delete a template when VMs based on the template exist. If this is the case, the parameter "forced" can be set to "true" to delete the template anyways. These VMs can no longer be reinstalled from that template, but will be unaffected otherwise.