Create Virtual Server

Virtual servers are created from templates and are deployed on compute resources that provide them with CPU, disk, network, and other necessary resources. To create a virtual server, you need to launch a wizard. The wizard walks you through several steps to get your virtual server up and running. In this document, you can find a detailed guidance on how to create a virtual server but first take a look at the following section. 

Before You Begin 

Before you begin to create a virtual server, take into consideration the following: 

  • You should have at least one compute resource configured and attached to a compute zone, a data store  to a data store zone and compute resource or zone, a network  to a network zone and compute resource or zone, a backup server  to a backup server zone and compute resource or zone, and a bucket – to a user who creates a virtual server. 

  • The selected template should reside on a backup server attached to a compute resource or zone on which you want to built a virtual server. 
  • Learn more about limitations of OnApp templates at the Templates guide.
  • An Estimated Price per Hour in the wizard might be inaccurate if you don't have necessary permissions enabled, such as Show Compute Zones/Compute Resources on Virtual Server Creation; and if you select the Any option for network resources. 

To create a virtual server, follow the next procedure:

  1. Go to your Control Panel > Cloud > Virtual Servers.
  2. Click the + or Create Virtual Server button to launch the wizard.
  3. Follow the step-by-step instructions below to complete the wizard.
  4. After you are finished, click the Create Virtual Server button. 

Cloud Locations

The Cloud Locations step is available for users whose bucket includes сompute zones assigned to location groups. If Cloud Locations are not available, the wizard starts from the Templates step. The Cloud Locations step is present in the wizard if the following requirements are satisfied:

  • All compute zones that are added to a user's bucket are assigned to location groups.
  • Compute zones that are added to a user's bucket are not assigned to the same location group.

When you are the Cloud Locations step, select a location for your virtual server: 

  • Country - select a country where the cloud is located
  • City - select a city from the country where the cloud is located

Click Next to proceed to the following step of the wizard.


The Templates step allows you to select a template from which to build your virtual server. The template is extracted when a virtual server is provisioned or when a backup is taken, using this template. While a template is being extracted, it is locked so that it can't be used simultaneously in other transactions. After the extraction is finished, the template is unlocked. If another transaction requires the locked template, the transaction will fail after five minutes of standby. If a transaction that locked a template eventually failed, it means that the extracted template is broken. The templates are stored at /onapp/templates/your_template.tgz, extracted templates – at /onapp/backups/templates/your_template, and locked templates  at /onapp/backups/templates/your_template.lock

To select a template, follow the next procedure:

  1. Click a Template Store icon on the left to see templates that are available in this store. You can see the following details for each template: 
    • Label
    • Min memory size that is required to create a VS from this template
    • Min disk size that is required to create a VS from this template
    • Virtualization type that is XEN or KVM
    • Estimated Price per Hour that is calculated for a VS in Mode ON and Mode OFF
  2. Click a template to select it. 
  3. Click Next to proceed. 

Additional Information for Windows Templates

The Windows Licensing Type box appears for Windows templates and includes license options that you configure for a corresponding template store. You can select one of the following license types:

  • MAK - the default licensing type applicable to all Windows-based virtual servers. If you don't select the licensing type, MAK is set by default.
  • KMS - the licensing type applicable to every virtual server since Windows 7, Windows Server 2008, and the following Windows versions. Click KMS and then select a licensing Server.
  • User license - type your license key

When you create a virtual server from a Windows template, consider the following:

  • You can create Windows-based virtual servers without running Sysprep. Disable the Run Sysprep option while creating or editing a destination compute zone.
  • If multiple virtual servers are deployed from the same template without running Sysprep, they will have identical security identifiers (SIDs) that can result in the system conflict.
  • You can't select KMS or your own license when you create a Windows virtual server from a custom template. As a workaround, you can create a virtual server from a template used for custom template creation.


There are some obligatory and optional properties that you can provide for your virtual server. The obligatory properties are marked with an asterisk on the list and the optional properties you can edit after creating a virtual server.

Enter the following properties for your virtual server: 

  • Label* - enter a label of the virtual server
  • Hostname* - enter a hostname of the virtual server. The hostname can consist of letters [A-Z a-z], digits [0-9], and dash [ - ]. For more info on hostname validation, refer to RFC documentation.

    • The hostname length should be between 1 and 15 characters.
    • The following symbols are not allowed:
      • percent sign [%]
      • double quotation marks [“]
      • brackets [<,>]
      • vertical bar [|]
      • caret [^]
      • ampersand [&]
      • parentheses [(,)]
  • Domain - enter a domain of the virtual server. For example, in the test is a hostname and is a domain. If you don't enter a domain, the default value localdomain is used as follows test.localdomainThis parameter is not applicable to Windows virtual servers. 

  • Time zone (Windows) - select a time zone for a Windows virtual server. Most operating systems implies that the hardware clock is in UTC, however, Windows implies a localtime. Therefore, you need to select a time zone for it to be properly handled on a compute resource level. 

  • Password - enter a secure password for the virtual server. It can consist of 6-99 symbols, including letters [A-Z a-z], digits [0-9], dash [ - ], underscore [ _ ], and the following special characters: ~ ! @ # $ * _ - + = ` \\ { } [ ] : ; ' , . ? /You can use both lower and uppercase letters. If you don't enter a password, it will be generated automatically.

  • Password confirmation - repeat the password to confirm it
  • Encrypt password - move the slider to the right to encrypt your password

  • Encryption passphrase - enter a passphrase for encryption

  • Encryption passphrase confirmation - repeat the passphrase for encryption

    For more information on the password encryption, see FAQ.

