Использование внешнего Prometheus для мониторинга
Можно использовать федерацию Prometheus, чтобы собирать метрики со встроенного сервера Prometheus и сохранять их на внешнем сервере. Чтобы настроить федерацию, установите внешний сервер Prometheus, как описано в официальной документации, затем подключите его к своему кластеру через открытый порт API-интерфейса Prometheus.
Чтобы открыть порт для API-интерфейса Prometheus
- На экране Инфраструктура > Сети нажмите Изменить, а затем Создать тип трафика.
-
В окне Создать тип трафика укажите пользовательское имя в поле Имя и 9090 в поле Порт. Затем нажмите кнопку Создать.
- Нажмите Назначить сетям рядом с разделом Пользовательские типы трафика, затем добавьте созданный тип трафика во внешнюю сеть, установив соответствующий флажок.
- Нажмите кнопку Сохранить, чтобы применить изменения.
Теперь можно подключиться к встроенному серверу Prometheus по адресу http://<admin_panel_IP_address>:9090.
Чтобы подключить ваш кластер к внешнему серверу Prometheus
На внешнем сервере Prometheus создайте файл конфигурации федерации. Например, он может быть следующим:
scrape_configs:
- job_name: 'federate'
scrape_interval: 15s
honor_labels: true
metrics_path: '/federate'
params:
'match[]':
- '{job="ostor"}'
- '{__name__=~"job:.*"}'
static_configs:
- targets:
- '<admin_panel_IP_address>:9090'
где:
metrics_path— это конечная точка сервера-источника Prometheus, с которого необходимо собирать метрики;/federate— это конечная точка по умолчанию для получения текущих значений выбранного временного ряда;honor_labels— это параметр выборки, который разрешает (false) или запрещает (true) перезапись любых меток, к которым предоставляет доступ сервер-источник Prometheus;-
match[]определяет временной ряд, из которого следует проводить выборку. Необходимо указать как минимум один параметр URLmatch[]и селектор моментального вектора, такой какupили{job="ostor"}для каждого из аргументовmatch[].В приведенном примере внешний сервер Prometheus будет собирать все ряды с меткой
job="ostor"или именем метрики, которое начинается сjob:. targetsуказывает на сервер-источник Prometheus.