grizzly: new scheduler filter for Multi-tenancy isolation with aggregates

Bug #1111114 reported by Tom Fifield
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
openstack-manuals
Fix Released
Medium
Tom Fifield

Bug Description

If https://review.openstack.org/#/c/20565 is merged, it will introduce a new scheduler filter in nova

A new scheduler filter that allows the creation of instances from
specific tenants in selected aggregates.
With this filter is possible to isolate tenants in a specific set
of compute nodes (aggregates).

If a host is in an aggregate that has the metadata key
"filter_tenant_id" it can only create instances from that tenant(s).
A host can be in different aggregates.
If a host doesn't belong to an aggregate with the metadata key
"filter_tenant_id" it can create instances from all tenants.

The scheduler documentation should be updated to include this new filter

https://blueprints.launchpad.net/nova/+spec/multi-tenancy-aggregates:

The goal is to schedule instances from specific tenants to selected aggregate(s).

In different cases is necessary to isolate instances from specific tenant(s). This means that they can only be created in a set of hosts. To define the set of hosts we can use "aggregates".

The idea is to create a new scheduler filter "AggregateMultiTenancyIsolation" that handles this use-case:

If an aggregate has the metadata filter_tenant_id=<TENANT_ID> all hosts that are in the aggregate can only create instances from that tenant_id.
An host can belong to different aggregates. So, a host can create instances from different tenants if the different aggregates have defined the metadata filter_tenant_id=<TENANT_ID>.

If a host doesn't belongs to any aggregate it can create instances from all tenants. Also, if a host belongs to aggregates that don't define the metadata filter_tenant_id it can create instances from all tenants.

Using Availability Zones can't solve this problem because a host can only be in one availability zone, also the filter "AggregateInstanceExtraSpecsFilter" doesn't help because it requires creating new and exclusive flavors for each tenant that needs isolation.

Tags: nova
Tom Fifield (fifieldt)
Changed in openstack-manuals:
status: New → Confirmed
importance: Undecided → Medium
milestone: none → grizzly
tags: added: nova
Revision history for this message
Tom Fifield (fifieldt) wrote :

patch in review

Changed in openstack-manuals:
status: Confirmed → New
importance: Medium → Undecided
Tom Fifield (fifieldt)
Changed in openstack-manuals:
status: New → Confirmed
importance: Undecided → Medium
Revision history for this message
Tom Fifield (fifieldt) wrote :
Changed in openstack-manuals:
status: Confirmed → In Progress
assignee: nobody → Tom Fifield (fifieldt)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to openstack-manuals (master)

Fix proposed to branch: master
Review: https://review.openstack.org/24050

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to openstack-manuals (master)

Reviewed: https://review.openstack.org/24050
Committed: http://github.com/openstack/openstack-manuals/commit/0f8eb64f33dd0589060056173f30d69d85ee631e
Submitter: Jenkins
Branch: master

commit 0f8eb64f33dd0589060056173f30d69d85ee631e
Author: Tom Fifield <email address hidden>
Date: Mon Mar 11 21:37:36 2013 +1100

    Add docs for AggregateMultiTenancyIsolation

    fixes bug 1111114

    This is a new filter in Grizzly that isolates tenants to
    specific aggregates - a simple section is added to the
    scheduler docs.

    patch2 fixes typos

    Change-Id: I0c0028a584c3b46becb4ebb06d7df0be2f17ac1c

Changed in openstack-manuals:
status: In Progress → Fix Released
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.