Server arrays are commonly used for application tiers (e.g. PHP, Tomcat, Rails) where additional application servers are launched or terminated in response the changing workloads at the application level.
If you are using a server array for autoscaling purposes, you must configure each server with the appropriate alert specifications so that it can vote for a grow/shrink action, which causes the server array to resize up or down accordingly.
Depending on how the deployment is configured, you may need to add the alerts at multiple levels to ensure that each server will inherit the same alert. Use the reference architecture examples below as a general guideline to make sure that each "voting" server will inherit the same alert specifications.
Before you create alerts for triggering an autoscaling event, the first step is to identify the appropriate metric for autoscaling purposes. If you pick an inappropriate metric for the alerts, the server array may potentially resize up/down under false conditions. Be sure to test autoscaling in a staging environment to make sure the server array is resizing appropriately as expected. You may need to change the metric or thresholds accordingly to ensure proper autoscaling behavior.
Add alerts at the appropriate level(s) to make sure that each "voting" server will inherit the same alert specifications.
If you do not have a specific metric that you want to use, it's recommended that you use 'cpu-idle' as the base metric for each alert. Although you can use a different metric for scaling down, it's generally recommended that you use the same metric for both resize actions.
© 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.