A newer version of this documentation is available.

View Latest

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 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. They 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 invoke them. If a particular Couchbase service is not running on a node, then the processes associated with that service cannot run.

      Configure any security environment to allow the Couchbase service processes to run and access files on your nodes. Depending on your security environment, you may need to explicitly approve these processes and their binary directories in your security policy. Otherwise, Couchbase Server cannot function properly.

      The minor version numbers of the Erlang/OTP subcomponents (which are under the erlang directory in the paths listed in the tables) can change between Couchbase Server maintenance releases. When possible, add the parent directories of these components to any allow lists in security systems installed on your nodes. For example, on Linux-based nodes, add the pattern /opt/couchbase/lib/erlang/** to allow lists. Adding these patterns limits the updates you may need to make to your security policies for Couchbase Server maintenance releases.

      Linux

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

      Table 1. Couchbase Processes on Linux
      Process Description Service Path

      backup

      Backup command-line application for Couchbase data

      Backup

      /opt/couchbase/bin/backup

      beam.smp (3 copies)

      Couchbase Cluster Manager run as Erlang virtual machines - babysitter, ns_server, and ns_couchdb

      Data

      /opt/couchbase/lib/erlang/erts-13.2.2.3/bin/beam.smp

      cbas

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

      Analytics

      /opt/couchbase/bin/

      cbcollect_info

      Utility that collects Couchbase Server logs (only seen during log collection)

      Data

      /opt/couchbase/bin/

      cbft

      Couchbase Full-Text Search (FTS) service

      Search

      /opt/couchbase/bin/

      cbq-engine

      Couchbase Query Service

      Query

      /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.8.2/priv/bin/cpu_sup

      eventing-consumer (n copies)

      Eventing worker (multiple instances per node which you configure in Couchbase Server Web Control Panel)

      Eventing

      /opt/couchbase/bin/

      eventing-producer (1 copy)

      Eventing supervisor service (1 instance per node)

      Eventing

      /opt/couchbase/bin/

      epmd

      Erlang-specific name server process for Erlang distribution

      Data

      /opt/couchbase/bin/

      godu

      Go utility that gets disk usage stats

      Data

      /opt/couchbase/bin/priv/godu

      goport (number of copies varies)

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

      Query

      /opt/couchbase/bin/

      gosecrets

      Service that’s used to encrypt the cluster configuration stored on disk

      Data

      /opt/couchbase/bin/

      goxdcr

      Cross datacenter replication (XDCR) - replicates data from 1 cluster to another

      Data

      /opt/couchbase/bin/

      indexer

      Index Service

      Index

      /opt/couchbase/bin/

      inet_gethost (2 copies)

      Built-in Erlang port process that performs name service lookups

      Data

      /opt/couchbase/lib/erlang/erts-13.2.2.3/bin/inet_gethost

      java (Analytics Driver)

      JVM running the Analytics NC and CC

      Analytics

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

      js-evaluator

      JavaScript UDF evaluator for Query

      Query

      /opt/couchbase/bin/js-evaluator

      memcached

      Data service responsible for storing user data

      Data

      /opt/couchbase/bin/

      memsup (2 copies)

      Two Erlang-specific processes 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.8.2/priv/bin/memsup

      portsigar

      Sigar is an open source tool that collects system information

      Data

      /opt/couchbase/bin/

      projector

      Extracts secondary key from documents

      Data

      /opt/couchbase/bin/

      prometheus

      Embedded Prometheus exporter

      Core

      /opt/couchbase/bin/prometheus

      saslauthd-port

      Erlang port process (wrapper) that talks to the saslauthd daemon for authentication

      Data

      /opt/couchbase/bin/

      sh -s disksup (2 copies)

      Two Erlang-specific processes that 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.8.2/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/

      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 that collects Couchbase Server logs (only seen 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-13.2.2.3\bin

      erl.exe

      Erlang process used by the name server.

      Data

      C:\Program Files\Couchbase\Server\erts-13.2.2.3\bin

      erlsrv.exe

      Used to start the Erlang emulator as a Windows process

      Data

      C:\Program Files\Couchbase\Server\erts-13.2.2.3\bin

      eventing-consumer.exe

      Eventing worker (multiple instances per node). You set the number of instances via the Couchbase Server Web Console

      Eventing

      C:\Program Files\Couchbase\Server\bin

      eventing-producer.exe

      Eventing supervisor service (1 instance per node)

      Eventing

      C:\Program Files\Couchbase\Server\bin

      godu.exe

      Go utility to get disk usage stats

      Data

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

      goport.exe

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

      Query

      C:\Program Files\Couchbase\Server\bin

      gosecrets.exe

      Service that’s used to encrypt the cluster configuration stored on disk

      Data

      C:\Program Files\Couchbase\Server\bin

      goxdcr.exe

      Cross datacenter replication (XDCR) - replicates data from 1 cluster to another

      Data

      C:\Program Files\Couchbase\Server\bin

      indexer.exe

      Index Service

      Index

      C:\Program Files\Couchbase\Server\bin

      inet_gethost.exe

      Built-in Erlang port process that performs name service lookups

      Data

      C:\Program Files\Couchbase\Server\erts-13.2.2.3\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) that talks to the saslauthd daemon for authentication

      Data

      C:\Program Files\Couchbase\Server\bin

      sigar_port.exe

      Sigar is an open source tool that collects system information

      Data

      C:\Program Files\Couchbase\Server\bin