remote_read

Тема дорожной карты · Prometheus

Конфигурация remote_read в Prometheus позволяет серверу прозрачно запрашивать данные из удалённого хранилища, когда запрошенные временные ряды не найдены в локальной TSDB. Когда запрос PromQL запрашивает данные за временной диапазон, выходящий за пределы локального хранения, или для рядов, которые были выгружены, Prometheus отправляет запрос на чтение по настроенному URL remote_read, получает образцы и объединяет их с локально доступными данными. Блок remote_read в prometheus.yml задаёт URL эндпоинта, необязательную конфигурацию TLS, учётные данные аутентификации и параметры фильтрации — такие как required_matchers для ограничения того, какие запросы пересылаются на удалённый ресурс. Удалённое чтение обычно применяется в сочетании с remote_write для построения полноценного решения долгосрочного хранения с использованием таких бэкендов, как Thanos, Cortex или Grafana Mimir. Тщательная настройка таймаутов remote_read и параметров автоматического прерывания цепи важна для предотвращения деградации производительности запросов Prometheus в реальном времени из-за задержек удалённого хранилища.

Как это работает

remote_read — локальная TSDB по дефолту: chunks на диске, compaction в фоне, без кластеризации. Retention по времени (--storage.tsdb.retention.time) или размеру (--storage.tsdb.retention.size). Для long-term + clustered: Thanos (sidecar + object store), Cortex / Mimir (multi-tenant, горизонтальный), VictoriaMetrics (drop-in совместимый, часто проще эксплуатировать). Remote write/read API позволяет Prometheus push samples во внешние системы.

Когда применять

Для < 1 года данных + < ~1M samples/sec локальный Prometheus достаточен. За пределами: VictoriaMetrics — простейший scale-up путь (лучше сжатие, быстрее, меньше движущихся частей, чем Thanos). Thanos/Mimir — если нужна object-storage-долговечность + multi-cluster federation. Планируйте retention vs cardinality — высокая cardinality + долгий retention = дорого.

Типичные ошибки

Ловушки remote_read: ротация persistent-volume Prometheus + потеря всех данных; расчёт federation = HA (это read-агрегация, не репликация); высокая write rate без SSD I/O (TSDB-writes I/O-тяжёлые); миграция на Thanos без понимания операционной сложности (много движущихся частей).

Связанные понятия

Полезные ресурсы