Prometheus: метрики лимитирования системы
Данный модуль предоставляет статистику лимитирования ресурсов пользователей через Prometheus. Он включает сбор информации о CPU, памяти, swap, количестве процессов, файловой системе и ошибках лимитирования.
Настройка модуля
Конфигурационный файл pm.ini содержит следующие ключевые параметры:
[server]
port = 9099
cert_file = /etc/ls-stats/conf.d/cert.pem
key_file = /etc/ls-stats/conf.d/key.pem
debug_mode = false # Включить/выключить детальный вывод логов (true/false)
[auth]
user = admin
password = securepassword
[ip_filter]
allowed_ips = 192.168.1.100,192.168.1.200 # Список разрешённых IP-адресов, через запятую
Метрики
CPU
ls_cpu_usage_total — суммарное время использование CPU в секундах (
Counter
), конвертируется из микросекунд.ls_cpu_fails_total — суммарное количество сбоев CPU (
Counter
)
Память
ls_mem_usage_current — текущее использование памяти (
Gauge
)ls_swap_usage_current — текущее использование swap (
Gauge
)ls_mem_fails_total — суммарное количество сбоев памяти (
Counter
)ls_swap_fails_total — суммарное количество сбоев swap (
Counter
)
Процессы
ls_nproc_current — текущее количество процессов (
Gauge
)ls_nproc_fails_total — суммарное количество сбоев процессов (
Counter
)
Входы в систему
ls_enters_total — суммарное количество входов в систему (
Counter
)ls_enters_fails_total — суммарное количество сбоев входа в систему (
Counter
)
I/O
ls_io_total — суммарное использование IO (
Counter
) (не реализовано в данной редакции LS).ls_iops_total — суммарное использование IOPS (
Counter
)
Файловая система
fs_soft_limit_blocks — мягкий лимит (soft limit) количества блоков для квоты файловой системы (
Gauge
)fs_hard_limit_blocks — жёсткий лимит (hard limit) оличества блоков для квоты файловой системы (
Gauge
)fs_soft_limit_files — мягкий лимит (soft limit) количества файлов для квоты файловой системы (
Gauge
)fs_hard_limit_files — жёсткий лимит (hard limit) количества файлов для квоты файловой системы (
Gauge
)fs_used_blocks — текущее использование блоков для квоты файловой системы (
Gauge
)fs_used_files — текущее использование файлов для квоты файловой системы (
Gauge
)
group label — добавлена новая метка group
, содержащая имя группы.
Запуск и тестирование
Настройте параметры:
# Генерация сертификатов $ openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 -nodes # Настройка доступов на файерволле $ sudo firewall-cmd --zone=public --add-port=9099/tcp --permanent $ sudo firewall-cmd --reload
Внимание! В данной редакции обязательно указание разрешённых IP-адресов allowed_ips
Запустите сервис с параметрами:
$ sudo systemctl enable lspm $ sudo systemctl start lspm
Проверьте доступность метрик:
$ curl -u admin:securepassword https://localhost:9099/metrics --insecure
Добавьте в Prometheus конфигурацию для сбора метрик:
- job_name: 'secured_metrics' scheme: https tls_config: insecure_skip_verify: true basic_auth: username: 'admin' password: 'securepassword' static_configs: - targets: ['192.168.1.141:9099']
Проверьте графики в Grafana.