Cluster Scaling

    +
    Clusters can be multi-dimensionally scaled by adding or removing service instances and whole services, and by adjusting the size of service instances.

    This page walks you through multi-dimensional cluster scaling. It includes information about cluster services, rebalancing, statuses, events, and jobs.

    The dimensions of multi-dimensional scaling are:

    1. Adding and removing service instances

    2. Increasing and decreasing the size of service instances

    3. Adding and removing whole services

    Cluster Services

    Couchbase clusters comprise multiple independent services. The capacity of a cluster is measured by the individual capacities of each of the services that run on the cluster. Scaling a cluster means scaling the individual capacities of each of the cluster’s constituent services. Services are set up on a per-node basis. Each node runs one instance of a service.

    The capacity of an individual service is determined by multiplying the following factors:

    • The number of instances (nodes) that make up a service

    • The size of those instances (VM instance type and storage)

    Each of these factors can be independently scaled. Adding additional instances to a service is known as scaling out. Increasing the size of a service’s instances is known as scaling up. Removing instances is known as scaling in. Reducing the size of instances is known as scaling down. These scaling techniques, together with the ability to add and remove whole services within a cluster, enable multi-dimensional scaling.

    Rebalance

    All types of cluster scaling result in the addition or removal of nodes from a cluster. Even changing the size of service instances results in new nodes being added to the cluster, since the underlying virtual machines are swapped out for new ones. After performing any of these procedures, the cluster will rebalance to accommodate the new number of active member nodes.

    Cluster rebalance is a process that is required for redistributing data and indexes among available nodes whenever nodes have been added or removed. During rebalance, the cluster continues to service requests for data while the cluster map is correspondingly updated and distributed to clients.

    Couchbase Server is designed to maintain consistent availability and performance during rebalance. See the rebalance documentation to familiarize yourself with how each service behaves during a rebalance, so you can assess the impacts of this process on your deployments accordingly.

    Cluster Scaling Statuses

    When you create, modify, or delete a cluster, from the main navigation, you can click Clusters or Projects and open your project, and view the status of your cluster. For example, Deploying, Normal, or Unhealthy, or Destroying.

    When you click an individual cluster to open it during the creation process, you can view a deployment message that the new cluster is being configured. When a cluster has finished deploying, you can view its status on all of its cluster pages.

    Color-coded Cluster Statuses

    The following color-coded statuses are applicable to your cluster:

    Status Color Description

    DEPLOYING

    Amber

    A cluster is initially deploying or redeploying.

    NORMAL

    Green

    A cluster is operating normally.

    The following apply to a normal cluster:

    • Deployed

    • Scaling

    • Upgrading

    • Peering

    • Rebalancing

    • Destroying (deleting the cluster)

    • Needs Redeployment

    UNHEALTHY

    Red

    A cluster is not healthy.

    One of the following cluster actions was not successful:

    • Deployment

    • Scale

    • Upgrade

    • Rebalance

    • Peering

    • Destroy (delete)

    When a cluster deletion or deployment has not been successful, try the following:

    • Redelete your cluster

    • Recreate your cluster

    • Contact Couchbase support

    Click an individual cluster and view detailed statistics for it on the Metrics dashboard. See Metrics Dashboard.

    Cluster Events

    You can click the Activity tab in the main navigation to view the corresponding summary event for your cluster. For example, Cluster Deployment Requested and Cluster Deployment Completed, or Cluster Deletion Requested and Cluster Deletion Completed.

    Clicking on the Summary link for the cluster opens a fly-out that includes details about the selected event. For more information about cluster events, see Activity Explorer.

    Cluster Running Jobs

    From the Clusters or Projects tab, when you click an individual cluster that might be scaling, you can view the following in the jobs panel that are currently in progress and running:

    • Scaling

    • Recovering

    • Upgrading

    • Backing up

    • Restoring

    • Importing

    For every cluster, you can view the following in the jobs panel for each job running:

    • Job name

    • Current step in progress

    • Job start time

    • Current completion percentage

    When there are multiple jobs running on a cluster, you can scroll through each one. When a job successfully completes, or fails and does not complete, it is removed from the jobs panel. When no jobs are running, the jobs panel is not displayed.

    See Also

    To add and remove nodes on a cluster, or increase and decrease the size of existing nodes, see Modify the Cluster Configuration. To add a new service to a cluster, see Add a Service. To remove a service from a cluster, see Remove a Service.