Manage Virtual Appliance Specs

Introduction to virtual appliance specifications

The virtual appliance specifications (VApp specs) feature enables administrators to save complex virtual appliance configurations and present them to users for simple, self-service deployment across their virtual datacenters. Specs are similar to blueprints because the platform uses them to define the configurations to recreate. Administrators select the locations where users can work with each spec, including datacenters and public cloud regions, such as AWS and Azure ARM.

With specs, you can save the configuration of virtual appliances including VMs, storage, networks, monitoring, Chef, firewalls, and load balancers. When users create a new virtual appliance based on a spec (also referred to as to "materialize" a spec), the platform will automatically use existing virtual resources or create new ones for this virtual appliance.

The limitations of specs are as follows:

  • Specs do not store data from VM disks; they use template disks only
  • Specs do not support external networks and NICs or unmanaged networks and NICs
    • In vCloud, specs have basic support for external networks
  • Specs do not support scaling groups

Users should also be aware of differences in features between private and public cloud environments.


Manage VApp specs in the user interface

Users work with spec blueprints in different parts of the UI.

  1. To create VApp specs, go to Virtual datacenters →  Virtual appliances
  2. From the Virtual appliance spec button, select Create new spec
  3. To create a version of a spec, log in to the owner enterprise (that created the spec). Then go to Virtual datacenters and open a virtual appliance created from the spec

  4. From the Virtual appliance spec button, select Create new spec version

     Click here to show or hide the screenshot

    Screenshot: create a spec or spec version

  5. To create a virtual appliance based on a spec, go to Virtual datacenters → V. Appliances list → select Create virtual appliance based on spec.

     Click here to show or hide the screenshot

    Screenshot: create a virtual appliance based on a spec

  6. To manage specs, go to the owner enterprise →  Apps library → Virtual appliance specs

     Click here to show or hide the screenshot

    Screenshot: Apps library specs tab

 

What do virtual appliance specs save and create?

