Resource and hardware requirements
Make sure that you meet the following resource and hardware requirements for your configuration size before installing Obcerv.
Obcerv’s required size depends mainly on the message rate it needs to handle.
T-shirt sizing | Message rate | Obcerv entities | Indicative server range |
---|---|---|---|
Large | 100,000 | 250,000 | 3,000-9,000 |
Medium | 50,000 | 125,000 | 900-3,000 |
Small | 10,000 | 25,000 | 300-900 |
Micro | 3,000 | 10,000 | Up to 300 |
For current Geneos customers, you can find the message rate generated by any Gateway (version 5.14.0 and later) by configuring Obcerv publishing in statistics-only mode. To determine the total required message rate, add up the message rates from all Gateways that share an Obcerv instance.
If you do not have these statistics, you can initially reference the sizing guidelines provided. The estimated range of the number of servers that Obcerv can handle are based on certain assumptions (see below) and an analysis of existing customer Gateways.
Indicative server range | Computation |
---|---|
Lower estimate | The following conservative assumptions were used:
|
Upper estimate | Actual message rates from various customer Gateways were used. Most of these Gateways use 20-second sampling and a wide range of plugins. |
You may use these estimates as a starting point, but validate it with actual statistics from your Gateways as soon as possible, since message rates can vary significantly between different plugins.
T-shirt sizing for HA-enabled Copied
Large Copied
Specification | Requirement |
---|---|
Obcerv entities | 250,000 |
Messages per second limit | 100,000 |
Messages per second target range | 50-100K |
Indicative server range | 3,000-9,000 |
Operating system | Linux |
CPU |
|
RAM |
|
Throughput |
|
Disks (total estimate) | See Sample configuration for AWS EC2 handling 100k metrics/sec (large). |
Medium Copied
Specification | Requirement |
---|---|
Obcerv entities | 125,000 |
Messages per second limit | 50,000 |
Messages per second target range | 10-50K |
Indicative server range | 900 - 3,000 |
Operating system | Linux |
CPU |
|
RAM |
|
Throughput |
|
Disks (total estimate) | See Sample configuration for AWS EC2 handling 50k metrics/sec (medium). |
Small Copied
Specification | Requirement |
---|---|
Obcerv entities | 25,000 |
Messages per second limit | 10,000 |
Messages per second target range | 0-10K |
Indicative server range | 300-900 |
Operating system | Linux |
CPU | 34 cores |
RAM | 80 GiB memory |
Throughput | 3000 IOPs / 125Mbps |
Disks (total estimate) | See Sample configuration for AWS EC2 handling 10k metrics/sec (small). |
T-shirt sizing for Non-HA Copied
Small Copied
Specification | Requirement |
---|---|
Obcerv entities | 25,000 |
Messages per second limit | 10,000 |
Messages per second target range | 0-10K |
Indicative server range | 300-900 |
Operating system | Linux |
CPU | 34 cores |
RAM | 80 GiB memory |
Throughput | 3000 IOPs / 125Mbps |
Micro Copied
Specification | Requirement |
---|---|
Obcerv entities | 10,000 |
Messages per second limit | 3,000 |
Messages per second target range | 0-3K |
Indicative server range | Up to 300 |
Operating system | Linux |
CPU | 16 cores |
RAM | 64 GiB memory |
Disks (total estimate) | 500 GB (SSD) See Sample configuration for AWS EC2 with ALB Ingress controller (micro). |
Storage considerations for embedded cluster installations Copied
-
PVCs are stored in the
/var/openebs/local
directory, which does not reserve a specific amount of space upfront. The folder will initially use close to no space until files are actually added even when there is allocated storage space. Make sure that the total volume of your PVCs will fit within this directory. For example, if you have PVCs for Timescale (100 GB) and Kafka (100 GB), the directory needs to be at least 200 GB. -
The
/var/lib/k0s
, which creates a Kubernetes cluster on the local machine, should have at least 100 GB and is not more than 80% full. -
The
/var/lib/embedded-cluster
directory, which is used to store the installer, should have 40 GB or more of free space. -
The
/tmp
directory, which serves as temporary space during installation, should be executable and have 20 GB or more of free space.
Relocate directories with bind mounts Copied
When installing on an embedded cluster with limited space, you can relocate directories by running:
sudo mount --bind /source/directory /target/directory
For example:
sudo mkdir -p /mnt/openebs /mnt/embedded-cluster /mnt/k0s /mnt/tmp
sudo mount --bind /mnt/openebs /var/openebs
sudo mount --bind /mnt/k0s /var/lib/k0s
sudo mount --bind /mnt/embedded-cluster /var/lib/embedded-cluster
sudo mount --bind /mnt/tmp /tmp
If /tmp
is insufficient for all components, you can instead set the environment variable TMPDIR
to a larger directory without needing to bind mount. To do this, run:
sudo TMPDIR=/mnt/new-tmp ./obcerv-bobcat install ...