docs/guides/capacity-planning.md
This doc is likely out of date. It should be updated for blocks storage.
You will want to estimate how many nodes are required, how many of each component to run, and how much storage space will be required. In practice, these will vary greatly depending on the metrics being sent to Cortex.
Some key parameters are:
prometheus_tsdb_head_series to see this number.Other parameters which can become important if you have particularly high values:
Now, some rules of thumb:
-ingester.max-chunk-age lower
(trading off more back-end database I/O).
There are some additional considerations for planning for ingester memory usage.
max_samples_per_send to 1,000
samples, in order to reduce the distributors’ CPU utilization given the same
total samples/sec throughput.If you turn on compression between distributors and ingesters (for example, to save on inter-zone bandwidth charges at AWS/GCP), they will use significantly more CPU (approx. 100% more for distributor and 50% more for ingester).