System Resource Requirements

    Although resource requirements will largely depend on the size and resource demands of your Couchbase deployment, there are some minimum and recommended specifications that you should follow.
    Minimum Specifications* Recommended Specifications**


    2 GHz dual core x86_64 CPU supporting SSE4.2

    3 GHz quad core x86_64 CPU supporting SSE4.2 and above

    3 GHz six core x86_64 CPU supporting SSE4.2 when using Cross Datacenter Replication (XDCR) and Views


    4 GB (physical)

    16 GB (physical) and above

    Storage (disk space)

    8 GB (block-based; HDD, SSD, EBS, iSCSI)

    Network file systems such as CIFS and NFS are not supported.

    16 GB and above (block-based; HDD, SSD, EBS, iSCSI)

    Network file systems such as CIFS and NFS are not supported.

    *You can reduce the CPU and RAM resources below the Minimum Specifications for development and testing purposes. Resources can be as low as 1 GB of free RAM beyond operating system requirements, and a single CPU core. However, you must adhere to the Minimum Specifications for production.

    **The Recommended Specifications don’t take into account your intended workload. You should follow the sizing guidelines when determining system specifications for your Couchbase Server deployment.

    Clock Source on Linux

    The Query service uses the OS monotonic clock for profiling and network timeout purposes.

    The Linux kernel uses the Clock Source to obtain the current clock value and this information is stored in /sys/devices/system/clocksource/clocksource0/current_clocksource. There are several clock sources (TSC, XEN, and others), which are used depending on the hardware clock capabilities, and the OS installation. The XEN source, which is seen to be the default on AWS setups, can use up to 25% of all available CPU time to obtain the current timestamp. The TSC clock source, on the other hand, incurs very little CPU cost. We recommend changing the clock source to TSC if it is set to anything else.

    Check the clock source on your Linux OS using the following command:

    cat /sys/devices/system/clocksource/clocksource0/current_clocksource

    + Change the clock source using the following commands:

    echo tsc > /sys/devices/system/clocksource/clocksource0/current_clocksource

    + To verify the current setting of the clock source, use:

    cat /sys/devices/system/clocksource/clocksource0/current_clocksource

    + The output should read tsc.