This page describes basic scaling group concepts and actions.
For more topics about scaling groups, see Manage scaling groups advanced.
To configure an automatic response to changing demands for resources, you can scale out VMs or scale them in, which is also called horizontal autoscaling. To scale out, the platform clones the base VM and deploys the clones. To scale in, the platform will delete clone VMs and undeploy the base VM. Scaling operations are subject to all standard platform constraints, such as privileges and allocation limits. Screenshot: A scaling group with VMs deployed automatically. Limitations: Autoscaling does not clone captured VMs, so to use scaling groups with a captured VM, create an instance and recreate the VM. Create instances to save VM disks to templates VApp specs do not support scaling groups. See What do virtual appliance specs save and create Scaling groups have aggregate alarms that are associated with the base VM. This means that you can push custom metrics for clone VMs but you cannot create alarms for cloned VMs that are part of a scaling group. State of base VM: A scaling group with a deployed base VM would be destroyed if the base VM were deleted directly on the hypervisor. In contrast, a scaling group with an undeployed base VM is not vulnerable to interference at the hypervisor level The platform enables you to automatically scale out (add more VMs) or scale up (add more resources to existing VMs). Privileges: Manage scaling groups, Manage workflow for scaling groups To use autoscaling do these steps: Create a base VM, which can be deployed or undeployed Configure the VM and enable metrics Define a scaling group with rules for scaling the VM. Standard alarms and alerts for the selected metrics Action plans with scaling actions for the VM and triggers for the action plans, which are monitoring alerts You can customize the elements the platform creates, or you can create your own configuration. Related pages: Before you begin: Configure the base VM that will be scaled Ensure that you have enough resources in your virtual datacenter to deploy up to the maximum number of cloned VMs, especially IP addresses To create a scaling group: Go to Virtual datacenters → Virtual appliances On the VM icon, from the options menu, select Define scaling group Enter the scaling parameters For the Default cooldown, enter the period of time to wait from the start of one scaling operation before allowing another scaling operation For the Minimum running virtual machines that Abiquo must maintain in the scaling group, the value must be greater than or equal to zero, where zero means that the base machine is not deployed The option to Keep virtual machines in the same layer can maintain VM anti-affinity layers when autoscaling Administrators with the privilege to Manage workflow for scaling groups can Disable workflow or enable it as required Optionally, select Create in maintenance mode to delay the start of autoscaling, and the automatic deployment of VMs to meet the minimum size Select the option to Create autoscaling action to create basic operations to scale in and scale out, with triggers based on metrics and alarm conditions. Create scaling rules For Scale out rules, enter the number of VMs to Add. This is the number of times to clone the base VM and deploy each clone for each scaling step For Scale in rules, enter the number of VMs to Remove. Abiquo will delete clone machines and undeploy the base machine If there is no time range, then this is a default scaling rule. A time range must be unique and cannot overlap with other rules with the same scaling direction. Click Save When you save the scaling group, Abiquo will mark the VM icon with the scaling group symbol and display the scaling group name. When the scaling group leaves maintenance mode, Abiquo will create clones of the base VM and deploy them to reach the minimum size. The number in the bottom right-hand corner of the icon is the number of running VMs in the scaling group, including the base VM. To open the scaling group and check its parameters, click the scaling group symbol at the top of the VM icon. To configure automatic scaling actions: When you define a scaling group, select Create autoscaling action and Save the scaling group In the dialog, select a Metric to control an autoscaling action To configure more options, including the thresholds for scaling in and scaling out, click Show more To add this action, click Add Add more actions as required The platform will automatically create the alarms, alerts, and action plan to automatically scale in or out according to your thresholds. Before you begin: Create a VM and a scaling group for the VM. See Define a scaling group If you create an automatic scaling action, then the VM metrics will trigger autoscaling when they cross the thresholds set for the actions To enable autoscaling operations to run: Create an action plan with a scaling action for the VM with the scaling group. See Create an action plan to automate VM actions Create triggers to run the action plan. See Create a trigger for an action plan When scaling, the platform will search for a scaling rule that is valid for the specific time range, or for a default rule. It will create or delete/undeploy the number of VMs in the rule, then wait for the cooldown period before accepting another scaling request. To scale out, the platform does not deploy VMs that are undeployed in the scaling group. To clone the base VM, the platform will do the following: Create disks using the following: Copies of content of disks from the VM template Empty disks or volumes for each additional disk used in the VM Disk controllers used in the VM Apply ALL configuration used in the VM, for example: CPU and RAM Network connections of the same type (e.g. private network) Assignment of firewall policies and attachment to load balancers Backups, startup script, cloud-init, variables, and so on Metrics. The group of metrics from clone VMs and the base VM (if it is deployed) can activate alarms in the base VM, even if it is not deployed Exception – Alarms: the scaling group has only one set of alarms in the base VM To scale in, Abiquo currently selects the VMs to delete or undeploy using first in, first out (FIFO). The platform deletes and undeploys VMs without requesting user confirmation when there are disks that are not stored in the Apps library (ISO configuration drive or additional hard disk). To make changes to your VMs in a scaling group (manually deploy, undeploy, delete, etc.) and edit the scaling group, put it into maintenance mode, which will disable autoscaling. When you leave maintenance mode, the platform will apply your modifications to the scaling group, e.g. adding new rules. Then the platform will adjust the number of VMs in the group to within the minimum and maximum size range. To put the scaling group in maintenance mode: Go to Virtual datacenters → Virtual appliances → select VM At the bottom of the VM icon, click the cog maintenance symbol at the bottom of the VM icon OR if the scaling group is open, click the spanner maintenance symbol in the top right corner To leave maintenance mode Click a maintenance button To automatically manage maintenance mode Trigger action plans with the action "Scaling group: start maintenance mode" or "Scaling group: end maintenance mode". To delete the base VM, you must delete the scaling group first. To display scaling actions of a scaling group: Go to Virtual datacenters → Virtual appliances → open virtual appliance If the scaling group is not in maintenance mode, click the cog maintenance symbol Edit the scaling group and go to Autoscaling actions To show or hide more details of a scaling action, click Show more or Show less You can also display all the elements created for the automatic scaling action in the relevant sections of the UI, such as the Alarms tab, and the Control view. Abiquo can display custom metrics for your scaling groups and built-in metrics for the VMs in the scaling group. Scaling groups also have built-in metrics that are a composite of the VM metrics, and which have the same names as the VM metrics. The Abiquo UI does not display the built-in scaling group metrics but you can access them through the Abiquo API. To display metrics for a scaling group: On the Scaling group icon, click the Monitoring symbol in the top right-hand corner OR Open a Scaling group and click the Monitoring symbol Select the Scaling group or Virtual machines page You can configure the display of metrics at this level. To filter metric statistics, click on the Filter button and select the granularity, statistic, time frame, and dimension, as required. Screenshot: Scaling group view with Monitoring symbol Screenshot: Scaling group metrics popup - Virtual machine metrics page Screenshot: Scaling group metrics popup - Scaling group metrics page To manage tags for a scaling group: Go to Virtual appliances → Virtual machines Select a scaling group and put it into maintenance mode Open and edit the scaling group and go to Tags Add tags For entities that exist in the platform only, such as virtual appliances and scaling groups, the user can create tags in the platform only. To add a tag, enter the Key and Value, then click Add. To edit a tag field, click the pencil edit button To delete a tag, select the tag, then click the trash bin delete button. To save your changes, click Save. To move a scaling group to another virtual appliance in the same virtual datacenter: Put the scaling group in maintenance mode Click the Move button Select the new virtual appliance To move a scaling group to a restricted virtual appliance, do these steps: Click the cog or wrench maintenance symbol to put the scaling group into maintenance mode Click the cross arrows move button Select the checkbox to Move to a restricted virtual appliance, or When you delete a scaling group, the platform will place all the VMs in the virtual appliance as regular VMs and the scaling group constraints will no longer exist. To delete a scaling group: Go to Virtual datacenters → Virtual appliances Open the scaling group Click the wrench maintenance button to put the scaling group into maintenance mode Click the trash can delete button For the Abiquo API documentation of this feature, see Abiquo API Resources and the page for this resource ScalingGroupsResource.Introduction to autoscaling
Automatically scale VMs
The checkbox to automatically create a scaling action, will create the following automatically:Define a scaling group
Configure automatic scaling actions
Trigger autoscaling
How the platform scales VMs
Perform maintenance on a scaling group
Display scaling actions for a scaling group
Display metrics for a scaling group
Add tags to a scaling group
Move a scaling group to another virtual appliance in the same virtual datacenter
Restrict a scaling group
Select a restricted virtual appliance, or
Create a new VApp and select the Restrict virtual appliance checkboxDelete a scaling group
Manage scaling groups with the API
API Documentation