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.
| Process | Description | Service | Path |
|---|---|---|---|
|
Backup command-line application for Couchbase data |
Backup |
|
|
Couchbase Cluster Manager run as Erlang virtual machines - |
Data |
|
|
Go-wrapper that communicates with |
Analytics |
|
|
Utility that collects Couchbase Server logs (only seen during log collection) |
Data |
|
|
Couchbase Full-Text Search (FTS) service |
Search |
|
|
Couchbase Query Service |
Query |
|
|
Erlang-specific process used to collect CPU: 1 for |
Data |
|
|
Eventing worker (multiple instances per node which you configure in Couchbase Server Web Control Panel) |
Eventing |
|
|
Eventing supervisor service (1 instance per node) |
Eventing |
|
|
Erlang-specific name server process for Erlang distribution |
Data |
|
|
Go utility that gets disk usage stats |
Data |
|
|
Process that acts as a bridge between |
Query |
|
|
Service that’s used to encrypt the cluster configuration stored on disk |
Data |
|
|
Cross datacenter replication (XDCR) - replicates data from 1 cluster to another |
Data |
|
|
Index Service |
Index |
|
|
Built-in Erlang port process that performs name service lookups |
Data |
|
|
JVM running the Analytics NC and CC |
Analytics |
|
|
JavaScript UDF evaluator for Query |
Query |
|
|
Data service responsible for storing user data |
Data |
|
|
Two Erlang-specific processes used to collect memory usage: 1 for |
Data |
|
|
Sigar is an open source tool that collects system information |
Data |
|
|
Extracts secondary key from documents |
Data |
|
|
Embedded Prometheus exporter |
Core |
|
|
Erlang port process (wrapper) that talks to the |
Data |
|
|
Two Erlang-specific processes that supervise the available disk space, 1 for |
Data |
|
|
Wrapper for |
Data |
|
Windows
The following table lists the Couchbase processes that run on the Windows platforms.
| Process | Description | Service | Path |
|---|---|---|---|
|
Backup application for Couchbase data |
Backup |
|
|
Go-wrapper that communicates with |
Analytics |
|
|
Utility that collects Couchbase Server logs (only seen during log collection) |
Data |
|
|
Couchbase Full-Text Search (FTS) service |
Search |
|
|
Couchbase Query Service |
Query |
|
|
Erlang-specific process which acts as a name server for Erlang distribution |
Data |
|
|
Erlang process used by the name server. |
Data |
|
|
Used to start the Erlang emulator as a Windows process |
Data |
|
|
Eventing worker (multiple instances per node). You set the number of instances via the Couchbase Server Web Console |
Eventing |
|
|
Eventing supervisor service (1 instance per node) |
Eventing |
|
|
Go utility to get disk usage stats |
Data |
|
|
Process that acts as a bridge between |
Query |
|
|
Service that’s used to encrypt the cluster configuration stored on disk |
Data |
|
|
Cross datacenter replication (XDCR) - replicates data from 1 cluster to another |
Data |
|
|
Index Service |
Index |
|
|
Built-in Erlang port process that performs name service lookups |
Data |
|
|
JVM running the Analytics NC and CC |
Analytics |
|
|
Data service responsible for storing user data |
Data |
|
|
Extracts secondary key from documents |
Data |
|
|
Engine used Couchbase for creating metrics |
Data |
|
|
Erlang port process (wrapper) that talks to the |
Data |
|
|
Sigar is an open source tool that collects system information |
Data |
|