Prometheus skvěle sbírá metriky. Ale má limity: single node, omezená retence, žádná globální view přes více clusterů. Thanos rozšiřuje Prometheus o long-term storage a HA.
Problémy s plain Prometheus¶
- Single node: Prometheus padne → ztráta dat
- Retence: 15-30 dnů lokálně, víc zabírá příliš disku
- Multi-cluster: žádná globální query přes clustery
- Dedup: HA Prometheus páry generují duplicitní data
Thanos architektura¶
Sidecar: běží vedle Prometheus, uploaduje bloky do object storage (S3). Store Gateway: servíruje historická data z S3. Query: globální query frontend — merguje data ze sidecarů a store gateway. Compactor: downsampling a compaction v S3.
Výsledek¶
Neomezená retence za cenu S3 storage (~$0.023/GB/měsíc). Globální query přes všechny clustery. HA bez duplicit. Prometheus zůstává jako scraper, Thanos přidává globální vrstvu.
Alternativy¶
Cortex: podobný přístup, ale write path je jiný (remote write). Více distribuovaný, ale komplexnější. VictoriaMetrics: single binary, kompatibilní s PromQL, jednodušší. Pro naše potřeby jsme zvolili Thanos — přímá integrace s existujícím Prometheus.
Thanos je přirozená evoluce Prometheus stacku¶
Pokud provozujete Prometheus v produkci, Thanos je logický další krok pro long-term storage a multi-cluster observability.