#1032842 RFP: thanos -- highly available Prometheus setup with long term storage capabilities

Package:
wnpp
Source:
wnpp
Submitter:
Christoph Anton Mitterer
Date:
2025-11-29 16:52:36 UTC
Severity:
normal
#1032842#5
Date:
2023-03-12 16:35:53 UTC
From:
To:
* Package name    : thanos
  Version         : 0.30.2
  Upstream Contact: thanos-io@googlegroups.com
* URL             : https://github.com/thanos-io/thanos
* License         : Apache 2.0
  Programming Lang: Go
  Description     : highly available Prometheus setup with long term storage capabilities

Thanos is a set of components that can be composed into a highly available metric
system with unlimited storage capacity, which can be added seamlessly on top of
existing Prometheus deployments.

Thanos leverages the Prometheus 2.0 storage format to cost-efficiently store
historical metric data in any object storage while retaining fast query
latencies. Additionally, it provides a global query view across all Prometheus
installations and can merge data from Prometheus HA pairs on the fly.



IMO a main feature is the compatctor, which allows to downsample the metrics taken
from Prometheus to series of various resolution (which it then automatically
selects, AFAIU, when these are queried e.g. via Grafana).
This makes it possible to store years of data (in lowered resolutions, instead of
the high resolution raw metrics from Prometheus)... and also greatly speeds up
queriying.

Cheers,
Chris.

#1032842#10
Date:
2023-04-02 13:57:13 UTC
From:
To:
A sample run of dh-make-golang against github.com/thanos-io/thanos
reveals the following missing build-deps:

  * github.com/chromedp/chromedp
  * github.com/efficientgo/core
  * github.com/efficientgo/e2e
  * github.com/efficientgo/tools
  * github.com/fatih/structtag
  * github.com/GoogleCloudPlatform/opentelemetry-operations-go
  * github.com/lightstep/lightstep-tracer-go
  * github.com/lovoo/gcloud-opentracing
  * github.com/prometheus/prometheus
  * github.com/rueian/rueidis
  * github.com/sony/gobreaker
  * github.com/thanos-community/promql-engine
  * github.com/thanos-io/objstore
  * github.com/uber/jaeger-client-go
  * github.com/vimeo/galaxycache
  * github.com/weaveworks/common
  * go4.org/intern
  * go.elastic.co/apm
  * gopkg.in/fsnotify.v1

A few of them are bogus, e.g. gopkg.in/fsnotify.v1 is packaged as
golang-github-fsnotify-fsnotify-dev. Prometheus is obviously already
packaged in Debian, but does not however produce a -dev package (such as
prometheus-alertmanager-dev does). Certain parts of Prometheus /are/
reused by other projects, so having such a -dev package would be desirable.

#1032842#15
Date:
2023-04-21 22:01:00 UTC
From:
To:
Hey Daniel.

Are all these strict dependencies, or also optionals?


Cheers,
Chris.

#1032842#20
Date:
2023-04-22 22:03:28 UTC
From:
To:
I haven't checked them individually, but it's pretty rare for a
dependency to be optional. Maybe some of the tracing stuff might be
non-essential, but I think the majority will be fundamentally required
for core functionality.