ALD-Pro


Приложение ALD Pro состоит из нескольких подсистем, для мониторинга которых созданы раздельные дашборды. Подсистемы могут устанавливаться на разные хосты.

Требования:

  • Для корректной фильтрации в Grafana необходимо создавать объекты мониторинга с тегами:

    • product: ald-pro

    • component (указывается из таблицы ниже)

  • Необходимые экспортеры:

Таблица подсистем и дашбордов

Подсистема

Название дашбоарда

Лейбл component

Служба каталогов

ALD-Pro directory service

controller

Динамическая настройка узлов

ALD-Pro dynamic node configuration

dhcp

Общий доступ к файлам

ALD-Pro file sharing

filesharing

Установка ОС по сети

ALD-Pro installing the OS over the network

osinstalling

Портал управления

ALD-Pro management portal

controller

Мониторинг

ALD-Pro monitoring

monitoring

Разрешение имен

ALD-Pro name resolution

controller

Печать

ALD-Pro printing system

printing

Репозитории ПО

ALD-Pro software repositories

repositoring

Синхронизация времени

ALD-Pro time synchronization

controller

Компонент FreeIpa

ALD-Pro state with history data

freeipa

Используемые метрики

Наименование

Описание

Название подсистемы ALD Pro

Дашборд/Графика

Название метрики в БД и технология сбора

1

Статус службы krb5kdc

Показывает состояние сервиса krb5-kdc

Служба каталогов

ALD-Pro directory service/Status of krb5kdc service

systemd_unit_state_id (используется systemd exporter)

2

Статус службы ipa-custodia

Показывает состояние сервиса ipa-custodia

Служба каталогов

ALD-Pro directory service/Status of ipa-custodia service

systemd_unit_state_id (используется systemd exporter)

3

Статус службы apache2

Показывает состояние сервиса httpd/apache2

Служба каталогов

ALD-Pro directory service/Status of apache2 service

systemd_unit_state_id (используется systemd exporter)

4

Статус службы dirsrv

Показывает состояние сервиса dirsrv

Служба каталогов

ALD-Pro directory service/Status of directory service

systemd_unit_state_id (используется systemd exporter)

5

Статус службы bind9

Показывает состояние сервиса bind9

Служба каталогов

ALD-Pro directory service/Status of named service

systemd_unit_state_id (используется systemd exporter)

6

Статус службы krb5-admin

Показывает состояние сервиса krb5-admin

Служба каталогов

ALD-Pro directory service/Status of kadmin service

systemd_unit_state_id (используется systemd exporter)

7

Статус службы ipa-dnskeysyncd

Показывает состояние сервиса ipa-dnskeysyncd

Служба каталогов

ALD-Pro directory service/Status of ipa-dnskeysyncd service

systemd_unit_state_id (используется systemd exporter)

8

Статус службы ipa-otpd.socket

Показывает состояние сервиса ipa-otpd.socket

Служба каталогов

ALD-Pro directory service/Status of ipa-otpd service

systemd_unit_state_id (используется systemd exporter)

9

Срок службы LDAP сертификата

Показывает время до истечения срока действия LDAP сертификата ALD-Pro

Служба каталогов

ALD-Pro directory service/LDAP certificate expiration time

ald_ldap_cert_exp_check (используется ipahealthcheck-exporter, запрос openssl для получения времени истечения сертификата)

10

Срок службы WEB сертификата портала ALD-Pro

Показывает время до истечения срока действия WEB сертификата портала ALD-Pro

Служба каталогов

ALD-Pro directory service/WEB certificate expiration time

ald_web_cert_exp_check (используется ipahealthcheck-exporter, запрос openssl для для получения времени истечения сертификата)

11

Статус службы isc-dhcp-server

Показывает состояние сервиса isc-dhcp-server

Динамическая настройка узлов

ALD-Pro dynamic node configuration/Status of isc-dhcp-server service

systemd_unit_state_id (используется systemd exporter)

12

Статус службы smbd

Показывает состояние сервиса smbd (общий доступ к файлам)

Общий доступ к файлам

ALD-Pro file sharing/Status of samba service

systemd_unit_state_id (используется systemd exporter)

13

Статус службы apache2

Показывает состояние сервиса httpd/apache2 (установка ОС по сети)

Установка ОС по сети

ALD-Pro installing the OS over the network/Status of apache2 service

systemd_unit_state_id (используется systemd exporter)

14

