Couchbase Server Processes

      +
      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 (2 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/

      Windows

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

      Table 2. Couchbase Processes on Windows
      Process Description Service Path

      backup.exe

      Backup application for Couchbase data

      Backup

      C:\Program Files\Couchbase\Server\bin

      cbas.exe

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

      Analytics

      C:\Program Files\Couchbase\Server\bin

      cbcollect_info.exe

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

      Data

      C:\Program Files\Couchbase\Server\bin

      cbft.exe

      Couchbase Full-Text Search (FTS) service

      Search

      C:\Program Files\Couchbase\Server\bin

      cbq-engine.exe

      Couchbase Query service

      Query

      C:\Program Files\Couchbase\Server\bin

      epmd.exe

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

      Data

      C:\Program Files\Couchbase\Server\erts-x.x.x.x\bin

      erl.exe

      Erlang process used by the name server.

      Data

      C:\Program Files\Couchbase\Server\erts-x.x.x.x\bin

      erlsrv.exe

      Used to start the Erlang emulator as a Windows process.

      Data

      C:\Program Files\Couchbase\Server\erts-x.x.x.x\bin

      eventing-consumer.exe

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

      Eventing

      C:\Program Files\Couchbase\Server\bin

      eventing-producer.exe

      Eventing supervisor service (one instance per node)

      Eventing

      C:\Program Files\Couchbase\Server\bin

      goport.exe

      Process that acts as a bridge between ns_server (Erlang) and the other server components (cbq- engine.exe, cbft.exe, etc.)

      Query

      C:\Program Files\Couchbase\Server\bin

      gosecrets.exe

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

      Data

      C:\Program Files\Couchbase\Server\bin

      goxdcr.exe

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

      Data

      C:\Program Files\Couchbase\Server\bin

      indexer.exe

      Index service

      Index

      C:\Program Files\Couchbase\Server\bin

      godu.exe

      Utility in Go to get disk usage stats

      Data

      C:\Program Files\Couchbase\Server\bin\priv

      inet_gethost.exe

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

      Data

      C:\Program Files\Couchbase\Server\erts-x.x.x.x\bin

      java.exe (Analytics Driver)

      JVM running the Analytics NC and CC

      Analytics

      C:\Program Files\Couchbase\Server\bin

      memcached.exe

      Data service responsible for storing user data

      Data

      C:\Program Files\Couchbase\Server\bin

      projector.exe

      Extracts secondary key from documents

      Data

      C:\Program Files\Couchbase\Server\bin

      prometheus.exe

      Engine used Couchbase for creating metrics.

      Data

      C:\Program Files\Couchbase\Server\bin

      saslauthd-port.exe

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

      Data

      C:\Program Files\Couchbase\Server\bin

      sigar_port.exe

      Open source tool sigar that is used to collect system information

      Data

      C:\Program Files\Couchbase\Server\bin