Adding OVA/OVF Components to a Service
In Commander you can create service catalog entries that allow users to request VMs or vApps that are described by an OVF or OVA template. OVF and OVA templates are open-standard file formats for packaging and distributing VMs or vApps.
When a user requests a service that uses an OVA/OVF template, at deploy time, Commander will transfer the virtual machine image specified by the URL for the component to vCenter. Only OVF/OVA templates that describe a single VM are supported. However, a service may contain multiple OVA/OVF templates.
Access: | Configuration > Self-Service > Catalog tab |
Available to: | Commander Roles of Superuser and Enterprise Admin |
To add an OVA/OVF component to a vCenter service:
- Do one of the following:
- To add a new service, click Add Service.
- To copy an existing service, select a listed service, and click the Copy link.
This option saves time because much of the configuration is copied.
- To add a template to an existing service, select a listed service, and click Edit Service.
- On the Service Description page, set the following display options for the vCenter service, then click Next:
- Name — The service name to display in the Service Catalog.
This name is used as the label for the Service section of the Request New Service form. Choose a distinctive service name to help requesters fill out the form.
- Description — An optional description of the service to display in the Service Catalog.
Along with the service name, the description is used in Service Catalog searches, so a good description can help users find service catalog entries.
- Icon — An icon to identify the service.
To add a custom icon, click Manage Icons. See Managing Icons for the Service Catalog for more details.
- Categories — An identifying category that may help users find this service in a long list.
To add a category, click Manage Categories. See Managing Categories for the Service Catalog for more details.
- On the Component Blueprints page, to add an OVA/OVF service, click Add > OVA/OVF Template.
- In the Add OVA/OVF Template dialog, enter one of the following in the URL field, then click OK:
- A URL to a valid, publicly accessible OVA/OVF template. The URL can begin with "http://" or "https://".
- A URL to an OVA/OVF template was downloaded to an accessible local network directory. The URL must begin with "file:///" and must be to the full network path. The URL can't use a mapped drive.
For example:
file:///droberts3d.companya.com/OVA-OVF/TinyCore.ova
file:///resources/ovas/TinyCore.ova
Not:
file:///Z://ovas/TinyCore.ova
The component is automatically named and added under the Component Blueprints. You can customize the name later through the componenent's Infrastructure subpage.
- If you want to add multiple OVA/OVF components to the service, repeat the step above for each additional component you want to add.
You can also add custom components to the service.
- Click Next, then customize the component configuration parameters on each of the following tabs. You should review the configuration parameters for each OVA/OVF component that you added.Infrastructure
Sets default infrastructure information.
Field
Description
Name
The name that will be displayed for the component in the Service Catalog and as the label for the Component section of the Request New Service form. A user sees the component name when viewing service details and when completing a service request form.
Choose a distinctive component name to help requesters fill out the form.
Description
Optional: Customize the description for this component that will appear in the Service Catalog. A user sees the component description when viewing service details and when completing a service request form.
Deployed Name
Specify the name for deployed instances of this component.
Select Use default naming format to use the default naming convention. This means it uses the VM naming convention to deploy a VM, and the virtual service naming convention to deploy a vApp.
You can also specify a customized deployed name.
Completion Workflow
Completion workflows allow you to specify actions to be carried out after deployment. If you have set up one or more component-level completion workflows, you can select one from this menu.
- Click Add Workflow to create a new workflow.
- Click Edit Workflow to edit the currently selected workflow. Note that when you edit the workflow using this link, you're editing the workflow for all of the components or services it's assigned to.
Annual Cost
The preconfigured annual cost is displayed. You can change it in the Manage Custom Component Types dialog.
ResourcesSets the default storage tier and network mapping.
Field
Description
For each adapter defined in the OVF descriptor, select a network zone from the drop-down menu.
The network zone and storage tier set for a requested service are used to determine the provisioning destination, which in turn affects costs displayed for the published service.
If you're using network zones, to prevent automated deployment failure, you must either configure a default network zone on the Resources tab, add the Network element to the Form tab, or both.
- If a network zone assigned to a service catalog component is deleted, the service is marked as corrupt and can't be requested.
- If you don't add the Storage element and/or the Network element to the Form tab, the default values configured on the Resources tab are used to determine placement, which defines what destinations appear on the Service form. For more information, see Service Request Form Elements.
Set the storage tier for all VMs in the virtual service. You must ensure that datastores are available to back all storage tiers in use.
The admin can only choose one storage tier because all hard disks must be deployed to the same datastore.
ParametersSet the configuration parameters required for an OVA/OVF component. The configuration parameters that are displayed depend upon the descriptor file of the OVA/OVF template that's used. This tab is only displayed if the descriptor file contains at least one property.
You can enter a literal value for a parameter or use a variable.
- When you use variables for a parameter, you can set an available custom attribute for the parameter. This can allow users requesting the service to configure some or all parameters. To add a custom attribute for a parameter here, you must first add the custom attribute on the Attributes tab.
For more information of how you can use custom attributes to allow users to configure parameters, see Commander support for OVA/OVF parameters: Example below.
- The default values for the template are displayed on the right side of the page. If you make changes to the configuration parameters, but then want to restore the default values, click Reset to template defaults.
EULAThe OVA/OVF template used for the component may include an end-user license agreement (EULA) that you must accept to use the template.
If you accept the agreement here, you also implicitly accept it for all user auto-deployments.
AttributesYou can assign metadata to the service component with custom attributes and groups.
Set custom attributes and their default values for this specific component. On the Form tab, you can allow requesters to set values for custom attributes. If you don't specify a default value, no default is set for the component. If you add an attribute on the Form tab, the default value you set on the Attributes tab is presented to the requester as the default value.
To be able to add a custom attribute for this component on the request form, you must add the custom attribute on the Attributes tab first.
If custom attributes were defined for the source VM template, they are prepopulated here. Click if you don't want this attribute to apply to this service component.
Custom attributes defined for source VM templates aren't displayed for multi-cloud services.
Click Add Attributes to select from the list of existing custom attributes. In the Add Attributes dialog, Form attributes and custom attributes applicable to the current component type are displayed.
To edit existing custom attributes, click Manage Attributes. On the Custom Attributes page, you can add and edit custom attributes. Click the browser's Back button to return to the Attributes tab.
If you add list-type custom attributes that are interrelated, the attributes are displayed in the order of parent to child to grandchild (if applicable). Your selection of a default value for the parent affects the selectable values for the sublist attribute. For more information, see Create Relationships Between Attributes Used on Forms.
Set the default groups for this specific component. You can assign the following group types:
If you don't specify a value, the default group is assumed; each component must belong to a group of each type. It's possible to assign groups in other ways, such as through policy; see Order of Precedence for Metadata and Service Settings for information on which group assignment takes precedence. For more information on groups, see Managing Service Groups.
Groups assigned to the source template or VM are not prepopulated on the Attributes tab.
- Click Add Groups to select one or more group types and click OK. Next, on the Attributes tab, select a group from the relevant drop-down menu.
- If you need to add or edit groups, click Manage Groups; when finished, just click your browser's Back button to return to the Attributes tab.
FormCustomizes the form users see when they request this specific component. Adding elements to the Form tab allows requesters to change the default settings you configured on the other tabs.
If you leave the Form tab blank for all components added to the service, users won't see a component form when they request a service; they will see only the service-level form page provided by the new service request definition. For more information, see Create New Service Requests.
If a user requests changes from the default settings configured in the service catalog, these changes are displayed in approval emails, on the approval landing page, and in the Request Details dialog.
Form Element
Description
Header
Adds heading text to the form.
Text
Adds explanatory text to the form.
Allows the requester to enter a value, such as a note or a password.
Important: If users will enter a password on the request form, enable Hide User Input. When this option is enabled:
- Asterisks (*) are displayed for this field value in the Request Details dialog, emails, and landing pages.
- The password is stored, encrypted, in the Commander database.
- The plain-text password can be accessed through the approval workflow variable
#{request.services[x].components[x].settings.inputField['field name']}
. For example, if you set the Display Label for the Input Text Field to "Password", you would access the password in an approval workflow script with the variable#{request.services[1].components[1].settings.inputField['Password']}
. - If a request containing a password is copied, the password is blanked out.
Allows the requester to specify or change storage requirements for the VM. The selectable storage tier labels can be customized.
You must ensure that datastores are available to back all storage tiers in use.
Allows the requester to change or add network adapters for a VM component by choosing a network zone. The initial number of network adapters shown on the form matches the number of NICs on the source template.
When this element is on the form:
- Automatically deployed VMs can only be assigned to networks in the listed network zones, so you must assign network zones.
- And if multiple destinations are available to a user, with different networks configured for each destination, you must also add the Destination form element to the Service form (see Service Request Form Elements). If a requester wants to select a network zone that's not available on the default destination, they need to be able to select another destination.
Selectable Zones: Choose one or more network zones that users may select.
Allows the requester to change the display name of a VM component. The Maximum Length field allows you to change the maximum number of characters if required (default: 50).
Allows the requester to specify custom attribute values for a component.
If you added custom attributes on the Attributes tab, or if custom attributes were assigned to the source template or VM, these attributes appear under Attributes.
Click a custom attribute to add it to the form.
If the attribute is a list-type attribute and configured to apply only to forms, you can enable Select Multiple to allow users to select multiple values for this attribute. For more information, see Form custom attributes.
If you add a custom attribute to the Form tab and add the same attribute to the Service form (see Create New Service Requests), the value specified on the Service form takes precedence.
When you have completed configuring the added components, click Next to continue editing the service catalog entry.
- On the Deployment page, specify deployment options for the entire service, then click Next.
- Deploy Service As — Choose one of the following options:
- Virtual Service — The service will be deployed as a vApp; you can manage the service as a whole after the service request has been completed, but Service Portal users will still be able to see and manage individual VMs within the vApp.
- Individual Components — The service will be deployed as individual VMs.
When creating a service that contains a single virtual service component, choose Individual Components. Otherwise, the service will be deployed as a virtual service within a virtual service.
- Deployed Name — If you deploy the service as a virtual service, you can specify a customized name for deployed instances of the service. Select Use default naming format to use the default virtual service naming convention, or specify a customized deployed name.
Click Configure global text replacement rules to shorten your service names. See also Set up text replacement rules for service names.
- Deployment/Startup Order or Deployment Order — Applies only to VM and virtual service components. Some components in a multi-tier service may require other components to be started and running before they can start.
- If you deploy the service as a virtual service, you specify both the order in which the components are deployed and the order in which the components are started.
- If you deploy the service as individual components, you specify the order in which the components are deployed. The reverse order is used for shutdown.
There is a 120 second delay between startup and shutdown of each component. There is no delay for deployment, but components are deployed serially, not in parallel.
An administrator can override the deployment order by manually deploying components in a different order. It's also possible for Commander and Service Portal users with permissions can edit the start order for a deployed vApp.
- Completion Workflow — If you have set up one or more service-level completion workflows, you can select one from the drop-down. Completion workflows allow you to specify actions to be carried out after deployment.
- Click Add Workflow to create a new workflow.
- Click Edit Workflow to edit a selected workflow selected. Note that when you edit the workflow using this link, you're editing the workflow for all of the components or services it's assigned to.
- Start Deployed Components — By default, VMs are powered on during deployment. If you want to deploy VMs in this service in a powered-off state, clear this option.
- On the Placement page, you can configure placement attributes to define the Intelligent Placement requirements for the service.
When you assign a placement attribute value to a published service, you're identifying the requirements of that published service to help ensure that services are deployed to the best destination. For more information, see Configure Placement Attributes
To configure placement attributes:
- Click Edit Placement Attributes.
- In the Edit Placement Attributes dialog, in the Not Required section, select an attribute value that's provided by this destination and click Add to move it to the Required section.
- Click OK to close the Edit Placement Attributes dialog.
The placement attribute values you've assigned to this service are displayed on the Placement page.
- For a placement attribute with selectable values, use the Up and Down arrow buttons to order the attribute values by preference if necessary. For example, if a service can be deployed on either private or public cloud, but private cloud is preferable, make sure the Private Cloud attribute value is first in the list.
You can click Create Placement Attributes to create a new placement attribute. See Create placement attributes for more information.
- On the Visibility page, select one of the following options to set which users and groups can request this service, then click Next:
- Do not publish — The service is in the catalog but isn't available for selection (temporarily disabled). See also Permanently Removing a Service from the Service Catalog.
- Publish - Global — The service is available to all organizations, users and groups with the Request New Service permission. See Customize Service Portal Roles for Users.
- Publish - Specific organizations, users and groups — The service is available to the specified organizations, users and groups with the Request New Service permission. If you select this option, you can assign a single service to both organizations and users/groups, therefore, do one or both of the following:
- On the Organizations tab, select an organization from the drop-down menu. On the Users/Groups tab, enter the username or email address for one or more users or groups.
When an organization member requests this service, the deployed service will automatically be assigned to the organization, with the requester as primary owner.
- On the Organizations tab, select an organization from the drop-down menu. On the Users/Groups tab, enter the username or email address for one or more users or groups.
- On the Summary page, review the service's configuration details.
If necessary, go back to the appropriate pages and make changes.
- Click Finish when you're done.
- You can edit a listed service at any time by selecting it in the list and clicking Edit.
- After a service is added to the Service Catalog, you can click Show Details to quickly view information about it.
Commander support for OVA/OVF parameters: Example
When you add an OVA/OVF template to the service catalog, any parameters and initial values that are defined by the template's descriptor file are encrypted and saved to the Commander database.
Commander allows you to add these parameters to the request form with a combination of custom attributes and variables.
Custom attributes allow:
- requesters to select parameter values on the form
- requesters to specify a regular expression value for a parameter on the form
- administrators to select parameter values during manual deployment
- administrators to specify a regular expression value for a parameter during manual deployment
Variables allow you to access information about the deployment destination and the request form.
When you create a custom attribute for a parameter, you can use a substitution variable to map specific values or an input type to a parameter. In this way, you can customize the input choices on the form that's provided to users making a request or a manual deployment.
To allow Service Portal users to request a deployment size when requesting the service, you will create a custom attribute named "DeploymentConfiguration" and set the possible values for it.
- Add an OVA or OVF template to the catalog as described in the section above.
- On the Attributes tab, click Add Attributes.
- In the Add Attributes dialog, click Create New Attribute.
- In the Configure Custom Attribute dialog, type "DeploymentConfiguration" for the Name, and optionally add a description.
- For Type, select List (to allow users to select from a list of key pairs).
- For Applies To, select All Types.
- Clear Edit in Service Portal and click Next.
- On the Configure Attribute page of the wizard, enter the allowed values for attribute.
Note that the custom attribute's values must be must be exact, case-sensitive matches for the parameters provided in the template's descriptor file.
- Enter "small" and click Add.
- Enter "medium" and click Add.
- Enter "large" and click Add.
- Click Finish.
- Click OK.
- On the Attributes tab, the DeploymentConfiguration attribute appears. Select a default size if you want.
- On the Form tab, in the Attributes list, click DeploymentConfiguration to add it to the form.
- Click Edit and enable the Required option.
- Click OK to save the form element.
- Back on the Parameters tab, in the DeploymentConfiguration field, enter the following variable:
- Click Finish to save the service in the catalog.
To allow users to specify a regular expression instead, select Text. See Work with Custom Attributes for more information.
The DeploymentConfiguration attribute is now selected in the Add Attributes dialog.
#{form.customAttribute['DeploymentConfiguration']}
Now, users must select a deployment configuration size when requesting this OVA template from the service catalog. Their selection will be passed to vCenter as a parameter through the Commander variable, unless an administrator overrides the requester's selection during manual deployment of the service request.