Статус службы rabbitmq-server

Показывает состояние сервиса rabbitmq-server (установка ОС по сети)

Установка ОС по сети

ALD-Pro installing the OS over the network/Status of rabbitmq-server service

systemd_unit_state_id (используется systemd exporter)

15

Статус службы postgresql

Показывает состояние сервиса postgresql (установка ОС по сети)

Установка ОС по сети

ALD-Pro installing the OS over the network/Status of postgresql service

systemd_unit_state_id (используется systemd exporter)

16

Статус службы salt-master

Показывает состояние сервиса salt-master (портал управления)

Портал управления

ALD-Pro management portal/Status of salt-master service

systemd_unit_state_id (используется systemd exporter)

17

Статус службы apache2

Показывает состояние сервиса httpd/apache2 (портал управления)

Портал управления

ALD-Pro management portal/Status of apache2 service

systemd_unit_state_id (используется systemd exporter)

18

Статус службы celery

Показывает состояние сервиса celery (портал управления)

Портал управления

ALD-Pro management portal/Status of celery service

systemd_unit_state_id (используется systemd exporter)

19

Статус службы rabbitmq-server

Показывает состояние сервиса rabbitmq-server (портал управления)

Портал управления

ALD-Pro management portal/Status of rabbitmq-server service

systemd_unit_state_id (используется systemd exporter)

20

Статус службы aldpro-mp-services

Показывает состояние сервиса aldpro-mp-services (портал управления)

Портал управления

ALD-Pro management portal/Status of aldpro-mp-services service

systemd_unit_state_id (используется systemd exporter)

21

Доступность WEB портала ALD-Pro

Показывает доступность web портала ALD-Pro

Портал управления

ALD-Pro management portal/Connect to WEB portal

ald_portal_check (используется freeipa-exporter, в freeipa-exporter.conf прописан URL для проверки портала, проверка доступности HTTPS страницы портала)

22

Использование ЦПУ службами ALD-Pro

Показывает использование ЦПУ определенными службами

Портал управления

ALD-Pro management portal/Использование ЦП процессами служб, %

systemd_unit_cpu_usage, node_cpu_seconds_total (используется systemd exporter и node exporter)
Комментарий:
Сервисы, которые выводятся метрикой: dirsrv, salt-master, httpd, apache2, celery, postgresql, rabbitmq-server, salt-master, bind9

23

Использование памяти службами ALD-Pro

Показывает использование памяти определенными службами

Портал управления

ALD-Pro management portal/Использование памяти процессами служб

systemd_unit_memory_usage (используется systemd exporter)
Комментарий:
Сервисы, которые выводятся метрикой: dirsrv, salt-master, httpd, apache2, celery, postgresql, rabbitmq-server, salt-master, bind9

24

Статус службы zabbix-agent

Показывает состояние сервиса zabbix-agent

Мониторинг

ALD-Pro monitoring/Status of zabbix-agent service

systemd_unit_state_id (используется systemd exporter)

25

Статус службы zabbix-server

Показывает состояние сервиса zabbix-server

Мониторинг

ALD-Pro monitoring/Status of zabbix-server service

systemd_unit_state_id (используется systemd exporter)

26

Статус службы apache2

Показывает состояние сервиса apache2 (мониторинг)

Мониторинг

ALD-Pro monitoring/Status of apache2 service

systemd_unit_state_id (используется systemd exporter)

27

Статус службы postgresql

Показывает состояние сервиса postgresql (мониторинг)

Мониторинг

ALD-Pro monitoring/Status of postgresql service

systemd_unit_state_id (используется systemd exporter)

28

Проверка работы DNS через локальный запрос

Проверяет работу DNS службы, выполняя преобразование имени в IP-адрес

Разрешение имен

ALD-Pro name resolution/Internal DNS test

dns_internal_check (используется freeipa-exporter, в freeipa-exporter.conf прописаны необходимые параметры для DNS запроса: имя (fqdn), ожидаемый ip-адрес (может быть localhost), тип проверки (internal), проверка DNS запроса).
Комментарий:
Экспортер делает запрос к внутреннему DNS-серверу для выяснения ip-адреса, соответствующего имени из запроса. Если ip адрес совпадает с ожидаемым, проверка пройдена

29

Проверка работы DNS через внешний запрос

Проверяет работу DNS службы, выполняя преобразование имени в IP-адрес через внешний сервер

Разрешение имен

ALD-Pro name resolution/External DNS test

