Allow tenants to register a group that consists of a list of VM instances

Registered by Senhua Huang

This API allows a user to define a server group with an associated policy. The only policies currently supported are "affinity" and "anti-affinity". Instances are associated with a server group at boot time.

The API will also allow you to list groups and get group details. Group details will include a list of all servers currently in the group.

A version of the spec can be seen here, though beware that it may no longer reflect the exact state of the final implementation:
https://wiki.openstack.org/wiki/GroupApiExtension

Blueprint information

Status:
Complete
Approver:
Russell Bryant
Priority:
Medium
Drafter:
Senhua Huang
Direction:
Approved
Assignee:
Debo~ Dutta
Definition:
Approved
Series goal:
Accepted for icehouse
Implementation:
Implemented
Milestone target:
milestone icon 2014.1
Started by
Senhua Huang
Completed by
Russell Bryant

Related branches

Sprints

Whiteboard

Core sponsors: russellb

Gerrit topic: https://review.openstack.org/#q,topic:bp/instance-group-api-extension,n,z

Merged (Havana)
===========

Addressed by: https://review.openstack.org/28880
    Nova instance group DB support

Addressed by: https://review.openstack.org/32324
    Initial scheduler support for instance_groups

Addressed by: https://review.openstack.org/35788
    Add a new GroupAffinityFilter

Addressed by: https://review.openstack.org/38979
    Object support for instance groups

Merged (Icehouse)
============

Addressed by: https://review.openstack.org/77800
    Fix anti-affinity race condition on boot

Addressed by: https://review.openstack.org/77710
    Add add_members to InstanceGroup object

Addressed by: https://review.openstack.org/77711
    Add instance to instance group in compute.api

Addressed by: https://review.openstack.org/77786
    Add get_instances to InstanceGroup object

Addressed by: https://review.openstack.org/33956
    Initial scheduler support for instance_groups

Addressed by: https://review.openstack.org/62557
    Add REST API for instance group api extension

Superseded
========

Addressed by: https://review.openstack.org/31388 (superseded by https://review.openstack.org/32324)
    Conductor support for instance-groups

Addressed by: https://review.openstack.org/30028
    Add REST API for instance group api extension

Delayed till juno, due to v3 uncertainty --johnthetubaguy
==================
Addressed by: https://review.openstack.org/70533
    Add REST API for instance group extension for v3 api

Client change, delated until API merges --johnthetubauguy
========================
Addressed by: https://review.openstack.org/#/c/32904/
    Nova client support for instance-groups.

Looking at this post freeze...

Stuff we might have to defer:
======================

Addressed by: https://review.openstack.org/77239
    Instance groups: validate policy configuration

Addressed by: https://review.openstack.org/77437
    Instance groups: only display valid instances for policy members

Stuff that can become a bug fix:
=========================

Addressed by: https://review.openstack.org/78559
    Add add_policies and delete_policy to InstanceGroup object

Addressed by: https://review.openstack.org/79312
    Instance groups: use list comprehension for unsupported policy check

Addressed by: https://review.openstack.org/79410
    Add delete_member to InstanceGroup object

Addressed by: https://review.openstack.org/79295
    Fix input validation for V2 API server group API extension

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.