Click Next to proceed to the following step of the wizard.


You can create a virtual server from a ready-made instance package or select all the necessary resources manually. The availability of instance packages depends on your permissions and bucket settings. Therefore, the Resources step can provide two options: Instance Packages or Create Your OwnIf you select an instance package, then click the Create Your Own tab and proceed to the next step, the system applies resources from Create Your Own even if you don't select any resources.

If you get the Hostname not known error and transaction failure when building a virtual server on a compute resource with SolidFire, you may point your compute resource or backup server to SolidFire management IP as a workaround. To point compute resource or backup server to SolidFire management IP, add /etc/hosts entries on your compute resource or backup server for

Instance Packages

Before you create a virtual server from an instance package, consider the following: 

  • If an instance package applies only to certain compute zones in a bucket, a virtual server is created on one of the compute resources within one of those zones. If an instance package is not limited to certain zones, the compute zone and compute resource are selected automatically from the ones available to a user.

  • Instance package virtual servers can be created only in compute zones where all compute resources are assigned the same number of CPU units. If there are compute resources with different number of CPU units, it's not possible to create instance package virtual servers in such zones. The reason is that CPU priority for instance package virtual servers in this configuration cannot be set to 100%, which is the default value for such virtual servers.

  • If there are no available IP addresses, all instance packages are dimmed in the wizard. 

  • Autoscaling is not supported for virtual servers created from instance packages.
  • Instance packages that have resources incompatible with the available compute zones are dimmed in the wizard. 

To create a virtual server from an instance package, click a box for a corresponding package. The instance package box includes the following details:

  • Memory - the number of RAM in MB or GB available in the instance package
  • CPUs - the number of CPU cores available in this instance package
  • Disk Size - the number of disk size in MB or GB available in this instance package
  • Bandwidth - the number of bandwidth in MB or GB available in this instance package
  • Price per Hour:
    • Mode ON - an estimated hourly price if the virtual server is powered on
    • Mode OFF - an estimated hourly price if the virtual server is powered off
  • Price per Month:
    • Mode ON - an estimated monthly price if the virtual server is powered on
    • Mode OFF - an estimated monthly price if the virtual server is powered off

After you click an instance package box, it becomes highlighted in green. Click Next to proceed to the following step of the wizard. 

Create Your Own

You can define the following resources for your virtual server:

Compute Resources

  • Compute Zone - a compute zone where to build the virtual server
  • Compute Resource - a compute resource from the compute zone. The compute resource may be selected automatically according to the Virtual Server Provisioning.

If the Show Compute Zones/Compute Resources on Virtual Server Creation permissions are disabled, users cannot select compute resources for a virtual server. The compute zone and resource are set automatically according to a virtualization type and other selected resources. The data store is set automatically according to the selected compute zone.


Select the following RAM and CPU resources for a virtual server:

  • RAM - enter the number of RAM. The maximum number depends on your bucket settings and virtualization type. 

    If you create a FreeBSD virtual server, set RAM to 512 MB. You can increase RAM later while editing the VS.

  • CPU Cores - enter the number of CPU cores. For KVM compute resources, this parameter sets CPU sockets by default, unless CPU Topology is enabled. When CPU Topology is enabled, this number specifies how many virtual cores the virtual server will have.
  • CPU Priority (or CPU Units) - enter the number of CPU Priority in %. If CPU Units are enabled on a user's bucket, the CPU Priority is replaced with CPU Units. Refer to Billing Calculation for details on CPU Units and CPU Priority.

The following options are available only for virtual servers based on KVM, providing that a user has the Enable CPU Topology permission:

  • Use CPU Topology - move the slider to the right to enable CPU Topology
  • CPU Sockets - enter the number of how many sockets the CPU cores should be arranged into. This value will affect the number of cores_per_socket

    How to determine a correct number of CPU Sockets.

    If CPU Topology is enabled, the CPU cores indicate a number of vCPUs - the maximum value that can be arranged into CPU sockets and cores per socket. If CPU Topology is disabled, the CPU cores indicate the CPU sockets value with one core per socket. When you enable CPU Topology, the following logic is applied to calculate CPU capacity:

    • You enter the total number of CPU cores and CPU sockets.
    • The value of cores_per_socket is calculated automatically by the formula vCPUs = cpu_sockets x cores_per_socket.
    • As a result, if you set eight CPU cores and two CPU sockets, the cores_per_socket value will be set to four. 

Primary Disk

Select the following properties for a primary disk: 

  • Primary data store - select a data store for a primary disk
  • Primary disk size - enter a size for a primary disk

Swap Disk

Select the following properties for a swap disk: 

  • Swap data store - select a data store for a swap disk
  • Swap disk size - enter a size for a swap disk
  • Disable - select the checkbox to disable a swap disk 

You cannot add a swap disk to a Windows-based virtual server. 

Only enabled data stores will be available for selection at this step. You can enable or disable a data store at Control Panel > Admin Settings menu by clicking the Actions button next to the data store you want to change, and then clicking Edit. Move the Enabled slider to the right to enable a data store.

Network Configuration

Before you apply network configuration, consider the following: 

  • When you create a virtual server in Federation, you cannot set a network port speed to a value greater than indicated by a seller while adding a zone to Federation.

  • Since not every application supports IPv6, at least one IPv4 address must be allocated to a primary network interface. 

  • The Show only my IP addresses checkbox appears only if you select a specific network, not Any network. 
  • The Selected IP address option is available in the wizard if it is enabled via Admin > Settings > ConfigurationSystem > Show IP address selection for new VS.

Network Interface 1

  • Network - select a network from which the VS should get the IP address 
  • IP net - select an IP net from which the IP address should be assigned
  • IP range - select an IP range from which the IP address should be assigned
  • IP address - select an IP address to be assigned to the VS
  • Show only my IP addresses - select the checkbox to view only your own IP addresses

  • Selected IP address - if the option is available, you can also assign an IP address for the VS from the drop-down menu. Indicate Compute resource and network to have the list of available IPs.
  • Port Speed - set the port speed for the VS

Click Next to proceed to the following step of the wizard where you can add recipes or service add-ons.


During this step, you can assign service add-ons or recipes to your virtual server using Service Addons or Recipes sub-tabs.

You can create a virtual server either with Service Addons or Recipes, not with both at the same time. From which sub-tab you click Next, that option is applied. For example, if you select some recipes, then go to the Service Addons sub-tab and select some service add-ons and then click Next, service add-ons will be applied not recipes.

Service Addons

Service add-ons are available if Manage Service Add-ons for all virtual servers permission or Manage Service Add-ons for own virtual servers permission is enabled.

You can create a virtual server without service add-ons and add them afterwards. To assign a service add-on to your virtual server in the wizard, follow the next steps:

  1. Click a service add-on group on the left to expand the list of service add-ons on the right. You can see the following details about each service add-on:
    • Label
    • Description
    • Price per hour
    • Compatible with, for example, Unix, Windows, etc
  2. Click the service add-on to select it. You can select several add-ons from different service add-on groups. Click View Selected Add-ons to see the list of selected service add-ons. To remove the selected service add-on from the list, click the  button.
  3. Click Next to proceed to the final step of the wizard.


The Recipes step is available in the wizard if Manage recipes joins for all virtual servers permission or Manage recipes joins for own virtual servers permission is enabled. To assign a recipe to your virtual server in the wizard, click Recipe under Add-ons and then follow the next steps:

  1. Drag and drop a recipe from the Available recipes to Assigned for provisioning box. 
  2. To add a custom variable, click the "+" button next to Custom Recipe Variables and provide the following details:
    • Name & Value - enter a name and value for the custom variable
    • Enabled - move the slider to the right to allow use of this variable
  3. Click Next to proceed to the final step of the wizard.


Before you select settings from the final step, consider the following: 

  • The Enable Autoscale slider can be dimmed in the wizard if you reached the autoscaling limit in your bucket.
  • For autoscaling to work properly, you need to enable autoscaling in the wizard and add auto-scaling rules
  • You can Enable Acceleration if the following requirements are satisfied: 
    • Accelerator is enabled on the network attached to a virtual server.  
    • The Show IP address selection for new VS option is enabled in Admin > Settings > Configuration.
    • The IP address assigned to a virtual server is in the same network as Accelerator.
    • Only HTTP is supported. Other protocols, including HTTPS, will be passed through to the virtual server directly.

The Confirmation step allows you to apply the following settings: 

  • Enable Automated Backup - move the slider to the right to create automatic backups of the virtual server based on the settings from Auto-Backup Presets.
  • Build Virtual Server - move the slider to the to the right to automatically build the virtual server. If you don't select this checkbox, you have to build your server manually after it is created.
  • Boot Virtual Server - move the slider to the right for the virtual server to be started up automatically.
  • Enable Autoscale - move the slider to the right to use autoscaling for the virtual server.

  • Acceleration Allowed - move the slider to the right to enable acceleration for the virtual server. 

The Confirmation step also provides the configuration summary of the virtual server, including information about the template, CPU cores, RAM, disks size, and network. When you are finished, click the Create Virtual Server button to start the creation process. After you click the button, several transactions are run to complete the process. You can check a status of each transaction in Activity Log of the virtual server.