dns_external_check (используется freeipa-exporter, в freeipa-exporter.conf прописаны необходимые параметры для DNS запроса: имя (fqdn), ожидаемый ip-адрес, адрес внешнего DNS-сервера, тип проверки (external), проверка DNS запроса к внешнему серверу).
Комментарий:
Экспортер делает запрос к указанному в настройках внешнему DNS-серверу для выяснения ip-адреса, соответствующего имени из запроса. Если ip адрес совпадает с ожидаемым, проверка пройдена

30

Статус службы cups

Показывает состояние сервиса cups (печать)

Печать

ALD-Pro printing system/Status of cups service

systemd_unit_state_id (используется systemd exporter)

31

Статус службы apache2

Показывает состояние сервиса apache2 (репозитории программного обеспечения)

Репозитории программного обеспечения

ALD-Pro software repositories/Status of apache2 service

systemd_unit_state_id (используется systemd exporter)

32

Статус службы postgresql

Показывает состояние сервиса postgresql (репозитории программного обеспечения)

Репозитории программного обеспечения

ALD-Pro software repositories/Status of postgresql service

systemd_unit_state_id (используется systemd exporter)

33

Статус службы rabbitmq-server

Показывает состояние сервиса rabbitmq-server (репозитории программного обеспечения)

Репозитории программного обеспечения

ALD-Pro software repositories/Status of rabbitmq-server service

systemd_unit_state_id (используется systemd exporter)

34

Проверка синхронизации времени

Проверяет ошибки синхронизации к контроллеру с вышестоящими серверами времени

Синхронизация времени

ALD-Pro time synchronization/NTP Status

ipa_ntp_check (используется локальная служба chrony, проверка статуса синхронизации).
Комментарий:
Проверяется вывод команды chronyc tracking. Проверка осуществляется по полю: «Leap status». Статус «Normal» считается ОК и возвращается 0. Статус «Insert second» считается NОК и возвращается 1. Статус «Delete second» считается NОК и возвращается 2. Статус «Not synchronized» считается NОК и возвращается 3. Любой другой статус или ошибка получения данных возвращается 4

35

Статус службы chrony

Показывает состояние сервиса chrony (синхронизация времени)

Синхронизация времени

ALD-Pro time synchronization/Status of chrony service

systemd_unit_state_id (используется systemd exporter)

36

Проверка возможности входа в LDAP тестовым пользователем

Отрабатывает локальную попытку входа пользователя в контроллер домена

FreeIPA

ALD-Pro state with history data/Test user connection

ipa_user_connect (используется freeipa-exporter, cоздан технический пользователь в FreeIPA, пользователь прописан в ipahealthchack-exporter.conf, пароль для пользователя зашифрован Base64, проверка LDAP подключения).
Комментарий:
Специальный технический пользователь локально подключается к LDAP и происходит попытка получить статус этого пользователя. Если LDAP возвращает ошибку, то метрика переходит в NOK и возвращает 0. Если попытка успешная то возвращает 1

37

Кол-во неуспешных попыток авторизации в LDAP

Подсчитывает кол-во неуспешных попыток аутентификации на контроллере домена

FreeIPA

ALD-Pro state with history data/Failed user login attempts

