Upgrading with XDCR
When XDCR (Cross Data Center Replication) is implemented, the upgrade process depends on the XDCR scenario.
The xmem replication mode performs replication on a destination cluster with the memcached protocol. This is the default mode for Couchbase Server replications. The capi mode performs replications over a REST protocol.
- xmem - only Couchbase Servers 2.2 and later support it.
- capi - both Couchbase Servers 2.2 and earlier support it.
The following prerequisites need to be considered:
- Network port 11210 needs to be open between nodes for xmem mode of replication to work.
- In general, delete the replication, complete the upgrade, then recreate the replication.
- When upgrading Couchbase Server, make sure that both the source and destination clusters support the desired replication mode.
- To use XDCR data encryption with Secure Socket Layer (SSL), all nodes must be upgraded to at least Couchbase Server 2.5 Enterprise Edition.
Upgrade scenarios
- Both source and destination clusters are pre-2.2 and both are upgrading to pre-2.2 versions.
- This scenario is supported since both clusters use capi.
- Both source and destination clusters are pre-2.2 and the destination is upgrading to 2.2.
- This is a safe upgrade path since the source cluster communicates via capi to the destination cluster.
- The source cluster is upgrading to 2.2 or later and the destination is pre-2.2.
- This is a safe upgrade path because the source cluster can communicate via capi or xmem to the destination cluster.
- Both source and destination clusters are upgrading from pre-2.2 to 2.2.
- This is a safe upgrade because the XDCR protocol remains the same (capi).
- The source cluster is upgrading from pre–2.2 to 2.2 or later and the destination cluster is Elasticsearch.
- Since the source cluster must use capi for
replication:
- Delete all XDCR replications on your source cluster.
- Upgrade the source cluster to 2.2 or later.
- Re-create the XDCR replications using Version 1 for the XDCR protocol. Version 1 is capi replication.
- Both source and destination clusters are upgraded from pre-2.2 to 2.5 or later.
- This is
not a safe upgrade path because the cluster upgrades are not synchronized. If the source
upgrade completes prior to destination upgrade, incorrect data replication and failures in
conflict resolution can occur.
- Delete all XDCR replications on your source cluster.
- Upgrade the source cluster to 2.5 or later.
- Upgrade the destination cluster to 2.5 or later.
- Re-create the XDCR replications using Version 2 for the XDCR protocol. Version 2 is xmem replication.