When creating the new virtual appliance based on the spec, the platform will:

  • Try to use the same VM template or offer a selection of VM templates with similar names
  • Create:
    • VMs in layers
    • storage in appropriate matching tiers
      • template disks
      • empty volumes in the available storage device
      • empty hard disks
    • networks allowing the user to select from existing or replace:
      • private network
      • private IPs
      • public IPs (either tenant's pre-purchased or automatically purchased)
      • external IPs (basic support)
    • firewalls with available integration
    • load balancers with available integration

 

 Click here to show/hide table of what specs save and create

The following VM configuration elements are saved and created by virtual appliance specs. Support for elements is marked for datacenters (DC) and public cloud regions (PCR). When creating a virtual appliance from a spec, the platform will assign the spec icon to the virtual appliance.

ElementSave in SpecCreate in VApp from saved configuration

VMs

General information: hardware profiles, CPU, RAM, remote access and descriptionSame. If a matching hardware profile is not found, the platform will activate or create one, or the user can select another available hardware profile
Anti-affinity layersVMs in layersSame
Scaling groups(error) Scaling groups are not supported
VM templatesTemplate name is saved

The system matches the spec template name against the Apps library template name. The user selects from a list of templates with names that contain the spec template name. The match is done with an SQL %LIKE% command from the spec to the template, so spec template "m0n0" will match with "m0n0" and "m0n0wall" in the Apps library. But spec template "m0n0wall" will not match with "m0n0" in the Apps library

Template auxiliary hard disks

Template system disks and other datastore hard disks and their tiers are saved

The platform will create template disks in order as in the template with no gaps in the sequence. Then empty additional hard drives and volumes will be added in the same order as in the base virtual appliance. The platform will search for datastore tiers by name, as for templates

Persistent VMs(error) Persistent VMs are not supported. To create a spec from a persistent VM, first create an instance, which is a non-persistent template 
Private network, Private IPsSave private network characteristics: network address and mask only. Save private IPs

The materialize process will present the addresses of the spec private networks. Abiquo will display matching networks in the virtual datacenter in green text, and ones that are not present in red text. Abiquo will display the number of private IPs to use in each network.

The user can choose to change any private network, even if it matches the spec network. The user can choose to create a new network (specifying the IP address, mask and gateway), or replace the network with an existing VDC network.

Network gatewaysAbiquo will determine if a NIC has a gateway IP address and save this information in the spec
  • If a NIC has a gateway IP address, when using an existing network, the materialize process will attempt to assign the network's gateway address to the NIC
  • Abiquo will not assign the gateway IP address to a NIC that did not have this address in the original configuration
  • If the materialize process is creating a new network, it will attempt to assign the same gateway address from the spec to the gateway NIC in the new network
Public networkNumber of public IPs is saved

The materialize process will try to use public IPs that were already purchased by the enterprise. These public IPs will be momentarily quarantined during the materialization process. If not, the materialize process will purchase new public IPs. The public networks will be used in the order returned by the API. In public cloud, the platform will use floating IPs

External IPs(warning) Not supported, except for basic support in vCloud

If you create a spec containing an external IP, the materialize process will fail because the external IP is unsupported.

In vCloud, specs have basic support for external networks. The validation process will list the network, and you can select it and then continue with the process. The platform will create the VApp correctly. Remember to ensure that there are enough external IP addresses available for the new virtual appliance

Unmanaged IPs(error) Not supportedIf you create a spec containing an unmanaged IP, the materialize process will fail because the unmanaged IP is unsupported.
Volume (data)

(error) Data on external storage volumes is not included. To use data on a volume, create an instance to save it to a template disk

  • Empty volumes with the same specifications as the attached volumes are created. Empty volumes are named vappName-UUID
Volume (specifications)

(warning) The specifications, disk controller types, and tiers of the volumes are saved in private cloud

  • Empty volumes with the same specifications as the attached volumes are created. Empty volumes are named vappName-UUID
  • Volumes are attached to the same disk controller type as in the original VM. If this controller type is not compatible with the target hypervisor, then the platform will use the hypervisor default
  • Matches tier names as for VM templates. If no storage tier is found, then the validate will fail. If the storage tier does not contain pools, then the volume create will fail.
Hard disk (data)

(error) Data on hard disks attached to the VM is not included. To use data on a hard disk, create an instance to save it to the template

Empty hard disks with the same specifications as the attached hard disks are created. Empty disks are named Empty disk-UUID
Hard disk (specifications)

(warning) The specifications, disk controller types and tiers of the hard disks are saved in private cloud

  • Empty hard disks with the same specifications as the attached hard disks are created. Empty disks are named Empty disk-UUID
  • Hard disks are attached to the same disk controller type as in the original VM. If this controller type is not compatible with the target hypervisor, then the platform will use the hypervisor default
  • Matches tier names as for VM templates. If no datastore tier is found, then the validate will fail. If the datastore tier does not contain datastores, then the deploy will fail.
Backup configuration(minus) Configured backups are stored in private cloudBackups are configured
Firewalls

Firewalls attached to VMs or load balancers are saved

  • Access to a firewall integration is required to create firewalls in the new virtual appliance
  • Users can edit firewall rules during virtual appliance creation
  • Users should be aware of compatibility issues between providers
  • If a VM has no firewall in the spec, and the virtual datacenter has a default firewall, then the platform will assign the default firewall to the VM
Load balancersLoad balancers attached to VMs are saved, including health checks and so on
  • Access to a load balancer integration is required to create load balancers in the new virtual appliance
  • Users should be aware of compatibility issues between providers
Monitoring (status)
  • Monitoring status of fetch metrics is saved
  • The selected metrics are saved
  • Access to a monitoring server is required to retrieve metrics
  • The materialize process creates built-in metrics of the exact same name ONLY and creates all custom metrics
Alarms and Alerts

Alarms and alerts are saved 

The materialize process creates all existing alarms and alerts, regardless of the existence of their corresponding metrics

VM variablesVM variables are saved
  • The materialize process creates VMs with VM variables
  • During the materialize process, users can edit the VM variables
Chef

Chef status, runlist and attributes are stored

  • The materialize process sets the status and recipes
    • During the materialize process, users can edit the runlist and the attributes
VM bootstrap scriptThe VM startup script is saved
  • The startup script is added to the new VM at the end of the materialize process
  • After the materialize process, the user can edit the VM to modify the startup script

Manage virtual appliance specs in the Apps library

Virtual appliance specifications (VApp specs) are saved configurations to help users easily create new virtual appliances.

To display Vapp specs

  1. Go to Apps library → Virtual appliance specs

The platform will display all the specs available in the platform.

Privilege: Manage virtual appliance specs

To display details of a VApp spec, hover over its icon.

To display the details of a VApp spec's Versions, click the options button on the icon and select Versions. The Manage spec versions dialog will open. Click on a Version to display its details.

Screenshot: Virtual appliance specs tab and Details panel

Edit a virtual appliance spec details

To modify a VApp spec, on its icon click from the options menu, and select Edit


For more details see GUI Edit spec General information

Share virtual appliance specs with other tenants

To share a VApp spec with multiple tenants, assign scopes to the spec. A scope is a list of enterprises whose users can access the spec.

Privilege: Allow user to switch enterprises

  1. When creating or editing a spec, open the Scopes tab
  2. Select scopes to allow access to users of the enterprises included in the scopes

When you have finished working with the spec, click Accept

Define the locations where users can work with a spec

To define where a spec can be used, select allowed locations. Users of enterprises that are allowed to access a location can work with the specs allowed in the location.

Privilege: Allow user to switch enterprises

To manage allowed locations:

  1. Go to Apps libraryVirtual appliance specs
  2. Select the spec, click the Options button, and select Edit
  3. Go to Locations → select locations
    1. If the spec should be available in all current and future locations, select Use all locations.
    2. To restrict the spec to a group of current locations:
      1. Clear the Use all locations checkbox
      2. Select the Locations where the spec will be available for use


Troubleshooting spec locations

  • If another user has already assigned locations that you cannot administer and access, then you can maintain or deselect these locations.
  • If you deselect locations that you cannot administer or acccess, you cannot add them again

When designing a virtual appliance for use in more than one location, please consider the following:

  • Support for multiple disks in the provider
  • Public networks in private cloud will be translated to floating IPs in public cloud and vice versa
  • A range of IP addresses may be reserved by an SDN system or cloud provider
  • The number of NICs allowed or required per VM may vary


 Click here to show/hide the screenshot

Define the version of a spec to use

The platform presents users with a single version of a virtual appliance spec. The administrator can configure this to be the default version or the latest version.

When you create a virtual appliance spec, the platform automatically sets this first version as the default version.

When you create another version you can choose to make this version the default.

 Click here to show/hide the screenshot

To change the default version of a spec:

  1. Go to Apps library → Virtual appliance specs
  2. Select the VApp spec icon, click the options button, and select Versions
  3. Click on the Version you want users to work with
  4. On the top, right-hand side of the dialog, click Mark as default version

To unset the default, so that users will always work with the latest version:

  1. Select the VApp spec version and click the pencil Edit button
  2. Clear the Default checkbox

To delete a version of a spec, select it and click the Delete button. If you delete the default version, then the platform will return the latest version to users.

Delete a virtual appliance spec

You can delete spec versions or the entire spec. When you delete a virtual appliance spec, the platform will also delete all its versions, even shared versions. When you delete an enterprise, the platform will delete all its specs, even shared specs and shared versions.

 

Related pages

Copyright © 2006-2022, Abiquo Holdings SL. All rights reserved