Метрика собирается из логов (используется сервис vector, в /etc/vector/conf.d/freeipa.toml прописан путь к логу /var/log/dirsrv/*/access, там же настроен парсинг этого лога: (.*(?P<valid_cred>Invalid credentials))).
Комментарий:
После неуспешной попытки входа в логе появляется запись «Invalid credentials». Vector обрабатывает запись и пишет ее в БД с необходимыми labels.
Необходимо помнить, что не все системы, которые аутентифицируют пользователей через FreeIPA, возвращают неуспешные попытки контроллеру. Поэтому в логе собирается информация не обо всех неуспешных попытках входа пользователей

38

Время (длительность) прохождения аутентификации тестовым пользователем

Подсчитывает время, необходимое для проведения аутентификации пользователя

FreeIPA

ALD-Pro state with history data/User connection time

ipa_time_for_connect (используется freeipa-exporter, создан технический пользователь в FreeIPA, пользователь прописан в freeipa-exporter.conf, пароль для пользователя зашифрован Base64, замер времени LDAP подключения).
Комментарий:
Специальный технический пользователь локально подключается к LDAP и происходит попытка получить статус этого пользователя. Замеряется время прохождения этого процесса. Если происходит ошибка, то возвращается -1

39

Статус репликации на контроллере домена

Проверяет статус репликации между контроллерами

FreeIPA

ALD-Pro state with history data/Summary replication for each controller; Replication status; Last replication time (time from now)

ipa_ldap_replication_status, ipa_last_ldap_replication_time (используется freeipa-exporter, создан пользователь с привилегией на чтение Read Replication Agreements).
Комментарий:
Специальный технический пользователь локально подключается к LDAP, делает запрос на статус репликации. Ответ анализируется на наличие настроенных репликаций к другим хостам, их статус и последнее время репликации между ними.
Метрика не выдает конкретику по ошибкам репликации

40

Кол-во заблокированных пользователей

Подсчитывает кол-во выключенных пользователей

FreeIPA

ALD-Pro state with history data/Amount of disabled users

ipa_disabled_users (используется freeipa-exporter, создан технический пользователь в FreeIpa, пользователь прописан в freeipa-exporter.conf, пароль для пользователя зашифрован Base64, проверка параметра nsAccountLock).
Комментарий:
Специальный технический пользователь локально подключается к LDAP и собирает данные обо всех пользователях, у которых параметр «nsAccountLock» = TRUE.
Данные о выключенных пользователях синхронизированы между контроллерами, поэтому кол-во одинаковое на всех контроллерах

41

Проверка соответствия заданного DNS имени - IP адресу при запросе через локальные DNS настройки

Проверяет работу DNS службы, выполняя преобразование заданного имени в IP-адрес

FreeIPA

ALD-Pro state with history data/DNS check for expected IP address using local dns settings

dns_localhost_check (используется freeipa-exporter, в freeipa-exporter.conf прописаны необходимые параметры для DNS запроса: имя (fqdn), ожидаемый ip-адрес (может быть localhost), тип проверки (internal)).
Комментарий:
Экспортер делает запрос к внутреннему DNS-серверу для выяснения ip-адреса, соответствующего имени из запроса. Если ip адрес совпадает с ожидаемым, проверка пройдена

42

Проверка соответствия заданного DNS имени - IP адресу при запросе через локальные DNS настройки к внешнему DNS серверу

Проверяет работу DNS службы, выполняя преобразование заданного имени в IP-адрес

FreeIPA

ALD-Pro state with history data/DNS check for expected IP address using external dns server

dns_specific_server (используется freeipa-exporter, в freeipa-exporter.conf прописаны необходимые параметры для DNS запроса: имя (fqdn), ожидаемый ip-адрес, адрес внешнего DNS-сервера, тип проверки (external)).
Комментарий:
Экспортер делает запрос к указанному в настройках внешнему DNS-серверу для выяснения ip-адреса, соответствующего имени из запроса. Если ip адрес совпадает с ожидаемым, проверка пройдена

43

Статус NTP (ошибок синхронизации с вышестоящими NTP серверами)

Проверяет ошибки синхронизации к контроллеру с вышестоящими серверами времени

FreeIPA

ALD-Pro state with history data/NTP Status

ipa_ntp_check (используется локальная служба chrony).
Комментарий:
Проверяется вывод команды chronyc tracking. Проверка осуществляется по полю: «Leap status». Статус «Normal» считается ОК и возвращается 0. Статус «Insert second» считается NОК и возвращается 1. Статус «Delete second» считается NОК и возвращается 2. Статус «Not synchronized» считается NОК и возвращается 3. Любой другой статус или ошибка получения данных возвращается 4.
В документации FreeIPA сказано, что при установке контроллера всегда используется служба chrony для синхронизации времени

44

Статус служб FreeIPA контроллера домена

Проверяет состояние служб контроллера домена

FreeIPA

ALD-Pro state with history data/FreeIPA summary services state on all controllers; FreeIPA services on $hostname

systemd_unit_state_id (используется systemd_exporter).
Комментарий:
Список сервисов фильтруется в самом запросе

45

Кол-во записей (изменений) в базу LDAP за единицу времени

Собирает количество операций в LDAP в единицу времени по их типам

FreeIPA

ALD-Pro state with history data/Changes in LDAP

Метрика собирается из логов (используется сервис vector, в /etc/vector/conf.d/freeipa.toml прописан путь к логу /var/log/dirsrv/*/access, там же настроен парсинг этого лога: (.*conn=(?P<connection_id>[0-9]+) op=(?P<operation_id>[0-9]+) (?P<ldap_operation>[A-Z]+)( .*|$))).
Комментарий:
В логе собирается информация по типам операций ldap_operation. Все операции собираются, им присваивается labels и vector пишет все в БД. Метрика строится по следующим типам операций: ADD, DEL, MOD.
Данные об изменениях в LDAP синхронизированы между контроллерами, поэтому кол-во одинаковое на всех контроллерах

