This chapter provides an overview on what templates in OnApp are, the management tips, the information on creating your own templates and providing them as a paid resource for your customers.
What Are Templates?
A template is a fully preconfigured operating system environment – a tar + gzip archive that contains the root directory of an operating system. A basic template includes the data needed for a minimum OS installation, but templates may also include applications and additional OS components.
OnApp templates are used to deploy virtual servers in your cloud. The OnApp template library includes over 100 VS templates based on various 32-bit and 64-bit versions of Windows and Linux operating systems. OnApp customers can also access a large number of JumpBox virtual compute resources and deploy them as templates in OnApp.
To create a virtual server from a template which is based on paid software, such as MS Windows, you must have a valid license. The system verifies if you have a license before allowing the VS to be created, so before creating a VS you must first upload the license keys you've bought to OnApp, or connect to a licensing server.
OnApp supports three license types:
- MAK licensing: the default licensing type applied to all Windows-based VSs.
- KMS licensing: this is applicable to Windows 2008 and up.
- User licenses: allow end users to input a license key when creating a VS.
Windows Server 2003/XP OSs have come to their end-of-life on July 14th, 2015 and are no longer supported. Thus OnApp version 4.0 introduces new Windows templates version 4.x with Cygwin as SSH server (instead of CopSSH as in versions 3.x).
- New 4.0 templates cannot be used in OnApp version 3.x or below.
- Windows templates version 3.x can be used in OnApp version 4.0 without restrictions.
Types of Templates
There are two different kinds of template:
- System templates. These are provided by OnApp and downloaded from an online library. They comprise an operating system with the latest set of packages installed. Most Linux templates require 2–10 GB. Some Windows Templates with additional software may require minimum disk size of 30 GB - e.g. win12_x64_std-sqlweb-ver3.2-kvm_virtio. Minimum disk size for new 4.0 Windows templates is 30 GB (40 GB for templates with MS SQL).
- Custom/user templates. These are templates you create by backing up an existing virtual server, and converting that backup to a template. This allows you to pre-configure virtual servers (for example with specific OS settings, or pre-installed applications) and use the same configuration again and again.
You can use the following templates for smart servers and baremetal server creation:
|OS||Baremetal Servers||Smart Servers|
CentOS 6 64 bit
Red Hat Enterprise Linux 6.0 x64
Debian 6.0 LAMP x64
Ubuntu 19.04 x64
CentOS 6 64 bit
Red Hat Enterprise Linux 6.0 x64
Debian 6.0 LAMP x64
Ubuntu 20.04 x64
The templates with embedded Microsoft SQL have been removed from OnApp repository. You can use a new template with Microsoft SQL Express in it, which is free to use. If you require a full SQL version, you should build a new template from a base Windows platform.
Where Templates Are Stored
Depending on the configuration of your cloud, new templates are stored at different locations:
Configuration of your cloud
Storage locations for templates
No backup servers and ssh_file_transfer option is disabled
In this configuration, the templates will be uploaded to all compute resources. If this template already exists somewhere, the action is skipped. In such case NFS or any other sharing service should be enabled between compute resources.
No backup servers and ssh_file_transfer option is enabled
The template is uploaded to this ssh_file_transfer server only.
There are backup servers and ssh_file_transfer option is disabled
The templates are uploaded to all backup servers. The action is skipped if such a template already exists. In this configuration ensure that some sharing service is between backup servers. Provisioning is performed at backup servers only. If there is more than one backup server in the cloud, the user is prompted to choose to which BS a template will be stored.
There are backup servers and ssh_file_transfer is enabled
The templates are uploaded to this ssh_file_fransfer server only.
High Availability is configured for the Cloud
In this configuration, make sure to store templates at Database&Transactions server or any other server with shared NFS service, so that both Control Panels could access thetemplates directory.
The following scheme demonstrates the possible template storage locations depending on your system's configuration:
Template store enables you to organize individual templates into groups that can be used as a paid resource for buckets. This allows you to easily create groups of templates which can be added to the bucket. Only those groups which are added to a bucket will be available to a user.
My Template Group
My Template Groups allow you to create own license groups for your own personal/custom templates. The groups cannot be shared amongst the users. Also, for Windows based templates, My Template Groups provide the possibility to use your own licensing type regardless of your bucket.
You can set template configurations for you cloud in the settings menu at Dashboard > Admin > Settings > Configuration > Backups/Templates tab. This menu lets you set the following template-related parameters:
- The URL of the required template server
- Whether you want to delete the downloaded templates after they were distributed
- The system path to templates and recovery templates
During Control panel install/upgrade process, the following values are set by default:
- Template server URL - http://templates-manager.onapp.com
- Path to Templates - /onapp/templates
- Path to Recovery templates - /onapp/tools/recovery
Templates and backups can be stored on a remote server or a mounted disk. If you wish to store templates and backups remotely, you should also configure the following settings:
- Template/backup server IP, user login and SSH options
- Whether to use SSH file transfer for your template/backup server or not
Installation and Update
The OnApp template library includes over 100 VS templates based on various 32-bit and 64-bit flavours of Windows and Linux operating systems. You can also access a large number of JumpBox virtual compute resources and deploy them as templates in OnApp. The templates library is constantly updated. You can manage new templates with the OnApp template manager that connects to template server and allows you to:
- update the system templates which are already installed to your cloud
- download and install new templates available on a template server.
The Template server URL has to be set at Control Panel > Admin > Settings > Configuration > Backups/templates tab as a prerequisite for installing/upgrading templates.
You can set up templates as a paid resource in several ways.
To set the pricing for the individual templates, go to the buckets Rate Card at Control Panel > Admin > Buckets > Label > Rate Card > Other and add the required template stores. Here you can set a price for each individual template per hour. As a single template can be included in multiple template stores, the same template will have the same price in all the template stores added to the rate card of a single bucket. If you add/edit the price of a template in one template store, the price of the same template will change to the new value in all the template stores in the rate card.
Once you add a template to the Rate Card, all the template stores that contain that template will be added to that Rate Card with a price set only for that template.
You can also configure the pricing for the template storage space and the amount of templates allowed per account.
If the templates are stored on compute resources or SSH file transfer server, you can apply the Templates, ISOs & Backups Storage and Template limits in the Miscellaneous section of the bucket.
If the templates are stored on backup servers, apply the limits and pricing for Backup Server Zone limits.
- For more info, refer to Template Store and Configure Resource Allocation and Prices.
- If you add template related resources only to the bucket's Rate Card, users under the bucket will not have access to the templates. You need to configure the bucket's Access Control to make resources available to the users under the bucket.
- Template Software Licenses
- Manage Template Recipes
- Template Store
- My Template Groups
- Configure Resource Allocation and Prices