vCloud API Programming Guide
About Instantiation Parameters
Instantiation parameters allow you to specify certain properties of a vApp, including:
Details of its vApp network (required).
Lease settings for the vApp (optional, if you want to override your organization's defaults)
Startup and shutdown parameters for the vApp (applicable only if the vApp has multiple children)
Instantiation parameters also include a way to indicate that any terms and conditions (such as license
agreements) contained in the vApp have been accepted.
Instantiation parameters cannot be used to modify a Vm that appears in the vApp's Chldren container. To
change the properties of a Vm, use the reconfiguration links in its Item elements. (See "Reconfiguring vApps
and Virtual Machines" on page 69.)
About vApp Networks
A vApp network is a logical network that defines how the vApp connects to an organization network in the
target vDC. It is specified as part of an instantiateVAppTemplate or composeVApp request, created when
the vApp is deployed, and deleted when the vApp is undeployed. Virtual machines (Vm elements) in the
vApp's Children collection all connect to this network, as specified in their NetworkConnection elements.
The details of a vApp network are specified in the NetworkConfig element of the
InstantiateVAppTemplateParams request body, and include the following:
A name for the vApp network, specified in the networkName attribute of the NetworkConfig element. If
the template that you are instantiating includes an ovf:NetworkSection element, the value of the
networkName attribute of the NetworkConfig element must match the value of the ovf:name attribute of
the ovf:Network element in the template. If the template defines multiple networks, then you must do
the same in the InstantiateVAppTemplateParams request.
A Configuration element that specifies the organization network to which the vApp network connects
and a FenceMode value that controls how those two networks are connected.
Instantiating a vAppTemplate Using Default Parameters
An instantiation request can supply a minimal InstantiateVAppTemplateParams element to specify that
instantiation should use the target vDC's default bindings (see "Instantiating the Template in the vDC" on
page 24). This type of request can be appropriate for a vApp that has simple requirements for storage,
network, and compute resources. A vApp instantiated in this way can be reconfigured if necessary to correct
problems caused by a default instantiation. For more information, see "Reconfiguring vApps and Virtual
Machines" on page 69.
Instantiating a vApp Template Using Additional Parameters
If a client wants to specify vApp instantiation parameters in detail, rather than relying on vDC defaults, it can
include the details in the body of the instantiateVAppTemplate request.
The instantiation request takes the form of a POST to a vDC's instantiateVAppTemplate URL. The request
body is an InstantiateVAppTemplateParams element.
To obtain the information required in an InstantiateVAppTemplateParams element, the client must take
several steps:
Examine the template's OVF to discover any EULA sections that it includes. The
InstantiateVAppTemplateParams element can include an AllEULAsAccepted element whose value
indicates whether all EULA terms included in the template were accepted. If a vApp template includes
any EULA sections, AllEULAsAccepted must be set to a value of true. Otherwise, instantiation fails.
Examine the template's ovf:StartupSection element to verify that the prescribed startup order for
children does not need to be modified.
62
VMware, Inc.