Skip to content

docs: update capacity-planning for block storage #6936

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

CharlieTLe
Copy link
Member

What this PR does: Updates capacity planning guide for blocks storage with detailed parameters and component requirements

Which issue(s) this PR fixes:
Fixes #

Checklist

  • Tests updated
  • Documentation added
  • CHANGELOG.md updated - the order of entries should be [CHANGE], [FEATURE], [ENHANCEMENT], [BUGFIX]

Update capacity planning guide for blocks storage with detailed parameters and component requirements

Signed-off-by: Charlie Le <[email protected]>

Some key parameters to consider:

1. **Number of active series**: If you have Prometheus already, you can query [`prometheus_tsdb_head_series`](https://prometheus.io/docs/prometheus/latest/querying/functions/#prometheus_tsdb_head_series) to see this number.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can keep this but maybe also refer to the Cortex ingester metric as well? A lot of users might using non Prometheus collector such as Otel today.

Some key parameters to consider:

1. **Number of active series**: If you have Prometheus already, you can query [`prometheus_tsdb_head_series`](https://prometheus.io/docs/prometheus/latest/querying/functions/#prometheus_tsdb_head_series) to see this number.
2. **Sampling rate**: e.g. a new sample for each series every minute (the default Prometheus [scrape_interval](https://prometheus.io/docs/prometheus/latest/configuration/configuration/)). Multiply this by the number of active series to get the total rate at which samples will arrive at Cortex.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we just say scrape interval? Sampling rate as a term seems mainly for tracing.

## Production Recommendations

1. **Enable caching**: Configure [index, chunks, and metadata caching](../blocks-storage/production-tips.md#caching) for store-gateways and queriers.
2. **Enable bucket index**: Use [bucket index](../blocks-storage/bucket-index.md) to reduce object storage API calls.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should mark bucket index as non experimental in Cortex.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants