Prometheus: прокси-компонент для отправки матриц в PushGateway - PullRequest
0 голосов
/ 21 мая 2019

enter image description here

В системе, которую мы создаем, нам нужно отслеживать компоненты (Kafka Connect, Spark..etc), запущенные в кластере k8s с помощью Prometheus. Поскольку кластер k8s работает в другой сети, сервер Prometheus не может напрямую обрабатывать эти компоненты. Для этого мы собираемся запустить PushGateWay в нашем кластере k8s.

Я придумываю следующий дизайн:

  1. Пользовательский компонент «Push Proxy» читает «kube-api-service», чтобы получить список модулей для каждого компонента, который мы хотим отслеживать. (Также периодически проверяет состояние модуля / проверяет новые модули .. и т. Д.)
  2. «Push Proxy» периодически отбирает экспортеров в каждом модуле. (Конечная точка вызова / метрики каждого модуля). Сохраните эти очищенные матрицы в буфере.
  3. «Push Proxy» периодически отправляет буферизованные матрицы в PushGateWay.
  4. Этот PushGateWay доступен от Prometheus. Прометей периодически очищает матрицы от PushGW. ​​

Вопросы:

  1. есть ли какой-то компонент, такой как "Push Proxy", который мы планируем создать?
  2. Это правильный дизайн для решения этой проблемы.
...