Installation steps

Gluesync NoSQL to NoSQL for Couchbase Server

Prerequisites

In order to have Gluesync working on your Couchbase Server instance you will need to have:

  • valid user credentials with permissions of reading, writing to the target bucket

If you’re considering running Gluesync on a Couchbase Capella DBaaS, please consider also looking at the specific section Deploying in a Capella DBaaS cluster here below in that page.

Basic configuration example

This module can be customized by using a configuration file, in JSON format. The file name to use must be specified as parameter when launching the app, with the -f or --file tokens. The file should be composed by union of common configuration file (see here Installation steps) and source/destination specific configuration:

{
  ...
  "couchbase": {
    "certificatesPath": "/path/to/certs/dir/cert.pem",
    "timeoutSeconds": 60,
    "indexReplicaCount": 0,
    "useCollections": false
  }
}

Couchbase specific configurations are listed under the couchbase property:

  • certificatesPath (optional): the path to the certificates that need to be used when connecting to Couchbase Server instance using a secure connection. If omitted, no certificates are used;

  • timeoutSeconds (optional): number of seconds to set as timeout for operations involving communication with Couchbase server.

  • indexReplicaCount (optional default to 0): indicates the number of index replicas that will be generated by Gluesync. We suggest to size that number calculating it as number-of-index-node -1. For example 3 node index means a suggested replica to 2. For more details please see Couchbase doc.

  • useCollections (optional): defaults to false, tells Gluesync to create and use a Scopes & Collections from Couchbase Server per each of your source tables instead of using the default collection. Default scope is _default. This only applies on Couchbase version 7.0 and above.

Deploying in a Capella DBaaS cluster

Gluesync has been certified by the vendor in order to work and perform live replications together with a Couchbase Capella clusters. In order to enstablish a connection to a Capella Cluster you just need to have:

  • valid credentials for an admin user able to connect to the destination bucket;

  • valid .pem certificate file;

  • the host name of your Capella instance, for example: cb.instancereferencename.cloud.couchbase.com

If you’re considering running Gluesync together with Capella App Service please contact our premium support.

Looking for using Scopes & Collections?

From Couchbase Server version 7.0 and above it is possible to start using Scopes & Collection feature. For more details about that feature you can have a look at this link from the official Couchbase documentation page.

Gluesync supports both Scopes & Collections in that way, when useCollections is set to true:

  • automatically creates a new Collection per each one of your source tables if none with same name is found;

  • make use of existing collections where Collection name matches your source table;

  • if your source schema is not set it defaults on using _default scope.

when useCollections is set to false:

  • every each document automatically default to default collection and _default scope when running under Couchbase 7.0 or above;

  • every each document automatically belongs to the target designed bucket when running under Couchbase 6.6.X or elder.

Product team is working on extending the support of multiple Scopes under Multi-tenancy environment, for example when sourcing from Schema Containers on RDMBS. If you’d like to get an update regarding this feature support or share your feedback in order to rise the priority drop us a line writing to hello@molo17.com.

Troubleshooting

Here following the list of common errors.

  • ERROR TIMEOUT: BUCKET_OPEN_IN_PROGRESS: You might either have specified a wrong server port for your Couchbase connection or this is blocked by the firewall.