A newer version of this documentation is available.

View Latest

Enabling Couchbase Server Services

  • reference
    Couchbase Server services are enabled when adding or joining a node to a cluster.


    Adding a node syntax:

    curl -u [admin]:[password]
      -d "hostname=[IPaddress]&user=[admin]&password=[password]"
      -d "services=[kv | index | n1ql | fts | cbas | eventing]"

    Joining a node to a cluster:

    curl -u [admin]:[password] -d clusterMemberHostIp=[ip-address]
      -d clusterMemberPort=[port]
      -d user=[admin] -d password=[password]
      -d "services=[kv | index | n1ql | fts | cbas | eventing]"


    This command is used to add a node to a cluster and specify the service. If a service is not specified, the data service (kv) will be added by default.

    Couchbase Server services can only be enabled via the REST API when adding a server to an existing cluster. To initialize a cluster (with the first node) with any Couchbase Server service other than the default data service (kv), use the Couchbase Web Console.

    When enabling services, ensure that you set the appropriate memory quota parameters as follows:

    curl -X POST -u Administrator:password \ \
      -d 'memoryQuota=256' \
      -d 'indexMemoryQuota=256' \
      -d 'ftsMemoryQuota=512' \
      -d 'cbasMemoryQuota=1048' \
      -d 'eventingMemoryQuota=512'

    HTTP method and URI

    POST /controller/addNode
    POST /node/controller/doJoinCluster


    Adding a node:

    curl -u Administrator:password \ \
      -d 'hostname=' \
      -d 'services=index'

    Joining a node to a cluster:

    curl -u Administrator:password -d clusterMemberHostIp= \
      -d 'clusterMemberPort=8091' \
      -d 'user=admin' -d 'password=password' \ \
      -d 'services=index'