You are viewing the documentation for a prerelease version.

View Latest

Server Groups API

The Server Groups REST API manages Server Group Awareness. This enables logical server-groupings to be defined across the cluster: each group may be physically located on a specific rack or availability zone.

Description

Server Group Awareness, which is only available in Couchbase Server Enterprise Edition, provides enhanced availability. Specifically, it protects a cluster from large-scale infrastructure failure, through the definition of groups. Each group is created by an appropriately authorized administrator, and specified to contain a subset of the nodes within a Couchbase Cluster. Following group-definition and rebalance, the active vBuckets for any defined bucket are located on one group, while the corresponding replicas are located on another group. This allows Group Failover to be enabled, so that if an entire group goes offline, its replica vBuckets, which remain available on another group, can be automatically promoted to active status.

For a complete conceptual overview, see Server Group Awareness.

Server Group Awareness is supported by the Server Groups REST API, whose capabilites are summarized below.

Table 1. Server group endpoints
HTTP method URI path Description Required Role

GET

/pools/default/serverGroups

Retrieves information about the current server-group configuration.

Full, Cluster

POST

/pools/default/serverGroups

Creates and uniquely names a server group.

Full, Cluster

POST

/pools/default/serverGroups/<:uuid>/addNode

Adds a node to the cluster, and simultaneously assigns it to an existing server group.

Full, Cluster

PUT

/pools/default/serverGroups/<:uuid>

Renames a server group.

Full, Cluster

PUT

/pools/default/serverGroups?rev=<:number>

Updates the assignment of nodes to server groups.

Full, Cluster

DELETE

/pools/default/serverGroups/<:uuid>

Deletes a specific server group.

Full, Cluster

For information on Couchbase Role-Based Access Control, see Roles.