Handling Heat Autoscale with multiple alarms

asked 2015-07-15 13:41:50 -0500

rpga95 gravatar image


I have created a Heat autoscaling stack of resources using a template which uses ceilometer alarms, an autoscaling group, and scaling policies. This works perfectly for high and low cpu_util alarms since the alarms trigger a webhook that handles the scaling via the scaling policies. Is there a way in Heat to make a scaling decision based on multiple alarms going off at the same time? For example, if cpu_util alarms high and memory alarms low, which decision would be taken? Currently, the alarm which triggers first of the two occurs first. This is an issue because if cpu_util was high and scaled the stack up, then it might be "ok" and memory is still low. After the cooldown period, the stack would scale down by one. After that, the cpu_util may scale back up, and this cycle would continue. All I'm really wondering is if instead of directly triggering a webhook, is there a way to have the alarms compared against one another?

I think a potential way to handle high/low situations is scale up if any alarm is high and only scale down if all alarms are low.

Thanks in advance for any help,


edit retag flag offensive close merge delete