Выше мы описали цели мониторинга с тегом env = prod
Проверяем доступность:
root@serv:/opt/prometheus# ./promtool query instant http://localhost:9090/ up
Пример автоматического поиска целей через dns
Prometheus поддерживает типы записей - A, AAA, SRV
С типами A и AAA все просто, добавили домен - prometheus обнаружит эти записи автоматически Пример добавления в prometheus.yml (т.к. необходимо указать порт приложения, пример - 8080):
scrape_configs:
- job_name: 'prometheus'
static_configs:
- targets: ['localhost:9090']
Рестарт для перечитывания конфига:
root@serv:/opt/prometheus# systemctl restart prometheus
Проверяем:
root@serv:/opt/prometheus# ./promtool query instant http://localhost:9090/ up
С SRV запись позволяет указывать порт сервиса, приоритет, вес, имя хоста для обращения Например, добавьте информацию api приложения в dns:
_api._tcp.internal.domain.test 300 IN 10 50 8080 serv1.internal.domain.test
_api._tcp.internal.domain.test 300 IN 20 30 8080 serv2.internal.domain.test
Выше:
_api - имя приложения
_tcp - протокол подключения приложения
internal.domain.test - доменное имя
10 и 20 - приоритет сервера
50 и 30 - вес сервера
8080 - порт доступа приложения
serv(1,2).internal.domain.test - адрес хоста подключения для доступа к сервису
Пример добавления в prometheus.yml:
scrape_configs:
- job_name: 'prometheus'
static_configs:
- targets: ['localhost:9090']