46

Кол-во событий уровня error во всех логах системы за единицу времени

Собирает кол-во ошибок уровня error из предоставленных логов

FreeIPA

ALD-Pro state with history data/Errors in log files

Метрика собирается из логов (используется сервис vector, в /etc/vector/conf.d/freeipa.toml прописан путь к логам, работает по всем логам, которые собираются на данном хосту).
Комментарий:
Все события уровня ERROR собираются, помечаются label «Severity» для дальнейшего анализа на стороне grafana

47

Кол-во Search запросов на контроллер домена

Собирает количество Search запросов к контроллеру

FreeIPA

ALD-Pro state with history data/Search requests in LDAP

Метрика собирается из логов (используется сервис vector, в /etc/vector/conf.d/freeipa.toml прописан путь к логу /var/log/dirsrv/*/access, там же настроен парсинг этого лога: (.*conn=(?P<connection_id>[0-9]+) op=(?P<operation_id>[0-9]+) (?P<ldap_operation>[A-Z]+)( .*|$))).
Комментарий:
В логе собирается информация по типам операций ldap_operation. Все операции собираются, им присваивается labels и vector пишет все в БД. Метрика строится по следующим типам операций: SRCH

48

Нагрузка на процессор на контроллерах

Показывает загрузку процессора на хостах контроллера домена

FreeIPA

ALD-Pro state with history data/Total CPU usage, %; CPU

node_cpu_seconds_total (используется prometheus node exporter).
Комментарий:
Стандартный способ сбора метрики с хостов основанный на стандартном node exporter. Метрика образовывается путем вычитания текущего времени использования ЦПУ и минуту назад

49

Использование памяти

Показывает использование памяти на хостах контроллера домена

FreeIPA

ALD-Pro state with history data/Total memory usage, %; Memory Stack

node_memory_MemTotal_bytes, node_memory_Buffers_bytes, node_memory_MemFree_bytes, node_memory_Cached_bytes (используется prometheus node exporter).
Комментарий:
Стандартный способ сбора метрики с хостов основанный на стандартном node exporter. Метрика образовывается путем вычитания из максимального количества ОЗУ всей использованной памяти

50

Проверка сроков действия паролей пользователей

Показывает конечную дату действия пароля по пользователям и время до этой даты

FreeIPA

ALD-Pro state with history data/Password expiration

ald_expiration_user_password (используется freeipa-exporter, в freeipa-exporter.conf прописаны имена пользователей для проверки их паролей, проверка ответа от LDAP).
Комментарий:
Экспортер проверяет ответ от ldap по времени окончания действия пароля пользователя

Путь к логу

Лейблы

Файл конфигурации Vector

1

/var/log/ipa/*.log

.timestamp, component="FreeIPA", severity="ERROR", product="ALDPro", file=.file

logs_aldpro.yaml

2

/var/log/ipa/*backup.log

.timestamp, component="FreeIPA", severity="ERROR", product="ALDPro", file=.file

logs_aldpro.yaml

3

/var/log/dirsrv/*/audit

.timestamp, component="FreeIPA", severity="ERROR", product="ALDPro", file=.file

logs_aldpro.yaml

4

/var/log/dirsrv/*/access

.ldap_operation, .valid_cred, .timestamp, component="FreeIPA", severity="ERROR", product="ALDPro", file=.file

logs_aldpro.yaml

5

/var/log/dirsrv/*/errors

.severity, .timestamp, component="FreeIPA", severity="ERROR", product="ALDPro", file=.file

logs_aldpro.yaml

6

/var/log/auth.log

.username, .timestamp, component="FreeIPA", severity="ERROR", product="ALDPro", file=.file

logs_aldpro.yaml

7

/var/log/sssd/*.log

component="SSSD", .timestamp, severity="ERROR", product="ALDPro", file=.file

logs_aldpro.yaml

8

/var/log/apache2/error.log

.timestamp, component="Apache", product="ALDPro"

logs_apache.yaml

9

/var/log/apache2/access.log,
/var/log/apache2/other_vhosts_access.log

.timestamp, component="Apache", product="ALDPro"

logs_apache.yaml

Особенности конфигурации

  1. Все логи FreeIpa и связанных компонентов настраиваются в logs_aldpro.yaml

  2. Логи Apache настраиваются в отдельном файле logs_apache.yaml

  3. Для логов указываются:

    • Таймстамп

    • Компонент системы

    • Уровень серьезности (ERROR) - кроме логов Apache

    • Продукт (ALDPro)

    • Исходный файл лога - кроме логов Apache


Для работы необходимо:

  1. Установить и настроить Vector

  2. Разместить конфигурационные файлы в /etc/vector/conf.d/

  3. Обеспечить права на чтение лог-файлов

При необходимости мониторить FreeIpa как отдельный продукт, данные с freeipa-exporter необходимо тегировать тегом product: freeipa. В этом случае в мониторинг будут добавлены только хосты с ролью контроллера домена.

Используемые метрики

Наименование метрики

Описание

Дашборд/Графика

Название метрики в БД и технология сбора

1

Проверка возможности входа в LDAP тестовым пользователем

Метрика отрабатывает локальную попытку входа пользователя в контроллер домена

FreeIPA state/User connection test

ipa_user_connect

Пререквизиты:
1. Используется freeipa-exporter
2. Создан технический пользователь в FreeIPA
3. Пользователь прописан в freeipa-exporter.conf
4. Пароль для пользователя зашифрован Base64

Принцип работы:
Специальный технический пользователь локально подключается к LDAP и происходит попытка получить статус этого пользователя. Если LDAP возвращает ошибку, метрика переходит в NOK (возвращает 0). При успешной попытке возвращает 1

2

Количество неуспешных попыток авторизации в LDAP

Метрика подсчитывает количество неуспешных попыток аутентификации на контроллере домена

FreeIPA state/Failed user login attempts

Метрика собирается из логов

Пререквизиты:
1. Используется сервис vector
2. В /etc/vector/conf.d/freeipa.toml прописан путь к логу /var/log/dirsrv/*/access
3. Настроен парсинг лога для обнаружения записей «Invalid credentials»: (.*(?P<valid_cred>Invalid credentials))

Примечание: Не все системы, аутентифицирующие через FreeIPA, возвращают неуспешные попытки контроллеру, поэтому лог содержит не все неуспешные попытки входа

3

Время (длительность) прохождения аутентификации тестовым пользователем

Метрика подсчитывает время, необходимое для проведения аутентификации пользователя

FreeIPA state/User connection time

ipa_time_for_connect

Пререквизиты:
1. Используется freeipa-exporter
2. Создан технический пользователь в FreeIPA
3. Пользователь прописан в freeipa-exporter.conf
4. Пароль зашифрован Base64

Принцип работы:
Замеряется время подключения тестового пользователя к LDAP. При ошибке возвращается -1

4

Статус репликации на контроллере домена

Метрика проверяет статус репликации между контроллерами

FreeIPA state/Replication

ipa_ldap_replication_status, ipa_last_ldap_replication_time

Пререквизиты:
1. Используется freeipa-exporter
2. Пользователь должен иметь привилегию на чтение Replication Agreements

Принцип работы:
Технический пользователь проверяет статус репликации между хостами и время последней синхронизации

5

Количество заблокированных пользователей

Метрика подсчитывает количество выключенных пользователей

FreeIPA state/Amount of disabled users

ipa_disabled_users

Пререквизиты:
1. Используется freeipa-exporter с поддержкой LDAP
2. Создан технический пользователь
3. Настроен в freeipa-exporter.conf

Принцип работы:
Собираются данные о пользователях с параметром «nsAccountLock» = TRUE

6

Проверка соответствия заданного DNS имени IP-адресу при локальном запросе

Метрика проверяет работу DNS службы через локальный запрос

FreeIPA state/Internal DNS test

dns_internal_check

Пререквизиты:
1. Используется freeipa-exporter
2. В конфигурации указаны: FQDN, ожидаемый IP-адрес, тип проверки (internal)

Принцип работы:
Делается DNS-запрос к внутреннему серверу и проверяется соответствие IP-адреса

7

Проверка соответствия заданного DNS имени IP-адресу при внешнем запросе

Метрика проверяет работу DNS службы через внешний сервер

FreeIPA state/External DNS test

dns_external_check

Пререквизиты:
1. Используется freeipa-exporter
2. В конфигурации указаны: FQDN, ожидаемый IP-адрес, адрес внешнего DNS-сервера

Принцип работы:
Делается DNS-запрос к указанному внешнему серверу и проверяется соответствие IP-адреса

8

Проверка доступности DNS сервера контроллера домена

Метрика проверяет доступность DNS сервера через локальный запрос

FreeIPA state/DNS resolve check using local dns settings

dns_internal_resolve

Пререквизиты:
Аналогично метрике 6

Принцип работы:
Делается DNS-запрос к внутреннему серверу и ожидается ответ от dns сервера

9

Проверка доступности global DNS

Метрика проверяет доступность external DNS сервера

FreeIPA state/DNS resolve check query to external dns server

dns_external_resolve

Пререквизиты:
Аналогично метрике 7

Принцип работы:
Делается DNS-запрос к указанному внешнему серверу и и ожидается ответ от dns сервера

10

Статус NTP (ошибок синхронизации)

Метрика проверяет ошибки синхронизации времени с серверами NTP

FreeIPA state/NTP Status

ipa_ntp_check

Пререквизиты:
1. Используется локальная служба chrony

Принцип работы:
Проверяется вывод команды chronyc tracking по полю «Leap status»
Возможные статусы:
- Normal (0 - OK)
- Insert second (1 - NOK)
- Delete second (2 - NOK)
- Not synchronized (3 - NOK)
- Ошибка (4)

11

Статус служб FreeIPA контроллера домена

Метрика проверяет состояние служб контроллера

FreeIPA state/FreeIPA summary services state

systemd_unit_state_id

Пререквизиты:
1. Используется systemd_exporter
2. Сервисы фильтруются в запросе

12

Количество записей (изменений) в базу LDAP

Метрика собирает количество операций в LDAP по типам

FreeIPA state/Changes in LDAP

Метрика собирается из логов

Пререквизиты:
1. Используется vector
2. В /etc/vector/conf.d/freeipa.toml прописан путь к логу /var/log/dirsrv/*/access
3. Настроен парсинг этого лога (.*conn=(?P<connection_id>[0-9]+) op=(?P<operation_id>[0-9]+) (?P<ldap_operation>[A-Z]+)( .*|$))

Типы операций: ADD, DEL, MOD

Комментарий:
Данные об изменениях в LDAP  синхронизированы между контроллерами, поэтому кол-во одинаковое на всех контроллерах

13

Количество входов администраторов через web UI

Метрика собирает количество успешных входов администраторов

FreeIPA state/Admin UI logins

Метрика собирается из логов

Пререквизиты:
1. Используется vector
2. В /etc/vector/conf.d/freeipa.toml прописан путь к логу /var/log/auth.log
3. Там же настроен парсинг этого лога:^(.*}, (?P<username>[a-zA-Z0-9-_./]+)@[a-zA-Z0-9-._]+)

Принцип работы:
Из лога собираются вход любого пользователя с меткой: «TGS_REQ». На уровне grafana делается выборка пользователей с именем, которое содержит «adm»

Примечание: Сейчас учитываются пользователи с «adm» в имени

14

Количество событий уровня error в логах

Метрика собирает количество ошибок из всех логов системы

FreeIPA state/Errors in log files

Метрика собирается из логов

Пререквизиты:
1. Используется vector
2. Обрабатываются все логи хоста

Принцип работы:
Все события уровня ERROR собираются, помечаются label «Severity» для дальнейшего анализа на стороне grafana

15

Количество Search запросов на контроллер

Метрика собирает количество Search запросов к LDAP

FreeIPA state/Search requests in LDAP

Метрика собирается из логов

Пререквизиты:
Аналогично метрике 12

Тип операции: SRCH

16

Нагрузка на процессор на контроллерах

Метрика показывает загрузку процессора

FreeIPA state/Total CPU usage

node_cpu_seconds_total

Пререквизиты:
1. Используется стандартный node exporter

Принцип работы:
Метрика образовывается путем вычитания текущего времени использования ЦПУ и минуту назад

17

Использование памяти на контроллерах

Метрика показывает использование памяти

FreeIPA state/Total memory usage

node_memory_MemTotal_bytes, node_memory_Buffers_bytes, node_memory_MemFree_bytes, node_memory_Cached_bytes

Пререквизиты:
1. Используется стандартный node exporter

Принцип работы:
Метрика образовывается путем вычитания из максимального количества ОЗУ всей использованной памяти