Prometheus
Prometheus — приложение, которое позволяет настроить процесс сбора, хранения и обработки метрик.
Перед началом работы настройте Prometheus.
Настроить Prometheus
Вы можете настроить агент для получения метрик в свою инфраструктуру.
1. Добавить сервисного пользователя
Добавьте сервисного пользователя с разрешением в области доступа Проекты и ролью:
metrics.admin;member;- или
reader.
Добавлять пользователей может Владелец аккаунта или пользователи с ролью iam.admin.
2. Настроить агент для получения метрик
-
Откройте CLI.
-
Создайте файл конфигурации
prometheus.yaml:nano /etc/prometheus/prometheus.yaml -
В файле конфигурации
prometheus.yamlзаполните блокscrape_configs:scrape_configs:
- job_name: test_scrape
scrape_interval: 1m
metrics_path: /projects/<project_id>/namespaces/<namespace>/prometheus/metrics
static_configs:
- targets:
- <base_url>
basic_auth:
username: <user_id>
password: <password>Укажите:
<project_id>— ID проекта. Можно скопировать в панели управления: в верхнем меню нажмите Продукты и выберите любой продукт → откройте меню проектов → в строке нужного проекта нажмите ;<namespace>— имя выбранного пространства имен, напримерcompute;<base_url>— URL для обращения к API сервиса Метрики. Список URL можно посмотреть в инструкции Список URL;<user_id>— ID п ользователя, которого вы добавили на этапе 1;<password>— пароль пользователя, которого вы добавили на этапе 1.
-
Опционально: вы можете настроить сбор метрик из нескольких пулов или проектов. Чтобы добавить новый пул или проект, повторите шаг 3.
-
Опционально: добавьте отправку метрик во внешние системы хранения или обработки, например в VictoriaMetrics. Для этого добавьте и заполните раздел
remote_writeв файл конфигурацииprometheus.yaml. -
Выйдите из текстового редактора
nanoс сохранением изменений: нажмите Ctrl+Х, а затем Y+Enter. -
Запустите Prometheus:
docker run \
--name prometheus \
--rm \
-v ${PWD}/prometheus.yaml:/etc/prometheus/prometheus.yaml:ro \
-p 9090:9090 \
prom/prometheus:latest \
--config.file=/etc/prometheus/prometheus.yaml -
Опционально: убедитесь, чт о метрики собираются. Для этого запросите все собранные метрики в Prometheus:
curl localhost:9090/federate -X GET -d 'match[]={__name__=~".+"}'