Key Features
Couchbase can yield tremendous performance on the bare metal cloud. We have achieved sub-millisecond response times in our benchmarks.
- Direct memory access in a bare metal environment.
- High frequency DIMMs for fast memory access.
- Isolated bare metal instances that provide consistent, reliable performance over time.
- All-SSD storage that guarantees high throughput and accelerated app performance.
- 40 Gbps per instance for high throughput across the cluster.
- Cut-through switching that ensures minimum network latency.
Deployment Architecture
One of the advantages of Couchbase is its simplicity. There is no master node; requests are load balanced directly by the Couchbase client libraries. We deploy a single instance type with the latest version of Couchbase and scale the cluster horizontally and vertically at the click of a button or with a single API call.
- When new instances are added to a Couchbase server instance array, the control center notifies the DB and shards are automatically moved to the new instances.
- When an instance array is shrunk we evict the shards from the instances that are about to be deleted before decommissioning them.
- Changing instance specs requires only upgrading the configuration of the instance array in the control center or through the API. After a restart, the Couchbase nodes will simply have the new specs.
The default cluster configuration we deploy is:
- Instance Type: FMCI 8.32
- Solid Store Drive size: 150GB
- OS: Centos 7.x
- Instance count: 3
Recommendations:
This configuration is meant for first time users and small workloads.
For larger workloads we have prepared a guide for scaling and sizing Couchbase on bare metal.
Scaling Couchbase on Bare Metal Cloud
The bare metal cloud enables horizontal as well as vertical scaling of Couchbase at any time, as follows:
Scaling horizontally
New instances can be added to the cluster within a minute; the hosts are registered in Couchbase and the data is moved to the new nodes.
Scaling vertically
Instance configuration can be changed at any time with a simple restart; no additional delays are required for the data to be transferred out of each individual host.
How to Size a Couchbase Cluster
The most important thing to remember is that hot data should stay in memory alongside associated replicas and metadata.
When sizing the cluster focus on understanding the data distribution, data replication, disk throughput and query performance requirements. In some cases, several nodes with larger hardware resources might prove perfect for a particular setup, while in others, increasing the number of instances and decreasing the RAM footprint is recommended.