Есть ли способ сохранить данные Prometheus во внешней базе данных, как MySQL или PostgreSQL

В настоящее время я работаю с Prometheus и получаю хороший результат, но я сталкиваюсь с трудностью в том, что при перезапуске службы все мои старые данные будут потеряны. Есть ли способ постоянно хранить данные Prometheus в базах данных, таких как MySQL или PostgreSQL?

2 ответа

Теперь поддержка PostgreSQL для Prometheus здесь

https://blog.timescale.com/prometheus-ha-postgresql-8de68d19b6f5

Вы не можете записывать данные Prometheus напрямую в реляционную базу данных (или любую другую базу данных). У вас есть два варианта:

  1. подключите внешний диск к вашей машине и настройте Prometheus для записи данных в любое место для подключения
  2. Напишите крошечный веб-скрипт, который переводит формат экспорта Prometheus в любой формат хранения, который вы хотите. Затем настройте Prometheus для отправки данных в веб-скрипт.

Информация может быть найдена на Prometheus docs.

Традиционные базы данных, такие как MySQL и PostgreSQL, не оптимизированы для данных временных рядов, которые собирает Прометей. Существуют лучшие решения, которые требуют меньше места для хранения и работают быстрее как со вставками, так и с выборками.

Прометей поддерживает удаленное хранение. При включении он сохраняет все новые данные как в локальном хранилище, так и в удаленном хранилище. Существует несколько вариантов для удаленной базы данных с различными компромиссами. Я бы порекомендовал попробовать VictoriaMetrics. Он изначально поддерживает язык запросов Prometheus - PromQL, поэтому его легко использовать в качестве источника данных Prometheus в Grafana.

InfluxDB - еще один вариант:

https://www.influxdata.com/blog/influxdb-now-supports-prometheus-remote-read-write-natively/

Просто настройте remote_write и remote_read в конфигурации Prometheus, и вы готовы к работе:

remote_write:
  - url: 'http://{YOUR_INFLUX-DB}:{YOUR_INFLUX-DB_PORT}/api/v1/prom/write?db=metrics'
remote_read:
  - url: 'http://{YOUR_INFLUX-DB}:{YOUR_INFLUX-DB_PORT}/api/v1/prom/read?db=metrics'
Другие вопросы по тегам