2. Auto-Scaling and Cloud Bursting : 2.4 The Upscaling and Bursting Process : 2.4.2 Input Parameters and Workflow Outline
   
2.4.2 Input Parameters and Workflow Outline
The following are the workflow input parameters:
*A mandatory vApp scaling configuration name (the vApp Template name).
*A mandatory tier number to upscale.
*An optional preferred virtual datacenter.
Monitoring systems provide different kinds of information to indicate that a vApp must be upscaled. Typically, the element that needs to be upgraded because it has exceeded specified thresholds is one of the following:
*The virtual machine of a particular vApp – An external monitoring system, for example, can determine that a virtual machine is not performing as expected. In some cases, the external monitoring system can provide identifiers such as the virtual machine’s IP address.
*The vApp or a combination of several vApp instances issued from the same vApp templateFor example, a load balancer pool associated with a particular set of vApp instances tiers can determine that members of this pool are not performing adequately, and upscale the vApp.
*The member address of a load balancer pool or the pool name.
With any of these inputs, it is possible to write a wrapper workflow that looks up what configuration matches the monitoring system.
By default, vApps are upscaled in the order defined during configuration of the burst virtual datacenters, but it is also possible to specify the first virtual datacenter to burst to as a parameter. For example, the monitoring system might be able to identify that additional resources are required, based on the pool member statistics. The scaling configuration matches a pool with a virtual datacenter, so it is possible to write a wrapper workflow that uses a pool input, gets the matching virtual datacenter, and passes it to the Upscale and burst a vApp workflow.
This workflow is designed so that different sections call one other.
2.4.2.1. Workflow Steps
1. Wait for a single workflow execution. Get scaling and bursting configuration. If a preferred virtual datacenter is provided as input, set it. Otherwise use the ones in the burst configuration. For each virtual datacenter:
a. Determine whether there is a powered-off vApp in this virtual datacenter.
b. If so, try to power it on.
c. If unsuccessful, upscale an existing vApp that did not reach the maximum number of instances for a given tier.
d. If there is no vApp available, or if upscaling fails, instantiate and deploy a new vApp.
2. After a new virtual machine or vApp is deployed, get the Tier 1 IP address or addresses, and add them as members of the load balancer pool that matches the current virtual datacenter.
The Upscale and burst a vApp workflow provided in the package uses workflow notes to break the workflow into logical sections that are described in detail in the following sections of this document.