This page describes how you can easily save and create a typical set of VMs using the virtual appliance specs (blueprints) feature.
This page describes blueprints for a cloud administrator or reseller administrator, including the Catalogue functionalities, and sharing.
For details of how to use these blueprints for a tenant administrator, see https://abiquo.atlassian.net/wiki/pages/resumedraft.action?draftId=326598709.
For details of how to create a virtual appliance from a blueprint, see Create a virtual appliance based on a spec.
Introduction to virtual appliance specifications
The virtual appliance specifications (VApp specs) feature enables administrators to save complex 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.
Save a VApp configuration as a blueprint spec
To save a configuration of a group of VMs as a blueprint (virtual appliance spec):Privileges: Manage virtual appliance specs
Go to myCloud → Virtual datacenters → Virtual appliances
Open the virtual appliance
Go to the virtual appliance options menu → select Create new spec
Enter spec details
The Description should identify the spec and the current version for the user
For the Icon, enter a URL
This URL must have a public IP address, not localhost or 127.0.0.1. It may contain the IP address of the API server. Use the same protocol as the server to avoid mixed content errors
Square icon images with a size of 128x128 pixels and a transparent background look best. The compatible image formats are PNG, JPG, and GIF.
Click Validate to check the display of the Icon
If your user role has the privilege to Allow user to switch enterprises, you can also do the following steps
Go to Scopes and select scopes to share the spec with the tenants in those scopes
Go to Locations and select datacenters and public cloud regions where users can work with the spec
Click Save
The platform will create the new spec for your tenant. This spec will be the default, but an administrator can change or remove the default.
When designing a virtual appliance for use in more than one location, please consider the following differences between private and public cloud:
Private cloud datacenters allow multiple disk templates and additional disks. In public cloud, the platform may support only a single disk or use all disks
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 the cloud provider
The number of NICs allowed or required per VM may vary
Firewall and load balancer configurations may differ
To save VM disks as templates, see Create instances to save VM disks to templates.
What do VApp 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
The following VM configuration elements are saved and created by virtual appliance specs. When creating a virtual appliance from a spec, the platform will assign the spec icon to the virtual appliance.
Element | Save in Spec | Create in VApp from saved configuration |
---|---|---|
VMs | General information: hardware profiles, CPU, RAM, remote access and description | Same. 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 layers | VMs in layers | Same |
Scaling groups | Scaling groups are not supported | |
VM templates | Template name is saved | The system matches the spec template name against the catalogue 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 Catalogue. But spec template "m0n0wall" will not match with "m0n0" in the catalogue |
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 | Persistent VMs are not supported. (Use a VM from an instance of the persistent VM) | |
Private network, Private IPs | Save 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 gateways | Abiquo will determine if a NIC has a gateway IP address and save this information in the spec |
|
Public network | Number 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 | Not supported, except for basic support in VCD | 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. |
Unmanaged IPs | Not supported | If you create a spec containing an unmanaged IP, the materialize process will fail because the unmanaged IP is unsupported. |
Volume (data) | Data on external storage volumes is not included. To use data on a volume, create an instance to save it to a template disk |
|
Volume (specifications) | The specifications, disk controller types, and tiers of the volumes are saved in private cloud |
|
Hard disk (data) | 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) | The specifications, disk controller types and tiers of the hard disks are saved in private cloud |
|
Backup configuration | Configured backups are stored in private cloud | Backups are configured |
Firewalls | Firewalls attached to VMs or load balancers are saved |
|
Load balancers | Load balancers attached to VMs are saved, including health checks and so on |
|
Monitoring (status) |
|
|
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 variables | VM variables are saved |
|
Chef | Chef status, runlist and attributes are stored |
|
VM bootstrap script | The VM startup script is saved |
|
Manage VApp specs in the user interface
Users work with spec blueprints in different parts of the UI.
To create VApp specs, go to Virtual datacenters → Virtual appliances, open a VApp and save it as a spec
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 and save changes as a new version
To create a virtual appliance based on a spec, go to Virtual datacenters → V. Appliances list → select Create virtual appliance based on spec.
To edit or delete specs, and manage spec versions, go to the owner enterprise → Catalogue→ Virtual appliance specs.
Create a new version of a virtual appliance spec
To create a version of a spec:
Log in to the owner enterprise (that created the spec)
Go to myCloud view → Virtual datacenters
Open a virtual appliance created from the spec
Make changes as required
From the Virtual appliance options menu select Create new spec version
The platform will save the spec version in the Catalogue. This latest version will be the new default unless the administrator sets a specific default version.
Display virtual appliance specs in the catalogue
Virtual appliance specifications (VApp specs) are saved configurations (like blueprints) to help users easily create new virtual appliances.
To display Vapp specs
Go to Catalogue → Virtual appliance specs
The platform will display all the specs available in the platform.
Privileges: 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
Share virtual appliance specs with other tenants
A new VApp spec is always available to the enterprise that created it and to users of any other tenants in its scopes.
Privileges: Allow user to switch enterprises
To define the tenants who can work with the spec do these steps.
Edit the spec and go to the Scopes tab.
Select your own scope and/or child scope(s) beneath your scope in the hierarchy.
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.
Privileges: Allow user to switch enterprises
To manage allowed locations:
Go to Apps library → Virtual appliance specs
Select the spec, click the Options button, and select Edit
Go to Locations → select locations
If the spec should be available in all current and future locations, select Use all locations.
To restrict the spec to a group of current locations:
Clear the Use all locations checkbox
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
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.
To change the default version of a spec:
Go to Apps library → Virtual appliance specs
Select the VApp spec icon, click the options button, and select Versions
Click on the Version you want users to work with
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:
Select the VApp spec version and click the pencil Edit button
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.