cinder.objects.cluster module

class Cluster(context: Any = None, **kwargs: Any)

Bases: CinderPersistentObject, CinderObject, CinderComparableObject

Cluster Versioned Object.

Method get_by_id supports as additional named arguments:
  • get_services: If we want to load all services from this cluster.

  • services_summary: If we want to load num_nodes and num_down_nodes

    fields.

  • is_up: Boolean value to filter based on the cluster’s up status.

  • read_deleted: Filtering based on delete status. Default value “no”.

  • Any other cluster field will be used as a filter.

OPTIONAL_FIELDS = ('num_hosts', 'num_down_hosts', 'services')
VERSION: str = '1.1'
property active_backend_id: Any
property binary: Any
create()
property created_at: Any
property deleted: Any
property deleted_at: Any
destroy()
property disabled: Any
property disabled_reason: Any
fields: MutableMapping[str, obj_fields.Field[Any]] = {'active_backend_id': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'binary': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'created_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'deleted': Boolean(default=False,nullable=True), 'deleted_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'disabled': Boolean(default=False,nullable=True), 'disabled_reason': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'frozen': Boolean(default=False,nullable=False), 'id': Integer(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'last_heartbeat': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'name': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'num_down_hosts': Integer(default=0,nullable=False), 'num_hosts': Integer(default=0,nullable=False), 'replication_status': ReplicationStatus(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True,valid_values=('error', 'enabled', 'disabled', 'not-capable', 'failover-error', 'failing-over', 'failed-over', 'enabling', 'disabling')), 'services': Object(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'updated_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True)}
property frozen: Any
property id: Any
property is_up
property last_heartbeat: Any
model

alias of Cluster

property name: Any
property num_down_hosts: Any
property num_hosts: Any
obj_load_attr(attrname)

Lazy load services attribute.

property replication_status: Any
reset_service_replication()

Reset service replication flags on promotion.

When an admin promotes a cluster, each service member requires an update to maintain database consistency.

save()

Save the changed fields back to the store.

This is optional for subclasses, but is presented here in the base class for consistency among those that do.

property services: Any
property updated_at: Any
class ClusterList(*args: Any, **kwargs: Any)

Bases: ObjectListBase, CinderObject

VERSION: str = '1.0'
fields: MutableMapping[str, obj_fields.Field[Any]] = {'objects': List(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False)}
classmethod get_all(context, is_up=None, get_services=False, services_summary=False, read_deleted='no', **filters)

Get all clusters that match the criteria.

Parameters:
  • is_up – Boolean value to filter based on the cluster’s up status.

  • get_services – If we want to load all services from this cluster.

  • services_summary – If we want to load num_nodes and num_down_nodes fields.

  • read_deleted – Filtering based on delete status. Default value is “no”.

  • filters – Field based filters in the form of key/value.

property objects: Any