Critical in nova-scheduler: over-provision and imbalanced load

Bug #970544 reported by Han Li
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
New
Undecided
Unassigned

Bug Description

My nova version is 2012.1~rc1-0ubuntu2.

I have a setup with one controller node and two compute nodes, denoted as compute-A and compute-B. These two machines are identical.

Ever since I updated nova to this version, I noticed there are two problems regarding nova-scheduler:

1. All the instances are assigned to the same compute node. To illustrate, if the first instance is started at compute-B, all the following instances are assigned to compute-B as well, even when compute-A is totally idle. Sometimes all the instances are assigned to compute-A, while compute-B remains idle. So there is no difference between the two. This problem results in imbalanced load among multi compute nodes.

2. In each compute node, there are 16 cpu cores. Before, each compute node can only host 8 m1.medium instances (each has 2 cores) at maximum. With this version (2012.1~rc1-0ubuntu2), I started 12 m1.medium instances and they are all assigned to one compute node, leaving the other compute node totally idle. This problem leads to over-provisioning the unavailable resources.

Could you please fix these two problems?

Also, I have another question with regard to the nova scheduler. Can we choose the nova-compute node as we like to host the instance when we issue euca-run-instances? The option could be useful for many users.

Revision history for this message
Vish Ishaya (vishvananda) wrote :

This is fixed in rc2. In the meantime you can modify these values with config settings. Try:
compute_fill_first_cost_fn_weight = -1.0

And if you want to allow less instances on a host, you can modify the ram overprovisioning value:
ram_allocation_ratio = 1.5

Try 1.0, for example.

The default scheduler filter goes by ram, not cores when deciding if a host is full

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.