Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents
maxLevel4




Basic control and scaling concepts

Include Page
Control and scaling concepts
Control and scaling concepts

ConceptDescriptionAlarmAn alarm activates when a metric passes a certain threshold. If you imagine a dashboard for your metrics, alarms are like red lights that light up when conditions change, for example, when there is a problem. See Manage cloud alarms and Infrastructure AlarmsAlertAn alert enables you to configure notifications or actions from alarms. Alerts are like a worker monitoring a group of alarms; when all the lights for the group are lit up, the alert is activated. Alerts can trigger action plans. See Control ViewAction plansA sequence of actions to perform on entities on the platform, such as VMs or scaling groups. An action plan is run by a trigger.TriggerA trigger is an alert or a schedule that will run the action plan, for example, during times of increased demand. Scaling groupFor horizontal autoscaling, create a scaling group for a VM with rules to define how the platform should scale it out. You can then include scaling operations in an action plan.Vertical scalingVertical scaling means scaling up, adding more resources to an existing VM, for example, boosting your CPU and or RAM capacity.Horizontal scalingHorizontal scaling means scaling out, deploying more VMs when you need more resources. 




Monitor virtual appliances

The monitoring system displays VM metrics and the user can configure alerts to trigger actions if certain conditions are met within virtual appliances. If your virtual datacenter supports monitoring, but you don't see any metrics for your virtual appliance, you may need to edit your VMs and configure monitoring on the VM monitoring tab. See VM monitoring and metrics

Panel

Privilege: Access virtual machine metrics

Then you can configure the display of metrics at the virtual appliance level.

To configure the refresh interval

  1. Select the "Refresh data every" checkbox and enter a number of minutes. 
  2. Choose the metrics you wish to display and filter by metric statistics.

Expand
titleClick here to show/hide the screenshot

Screenshot: filtering metric statistics


When you are fetching metrics, you can configure alarms on these metrics. See Manage cloud alarms





Manage scaling groups

To configure an automatic response to changing demands for resources, you can scale out VMs, 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 but it will just undeploy the base VM. Scaling operations are subject to all standard platform constraints, such as privileges and allocation limits.

Info
titleScaling notes
  • Limitations:
    • The platform does not clone captured VMs, so you will need to create an instance and recreate the VM from the resulting template to use scaling groups
    • VApp specs do not support scaling groups
  • 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


Panel

Privilege: Manage scaling groups, Manage workflow for scaling groups


To use autoscaling do these steps:

  1. Create a base VM, which can be deployed or undeployed
  2. Define a scaling group with rules for scaling the VM
  3. Create an action plan with scaling actions for the VM. Create triggers for the action plan, which are either monitoring alerts for virtual appliances or schedules for planned scaling





Define a scaling group

Before you begin:

  1. Configure the base VM
  2. 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:

  1. In virtual appliance view, select the VM, and from the menu on the VM icon, select the Create scaling group option
  2. Enter the scaling parameters and rules
  3. Click Save

Include Page
GUI Create scaling group
GUI Create scaling group

When you save the scaling group, Abiquo will mark the VM icon with the scaling group symbol and display the scaling group name. If the minimum number of deployed VMs are not present and the scaling group is not in maintenance, Abiquo will create clones of the base machine 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 machine.

To open the scaling group and check its parameters, click the scaling group symbol in the top right-hand corner of the VM icon.




Trigger autoscaling

To trigger autoscaling operations, create an action plan with a scaling action for the VM with the scaling group. Then create triggers to run the action plan. See Manage Action Plans. When scaling, the platform will search for a 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. 




How the platform scales out a VM

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:

  1. Create disks using the following:
    1. Copies of content of disks from the VM template
    2. Empty disks or volumes for each additional disk used in the VM
    3. Disk controllers used in the VM
  2. Apply ALL configuration used in the VM, for example:
    1. CPU and RAM
    2. Network connections of the same type (e.g. private network)
    3. Assignment of firewall policies and attachment to load balancers
    4. Chef recipes, backups, cloud-init, variables, and so on
    5. Metrics. The group of metrics from clone machines and the base machine (if it is deployed) can activate alarms in the base machine, even if it is not deployed
    6. Exception – Alarms: the scaling group has only one set of alarms in the base machine

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




Perform maintenance on a scaling group

Maintenance mode temporarily disables autoscaling and enables you to make changes to your VMs (deploy, undeploy, delete etc.) and edit the scaling group. Note that you cannot delete the base VM without deleting the scaling group. Also you cannot create alarms for cloned VMs that are part of a scaling group, because the scaling group alarms are in the base VM. When you leave maintenance mode, Abiquo will apply your modifications to the scaling group, e.g. adding new rules. Then Abiquo 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, click the "cog" maintenance button or trigger an action plan with the action "Scaling group: start maintenance mode"
  • To leave maintenance mode, click the "cog" maintenance button again or trigger an action plan with the action "Scaling group: end maintenance mode".




Move a scaling group to another virtual appliance in the same virtual datacenter

To move a scaling group in maintenance mode to another virtual appliance in the same virtual datacenter, click the Move VM button and select the new virtual appliance.




Restrict a scaling group

To restrict a scaling group, move the scaling group to a restricted virtual appliance, by selecting the Restrict scaling group checkbox, or by selecting a restricted virtual appliance.




Delete a scaling group

When you delete a scaling group, Abiquo 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, first put it into maintenance mode, then click the delete button.




Manage scaling groups with the API






Pages related to monitoring and scaling groups