The voting process only applies to array-based alerts that are used for the purpose of autoscaling. (i.e. Launching additional instances in a server array.) The best way to fully understand how the voting process works is to simply walk through an example.
Voting Tags are used to denote whether or not a Server is voting for a scaling action. RightScale monitors these tags across all voting instances and counts them to determine whether or not enough Servers are voting for a particular scaling action. Let's assume you have a server array with the following alert parameters.
RightScale monitors all tags across all of your Servers. For autoscaling purposes RightScale looks for all Servers with the specified Voting Tag that you've assigned to a server array in order to determine when the array should grow/shrink. You can only have one Voting Tag per Server Array.
Note: Voting tags are NOT case sensitive.
Let's assume that you've also configured the alert specifications for the voting Servers to use a matching voting tag (e.g. MyArray). It's important that any Server that you want to allow to vote for a scaling action in the server array has a matching voting tag, otherwise RightScale will be looking for an incorrect tag for autoscaling purposes. In this example, each instance that gets launched into the server array is assigned the following tag:
At this point, no Server is voting for a scaling action because their Voting Tags are set to 'none'.
Later, an alert is triggered on a Server for a scale-up action. The Server's Voting Tag automatically changes to
Because only one Server is voting to scale-up and grow, nothing happens.
However, once another Server also votes to grow, the Server Array's Decision Threshold is exceeded (51%), causing a scaling action to grow the array.
In this example, we're going to launch two additional instances into the array (Resize Up by = 2).
Once a scaling action occurs, the Server Array is not allowed to undergo another scaling action until the Resize Calm Time (e.g. 15 min) expires, which is necessary so that the newly launched Servers have enough time to become operational and start making an impact on the array (by offloading some of the work from the overworked instances). Hopefully, the additional Servers can make a significant enough impact so that the triggered alerts disappear and the Voting Tags return to 'none' again.
In this example, the extra Servers helped satisfy a spike in traffic. However, once that spike is over and those extra Servers are no longer needed, the array will scale down to save costs. Once again, as soon as the Decision Threshold has been surpassed (e.g. 51% of the Servers are voting to "shrink"), the Server Array automatically scales down by terminating one of your array servers.
Since you typically want to scale down more conservatively than when you scale up, we've configured the Server Array to scale down by one at a time. (e.g. Resize Down by = 1) .
In this example, the Server Array only needed to scale down once in order for all of the autoscaling alerts to disappear.
© 2006-2014 RightScale, Inc. All rights reserved.
RightScale is a registered trademark of RightScale, Inc. All other products and services may be trademarks or servicemarks of their respective owners.