Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

...

Table of Contents

Introduction to virtual appliance specifications

...

...

Panel
bgColor#FFFAE6

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

Excerpt
nameIntroduction to vapp specs for cloud admin

...

The virtual appliance specifications (VApp specs) feature lets administrators save complex configurations and present them to users for simple, self-service deployment in

...

If users have access to the Apps library, then virtual appliance spec privileges will enable them to manage specs in the Apps library. However, extra privileges will be required to manage spec scopes.

Display the details of a spec

...

classprivileg

A user with privileges to work in the Apps library view and to manage specs can use the Virtual appliance specs tab.

Image Removed

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

Image Removed

Info

The cloud user can retrieve this information with the API. This will be available through the UI in future versions

 

Define the users who can work with a spec

...

classprivileg

To define the users who can work with the spec, you can select scopes to allow access to users of tenants listed in these scopes.

Edit the spec and open the Scopes tab. You can assign the following scopes:

  • Your own scope
  • A child scope beneath your scope in the hierarchy

Select one or more scopes as required. 

Image Removed

Define the locations where a spec can be used

...

classprivileg

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

  • Edit the spec and open the Locations tab
    • Another user may have already assigned locations that you cannot administer and access. In this case, you can maintain or deselect these locations. If you deselect them, you cannot add them again
  • If the spec should be available in all current and future locations, select Use all locations OR
  • If you want to restrict the spec to a group of current locations, deselect Use all locations and select the locations where the spec will be available for use
  • Click Accept

Image Removed

Spec Location Compatibility Notes

The following table provides some general guidelines about using Specs in hybrid cloud. You should consider these guidelines when designing a virtual appliance for use in more than one location.

ElementNotes
TemplatePrivate cloud may allow multiple disk templates. In public cloud, Abiquo templates always have a single disk
Additional disks

Private cloud may allow additional disks. In public cloud the user may not add external disks within Abiquo

Networks

Public networks in private cloud will be translated to floating IPs in public cloud and vice versa.

Network gateways

When creating an internal network for use in hybrid cloud specs, check that your network gateway address is not a reserved IP address in the public cloud provider. If the gateway address is reserved, the Spec will fail when the user tries to deploy it.

NICs
  • Note that some IP addresses may be reserved by the provider
    • Azure and AWS reserve the first 4 IP addresses and the last IP address of private networks
    • By default, Neutron and NSX reserve 20 IP addresses from address 1 to address 21 but this range is configurable by the system administrator
  • The number of NICs allowed per virtual machine may vary across different private and public cloud environments.

Define the version of a spec to use

...

classprivileg

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.

Tip

To update a spec configuration you can create a new version of a spec. Use a virtual appliance created from the spec and save a new version of the spec or save a new spec.

Image Removed

To change the default version of a spec:

  1. In the Apps library open the Virtual appliance specs tab
  2. On the spec's icon, click the option 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
    Image Removed

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

  1. Edit the spec version
    Image Removed
  2. Remove the mark of the default version
    Image Removed

 

Delete virtual appliance specs or versions

When you delete a virtual appliance spec, the platform will also delete all its versions.

If you delete the default version, then the platform will return the latest version.

When you delete an enterprise, the platform will delete all its specs, regardless of their scopes.

To delete configurations saved in specs:

  1. Open the Apps library and open the Virtual appliance specs tab:
  2. To delete a version of a spec
    1. Select the version and click the delete button
      • If you delete the default version and don't set another version, the latest version will be used
  3. To delete a spec
    1. Select the spec and click the delete button. The platform will delete all versions of the spec, even shared versions

What virtual resources are required for creating a virtual appliance based on a spec?

A virtual appliance can be created from a spec in another virtual datacenter or datacenter. The administrator should prepare a compatible environment before allowing users to work with a spec. For example, datastore tiers with the same names should be available in both datacenters

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

  • Try to use the same template. If the same template is not available, the user can select from the list of suggested templates with matching names (based on a database LIKE match, if the name of the spec template is contained in an Apps library template)
  • Automatically reuse:
    • private networks with the same specifications as the ones in the spec
  • Automatically create:
    • virtual machines in layers
    • storage 
      • in appropriate matching tiers
        • volumes in the available storage device
        • empty hard disks
    • networks:
      • private network
      • private IPs
      • public IPs (either tenant's pre-purchased or automatically purchased)
    • firewalls with available integration
    • load balancers with available integration

Remember that specs do not save or configure:

  • persistent system disks or template volumes on external storage devices
  • data from virtual machine disks or volumes
  • IPs in external networks (except Azure external networks)
  • IPs in unmanaged networks

Manage virtual appliance specs in the virtual datacenter

The following topics describe how to work with virtual appliance specs in the Virtual datacenters view. They are included here for convenience.

Create a spec to save a virtual appliance configuration

...

Share a virtual appliance configuration with multiple tenants

...

Select the locations where the configuration can be used

...

Create a virtual appliance based on a spec

...

Save changes to the configuration in a virtual appliance spec

...

Related pages

...

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.

Excerpt
nameIntroduction to vapp specs for tenant admin

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

See Create a virtual appliance spec

...

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.

Excerpt
nameWhat do VApp specs save and create

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

(error) 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

(error) 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

  • 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 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

(warning) 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.
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 supported

If 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 cloud

Backups 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 balancers

Load 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 variables

VM 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 script

The 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 VApp specs in the user interface

Excerpt
nameManage 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

Excerpt
nameCreate a new version of a virtual appliance spec

To create a version of a spec:

  1. Log in to the owner enterprise (that created the spec)

  2. Go to myCloud view →  Virtual datacenters 

  3. Open a virtual appliance created from the spec

  4. Make changes as required

  5. 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.

Create a spec or spec versionImage Added

...

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

  1. Go to Catalogue → Virtual appliance specs

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

Panel
bgColor#FFFAE6

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.

Panel
bgColor#FFFAE6

Privileges: Allow user to switch enterprises

To define the tenants who can work with the spec do these steps.

  1. Edit the spec and go to the Scopes tab.

  2. 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.

Panel
bgColor#FFFAE6

Privileges: Allow user to switch enterprises

To manage allowed locations:

  1. Go to CatalogueVirtual 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

Note

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

See https://abiquo.atlassian.net/wiki/pages/createpage.action?spaceKey=abidoc&title=Define%20the%20version%20of%20a%20spec%20to%20use.

...

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.