A newer version of this documentation is available.

View Latest

Couchbase Server Processes

    February 16, 2025
    + 12
    Couchbase Server spawns a number of different processes on each node. These processes vary in type and number depending on which Couchbase services are running on a particular node.

    Couchbase Server spawns processes from a set of binaries that get installed by the Couchbase installer. Some of these processes support the basic functions of Couchbase Server, and run on every node in the Couchbase cluster (Data). Other processes, however, support the various Couchbase services, and only run on the nodes that happen to run a particular Couchbase service (Data, Query, Index, Search, Analytics, and Eventing).

    The tables on this page list out all of the Couchbase processes, along with the specific Couchbase services that will invoke them. If a particular Couchbase service is not running on a node, then the processes associated with that service will not run.

    It’s important that each of these processes is allowed to run and access files on the nodes that are enabled for the Couchbase services that they support. Otherwise, Couchbase Server will not function properly. Depending on your security environment, you may need to explicitly approve these processes and their binary directories in your security policy.

    Linux

    The following table lists the Couchbase processes that run on Linux platforms.

    Table 1. Couchbase Processes on Linux
    Process Description Service Path

    cbft

    Couchbase Full-Text Search (FTS) service

    Search

    /opt/couchbase/bin/

    cbq-engine

    Couchbase Query service

    Query

    /opt/couchbase/bin/

    goport (5 copies)

    Process that acts as a bridge between ns_server (Erlang) and the other server components (cbq- engine, cbft, etc.) which are written in Go

    Query

    /opt/couchbase/bin/

    gosecrets

    Service that is used to encrypt the cluster configuration stored on disk

    Data

    /opt/couchbase/bin/

    goxdcr

    Cross Data Center Replication (XDCR) - replicates data from one cluster to another

    Data

    /opt/couchbase/bin/

    indexer

    Index service

    Index

    /opt/couchbase/bin/

    memcached

    Data service responsible for storing user data

    Data

    /opt/couchbase/bin/

    godu (2 copies)

    Utility in Go to get disk usage stats

    Data

    /opt/couchbase/bin/priv/

    projector

    Extracts secondary key from documents

    Data

    /opt/couchbase/bin/

    saslauthd-port

    Erlang port process (wrapper) used to talk to the saslauthd daemon for authentication purposes

    Data

    /opt/couchbase/bin/

    beam.smp (3 copies)

    Couchbase cluster manager run as Erlang virtual machines - babysitter, ns_server, and ns_couchdb

    Data

    /opt/couchbase/lib/erlang/erts-9.3.3.9/bin/

    epmd

    Erlang-specific process which acts as a name server for Erlang distribution

    Data

    /opt/couchbase/bin/

    cpu_sup (2 copies)

    Erlang-specific process used to collect CPU: 1 for ns_server VM and 1 for ns_couchdb VM

    Data

    /opt/couchbase/lib/erlang/lib/os_mon-2.2.14/priv/bin/

    memsup (2 copies)

    Erlang-specific process used to collect memory usage: 1 for ns_server VM and 1 for ns_couchdb VM

    Data

    /opt/couchbase/lib/erlang/lib/os_mon-2.2.14/priv/bin/

    inet_gethost (8 copies)

    Built-in Erlang port process that is used to perform name service lookup

    Data

    /opt/couchbase/lib/erlang/erts-5.10.4.0.0.1/bin/

    portsigar

    Open source tool sigar that is used to collect system information

    Data

    /opt/couchbase/bin/

    sh -s disksup (2 copies)

    Erlang-specific process that is used to supervise the available disk space: 1 for ns_server VM and 1 for ns_couchdb VM

    Data

    /opt/couchbase/lib/erlang/lib/os_mon-2.2.14/ebin/

    sh -s ns_disksup

    Wrapper for disksup which also collects information about mounted drives

    Data

    /opt/couchbase/lib/ns_server/erlang/lib/ns_server/ebin/

    cbcollect_info

    Utility used to collect Couchbase server logs (will be seen only during log collection)

    Data

    /opt/couchbase/bin/

    eventing-producer (1 copy)

    Eventing supervisor service (one instance per node)

    Eventing

    /opt/couchbase/bin/

    eventing-consumer (n copies)

    Eventing worker (multiple instances per node). Instance count is configured in UI.

    Eventing

    /opt/couchbase/bin/

    java (Analytics Driver)

    JVM running the Analytics NC and CC

    Analytics

    /opt/couchbase/lib/cbas/runtime/bin

    cbas

    Go-wrapper that communicates with ns_server and manages the lifecycle of the Analytics Driver

    Analytics

    /opt/couchbase/bin/