Sort instances if possible inside an host aggregate

Simple use case: Reduce the licence cost
Windows licences are billed by host or by socket. The goal is to stack all
Windows instances on the same hosts as much as possible without creating a
new host aggregate.

As much as possible means this is a best effort feature, if nova can place
this new Windows instance on a compute where other Windows are running, do
it. If not, spawn it where you want or on a empty compute to identify it
as « preferred widows compute » for future windows spawn.

This use case could be extended to many other situations, every time you
have a preferred situation with no hard restrictions.

Co-Authored-By: Michael Still <mikal@stillhq.com>

Change-Id: I261bcb802573406f0aca5a87606e4dcca877301b
This commit is contained in:
Jean-Daniel Bonnetot
2015-05-13 18:56:21 +02:00
committed by Michael Still
parent 4c7dc80582
commit 2a9f975bec

View File

@@ -0,0 +1,139 @@
..
This work is licensed under a Creative Commons Attribution 3.0 Unported
License.
http://creativecommons.org/licenses/by/3.0/legalcode
===================================================
Sort instances if possible inside an host aggregate
===================================================
https://blueprints.launchpad.net/nova/+spec/same-instances-scheduling
Nova should allow sorting instances based on preferences without
host aggregate speraration.
Problem description
===================
As an operator, when you manage hundred or thousand nodes, instances will be
automaticly balanced though all nodes. There is no possibility to ask the
infrastructure to group a kind of instances on the same hosts if possible.
A kind of instance could be based on a specific image, a specific flavor.
For this use case, host-aggregates are not used because this is not a strong
constraint, this is a prefered situation.
Use Cases
----------
Reduce the licence cost: Microsoft Windows licences are billed by host or by
socket. The goal is to stack all Windows instances on the same hosts as much as
possible.
As much as possible means this is a best effort feature, if Nova can place
this new Windows instance on a compute where other Windows are running, do
it. If not, spawn it where you want or on a empty compute to identify it
as `preferred widows compute` for future windows spawn.
Project Priority
-----------------
None
Proposed change
===============
Posting to get preliminary feedback on the scope of this spec.
Alternatives
------------
None
Data model impact
-----------------
None
REST API impact
---------------
None
Security impact
---------------
None
Notifications impact
--------------------
None
Other end user impact
---------------------
None
Performance Impact
------------------
None
Other deployer impact
---------------------
None
Developer impact
----------------
None
Implementation
==============
Assignee(s)
-----------
None
Work Items
----------
None
Dependencies
============
None
Testing
=======
None
Documentation Impact
====================
None
References
==========
None
History
=======
None
.. list-table:: Revisions
:header-rows: 1
* - Release Name
- Description
* - Liberty
- Introduced