[Openstack-operators] AggregateMultiTenancyIsolation with multiple (many) projects

Massimo Sgaravatto massimo.sgaravatto at gmail.com
Tue Feb 6 05:44:17 UTC 2018


I want to partition my OpenStack cloud so that:

- Project p1, p2, .., pn can use only compute nodes C1, C2, ... Cx
- Projects pn+1.. pm can use only compute nodes Cx+1 ... Cy

I read that CERN addressed this use case implementing the
ProjectsToAggregateFilter but, as far as I understand, this in-house
developments eventually wasn't pushed upstream.

So I am trying to rely on the  AggregateMultiTenancyIsolation filter to
create  2 host aggregates:

- the first one including C1, C2, ... Cx and with filter_tenant_id=p1, p2,
.., pn
- the second one including Cx+1 ... Cy and with filter_tenant_id=pn+1.. pm

But if I try to specify the long list of projects, I get:a "Value ... is
too long" error message [*].

I can see two workarounds for this problem:

1) Create an host aggregate per project:

HA1 including CA1, C2, ... Cx and with filter_tenant_id=p1
HA2 including CA1, C2, ... Cx and with filter_tenant_id=p2

2) Use the AggregateInstanceExtraSpecsFilter, creating two aggregates and
having each flavor visible only by a set of projects, and tagged with a
specific string that should match the value specified in the correspondent
host aggregate

Is this correct ? Can you see better options ?

Thanks, Massimo

# nova aggregate-set-metadata 1
ERROR (BadRequest): Invalid input for field/attribute filter_tenant_id.
is too long (HTTP 400) (Request-ID:
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-operators/attachments/20180206/8c490eba/attachment.html>

More information about the OpenStack-operators mailing list