what module of openstack will support the scalability?

asked 2015-07-20 05:20:55 -0600

venkatav gravatar image

updated 2015-07-29 13:11:22 -0600

zaneb gravatar image

HI, I would like to know what module of openstack will support the scalability operation?. For e.g. my virtual machine is pinned to a particular core, and if that Core load is reaching a particular threshold, who (which module) will understand this behavior and spawns a new Virtual MAchine dynamically? I have a requirement as following in one of my POC.

1) I have an application where it would be running on a particular virtual machine. Let's assume that this VM is assigned to a particular core (0). 2) Based on the load of the current application, let's assume that CPU load of Core (0) is reaching around 80% which is very critical to be assumed. 3) Now at this instance, I would like to spawn one more virtual machine on another Core (1) which will handle one more instance of my application.

So here are my questions based on the above requirements.

1) Which module of openstack keeps monitoring such condition? i.e. measuring the CPU load of Core (0) ?. 2) Let's assume that this is measured by module X (X is answer to my question 1). In this case, I want to set my own rule to the module X. For e.g. I may want to ask to spawn on extra VM only when the CPU load is 80% and further to change this value to 90% etc. So is there a provision to give such input? 3) Further is this X module only going to spawn the VMs?. Or is to going to inform someone to spawn the VMs?. 4) I am just trying to visualize the flow when the above scenario hits (CPU load) and want to spawn a VM. Just would like to know through what all the modules the request & response flows.

It would be really great if you can clarify the above for me. Based on these answers, I have some more queries which I would like to ask further.

We are doing an important POC and we are new to openstack. Hence your respond would be of a great help.

edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted

answered 2015-07-29 13:10:04 -0600

zaneb gravatar image

Monitoring of metrics in OpenStack is done by the Ceilometer (Telemetry) service. Ceilometer can monitor a number of built-in metrics provided by the compute nodes, or you can push custom metrics to it. You can configure Ceilometer to generate alarms in the form of webhooks at particular thresholds.

You can do autoscaling in OpenStack with the Heat (Orchestration) service. At present the only way to create a Heat autoscaling group is via a resource in a Heat template - this is also a convenient way of setting up the Ceilometer alarms at the same time. Heat autoscaling groups support some basic scaling policies, each of which has a webhook URL that you can provide as the target for a Ceilometer alarm. The scaled unit of a Heat autoscaling group can be either a Nova server or an entire Heat template.

Note that there are also other services currently in development but not formally part of OpenStack that offer equivalent functionality, for example Monasca (for monitoring) and Senlin (for autoscaling).

edit flag offensive delete link more



This is the correct answer, if you want an example of heat auto-scaling this was recently added to the heat-kubernetes templates:

sgordon gravatar imagesgordon ( 2015-08-01 17:19:49 -0600 )edit

Get to know Ask OpenStack

Resources for moderators

Question Tools

1 follower


Asked: 2015-07-20 05:20:55 -0600

Seen: 226 times

Last updated: Jul 29 '15