How can we get high availability in prometheus data store?

Viewed 3746

I am new to prometheus, and so I am not sure if high availability is part of Prometheus data store tsdb. I am not looking into something like having two prometheus server instances scraping data from the same exporter as that has high chance of having two tsdb data store which are out of sync.

3 Answers

It really depends on your requirements.

Do you need highly available alerting on your metrics? Prometheus can do that.

Do you need a highly available monitoring system that contains the last few hours of data for operational triage? Two prometheus instances are pretty good for that too.

Do you need long-term storage of timeseries data? Prometheus is not designed to accomplish this on its own. Either use the remote write functionality of prometheus to ship data to another TSDB that supports redundant storage (InfluxDB and Clickhouse are pretty promising here) but you are on the hook for de-duping data. Alternatively, consider Cortex.

For Kubernetes setup Using kube-prometheus (prometheus-operator), you can configure it using values.

and including thanos Would help in this situation

Related