Prometheus & Grafana Requirements — Per Target Growth Model
Version 1.6.9-option-3 | Updated: August 07, 2026
Prometheus & Grafana Requirements — Per Target Growth Model
This document describes how to calculate the infrastructure requirements for Prometheus 3.5.0 and Grafana v12.1.0 when adding new servers and exporters. It provides a baseline setup, a per-target growth impact matrix, and scaling thresholds.
1. Current Baseline
-
Prometheus
-
4 vCPU
-
16 GB RAM
-
NVMe SSD ≥ 500 GB (≥5k IOPS)
-
Retention: 90 days
-
Scrape interval: 60s
-
Reference footprint: ~111k active series (3-node cluster) — scales roughly linearly per node (see §2 and §5)
-
-
Grafana
-
2 vCPU
-
4 GB RAM
-
This setup is stable for the current workload.
2. Per-Target Growth Impact
The following table shows the average number of active series per target.
On Kubernetes, cAdvisor (per-container metrics from the kubelet) is the largest single contributor and scales with the number of pods per node. The JVM and database exporter counts are comparable to a VM/Compose deployment.
| Exporter / Job | Series per Target | Notes |
|---|---|---|
cAdvisor (K8s) |
~14k / node |
Per-container metrics; scales with pods per node |
JmxExporter (HC) |
~8.1k / member |
Fixed metric set — does not grow with the device fleet |
Process Exporter |
~6.4k / node |
Per-process metrics |
Node Exporter |
~6.2k / node |
Host-level metrics |
ClickHouse |
~1.9k |
|
MySQL Exporter |
~1.0k |
|
Prometheus (self) |
~0.9k |
|
PostgreSQL |
~0.73k |
|
Alertmanager |
~0.53k |
|
Northbound API |
~0.42k |
|
FTACS |
~0.42k |
|
Provision API |
~0.37k |
|
UI Backend |
~0.34k |
|
Service API |
~0.29k |
|
FT Device Network |
~0.16k |
Reference footprint (3-node cluster): ~111k active series — the three infrastructure exporters (cAdvisor + node + process) account for most of it; all application and database exporters combined are under 8k.
3. Growth Calculation Rule
-
List the exporters that will run on the new node.
-
A Kubernetes worker node always adds
cAdvisor + node-exporter + process-exporter, plus one job per application/database pod scheduled on it.
-
-
Take the series-per-target values from the table above.
-
Sum the series across all exporters on the new node(s).
-
Compare with the thresholds to decide if scaling is needed.
4. Scaling Thresholds
-
<2M active series → Baseline (4 vCPU / 16 GB) is sufficient.
-
2—4M active series → Scale Prometheus → 8 vCPU / 32 GB RAM, SSD 1 TB.
-
4—8M active series → Scale Prometheus → 16 vCPU / 64—96 GB RAM, SSD 2—4 TB.
-
>8M active series → Scale Prometheus → 32 vCPU / 96-124 GB RAM, SSD 4-8 TB.
Grafana load is mainly driven by the number of users/dashboards rather than series count.
5. Example: Adding a Kubernetes Worker Node
A new worker node contributes its infrastructure exporters plus the pods scheduled on it:
-
cAdvisor: ~14k series
-
node-exporter: ~6.2k series
-
process-exporter: ~6.4k series
-
application / database pods: ~0.2—2k series each
Per-node total: ~28—30k series.
For a 3-node reference cluster this is ~111k series — comfortably within the < 2M baseline threshold, so the baseline Prometheus (4 vCPU / 16 GB) is sufficient.