Search:

Search all manuals
Search this manual
Manual
Membase Manual 1.7
Additional Resources
Community Wiki
Community Forums
Couchbase SDKs
Parent Section
4.5 Membase Best Practices
Chapter Sections
Chapters

4.5.3. Adding and Removing Nodes

Growing/Shrinking You Cluster

Over the lifetime of your Membase cluster, there will very likely be cause to add or remove nodes. This can be based upon a variety of factors including RAM/disk capacity and available network bandwidth. The process of adding or removing nodes from your Membase cluster consists of a rebalancing process which at its core is meant to provide continuous availability of data.

The same process can be used to perform software upgrades and hardware refreshes by removing a node, making changes and then rebalancing it back into the cluster. If possible, for these operations it is a best practice to add the additional nodes first before removing nodes.

Growing your cluster

There are a few metrics off of which to base your decision to grow a Membase cluster:

1. Increasing RAM capacity. Arguably the single most important component in a Membase cluster is the amount of available RAM. While filling up available RAM is not necessarily cause to grow a cluster, it should certainly be taken into consideration.

Shrinking your cluster

Choosing to shrink a Membase cluster is a more subjective decision. It is usually based upon cost considerations and/or not needing as large a cluster to support the load requirements of your application.

When deciding to shrink a cluster, it is extremely important to ensure you have enough capacity in the remaining nodes to support your dataset as well as your application load.

It is also not recommended to remove multiple nodes at once, rather one at a time to understand the impact on the cluster as a whole.

It is recommended that you remove a node rather than fail it over. When a node fails and is not coming back to the cluster, the failover functionality will promote its replica vBuckets become active immediately. If a healthy node is failed over, there might be some data loss for the replication data that was in flight during that operation. Using the remove functionality will ensure that all data is properly replicated and continuously available.

Rebalancing

Once you decide to add or remove nodes to your Membase cluster, there are a few things to take into consideration: