# openstack.compute.v2.server_group

## The ServerGroup Class

The `ServerGroup` class inherits from `Resource`.

class openstack.compute.v2.server_group.ServerGroup(_synchronized=False, connection=None, **attrs)

  The base resource

  Parameters:

    - _synchronized (bool) – This is not intended to be used directly. See `new()` and `existing()`.

    - connection (openstack.connection.Connection) – Reference to the Connection being used. Defaults to None to allow Resource objects to be used without an active Connection, such as in unit tests. Use of `self._connection` in Resource code should protect itself with a check for None.

  resource_key = 'server_group'

    Singular form of key for resource.

  resources_key = 'server_groups'

    Plural form of key for resource.

  base_path = '/os-server-groups'

    The base part of the URI for this resource.

  allow_create = True

    Allow create operation for this resource.

  allow_fetch = True

    Allow get operation for this resource.

  allow_delete = True

    Allow delete operation for this resource.

  allow_list = True

    Allow list operation for this resource.

  name

    A name identifying the server group

  policies

    The list of policies supported by the server group (till 2.63)

  policy

    The policy field represents the name of the policy (from 2.64)

  member_ids

    The list of members in the server group

  metadata

    The metadata associated with the server group. This is always empty and only used for preserving compatibility.

  project_id

    The project ID who owns the server group.

  rules

    The rules field, which is a dict, can be applied to the policy. Currently, only the max_server_per_host rule is supported for the anti-affinity policy. The max_server_per_host rule allows specifying how many members of the anti-affinity group can reside on the same compute host. If not specified, only one member from the same anti-affinity group can reside on a given host.

  user_id

    The user ID who owns the server group

  create(session, prepend_key=True, base_path=None, **params)

    Create a remote resource based on this instance.

    Parameters:

      - session (`Adapter`) – The session to use for making this request.

      - prepend_key – A boolean indicating whether the resource_key should be prepended in a resource creation request. Default to True.

      - base_path (str) – Base part of the URI for creating resources, if different from `base_path`.

      - params (dict) – Additional params to pass.

    Returns:

      This `Resource` instance.

    Raises:

      `MethodNotSupported` if `Resource.allow_create` is not set to `True`.

this page last updated: 2026-01-16 23:06:19

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.