On 04/08/2014 07:25 AM, Jay Pipes wrote:
On Tue, 2014-04-08 at 10:49 +0000, Day, Phil wrote:
On a large cloud you’re protect against this to some extent if the
number of servers is >> number of instances in the quota.

However it does feel that there are a couple of things missing to
really provide some better protection:

-         A quota value on the maximum size of a server group
-         A policy setting so that the ability to use service-groups
can be controlled on a per project basis

Alternately, we could just have the affinity filters serve as weighting
filters instead of returning NoValidHosts.

That way, a request containing an affinity hint would cause the
scheduler to prefer placing the new VM near (or not-near) other
instances in the server group, but if no hosts exist that meet that
criteria, the filter simply finds a host with the most (or fewest, in
case of anti-affinity) instances that meet the affinity criteria.

I'd be in favor of this. I've actually been playing with an internal patch to do both of these things, though in my case I was just doing it via metadata on the group and a couple hacks in the scheduler and the compute node.

Basically I added a group_size metadata field and a "best_effort" flag to indicate whether we should error out or continue on if the policy can't be properly met.

Currently mine just falls back to the regular scheduler if it can't meet the policy, but I had been thinking about what it would take to do it like you suggest above, where we try to abide by the spirit of the policy even if we can't quite satisfy the letter of it.

Chris

_______________________________________________
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to