База знаний FAM/MFA+ : Настройка мониторинга посредством Zabbix

Общие сведения

В инструкции описывается настройка мониторинга служб Avanpost FAM посредством системы Zabbix с целью отслеживания работоспособности компонентов Системы. Функциональность доступна для веб-интерфейса и десктопного интерфейса Zabbix.

Системные требования напрямую зависят от размера инсталляции и количества наблюдаемых метрик.

Пример конфигурации оборудования для Linux/BSD/Unix платформы при минимальной инсталляции (1000 метрик):

  • Ядра CPU/vCPU: 2;
  • Память: 8 (ГБ);
  • База данных: MySQL сервер, Percona сервер, MariaDB сервер, PostgreSQL.

Подробное описание системных требований см. на странице Документации Zabbix .

Настройка

Этап 1. Установка Zabbix Agent

Установка агента Zabbix производится на целевом сервере с развернутой системой FAM.

Для установки Zabbix Agent необходимо:

  1. Скачать и установить репозиторий Zabbix для текущей ОС:

    rpm -Uvh https://repo.zabbix.com/zabbix/6.4/rhel/6/x86_64/zabbix-release-6.4-1.el6.noarch.rpm

    Адрес репозитория может измениться со временем

  2. Установить Zabbix Agent через менеджер пакетов:

    yum install zabbix-agent

Этап 2. Настройка Zabbix Agent

Для настройки Zabbix Agent необходимо:

  1. Открыть конфигурационный файл zabbix_agentd.conf для редактирования.

    Возможные пути к файлу:

    • /etc/zabbix_agentd.conf
    • /etc/zabbix/zabbix_agentd.conf
  2. Внести следующие изменения в файле конфигурации:

    • Server=<IP_адрес_Zabbix_сервера>;
    • ServerActive==<IP_адрес_Zabbix_сервера>;
    • Задать имя хоста FAM с помощью Hostname=<имя_хоста>;
    • Добавить следующую строку для разрешения выполнения удаленных Bash команд агентом:
      AllowKey=system.run[*]

Этап 3. Настройка правил брандмауэра

Для настройки правил брандмауэра необходимо:

  1. Создать новое правило в брандмауэре для Zabbix Agent, включающее порт 10050:

    firewall-cmd --permanent --new-service=zabbix
    firewall-cmd --permanent --service=zabbix --add-port=10050/tcp
    firewall-cmd --permanent --service=zabbix --set-short="Zabbix Agent"
  2. Добавить сервис Zabbix в общую конфигурацию брандмауэра:


    firewall-cmd --permanent --add-service=zabbix
    firewall-cmd --reload

Этап 4. Запуск агента Zabbix

Для запуска агента Zabbix необходимо:

  1. Настроить автозапуск при загрузке системы:

    systemctl enable zabbix-agent
  2. Запустить Zabbix Agent:

    systemctl start zabbix-agent
    

Этап 5. Настройка на стороне веб-интерфейса Zabbix

Для настройки отслеживания работоспособности компонентов Системы посредством Zabbix необходимо:

  1. Зайти в веб-интерфейс Zabbix-сервера.
  2. Перейти в раздел Configuration Hosts. Нажать "Create host" ( Рисунок ).



  3. В открывшемся окне установить настройки ( Рисунок ):

    Host name Задать имя хоста.
    Templates Выберите шаблон "Linux by Zabbix agent", чтобы получать подробную информацию о состоянии сервера FAM.
    Groups Discovered hosts.
    Interfaces Добавить интерфейс типа "Agent" и указать IP-адрес сервера FAM.




  4. В разделе "Items" создать новый элемент данных (Item) ( Рисунок ).



  5. В открывшемся окне установить настройки ( Рисунок ):

    Name Задать имя (например, "Status Fam").
    Type Zabbix agent.
    Key

    system.run[systemctl status fam |grep -o active]

    Данная команда получает статус службы FAM, когда она активна.

    Host interface

    Интерфейс хоста. IP-адрес и порт, по которым Zabbix-сервер может связаться с хостом (целевой системой мониторинга).

    Update interval

    Интервал обновления. Параметр, который определяет, с какой периодичностью элемент данных(Item) будет запрашивать или получать новые данные от хоста.

    History storage period

    Период хранения истории (как долго полученные данные будут храниться в БД Zabbix).





  6. В разделе "Triggers" создать новый триггер ( Рисунок ).



  7. В открывшемся окне установить настройки ( Рисунок ):

    Name Задать имя триггера (например, "FAM not Active").
    Expression

    Определить условие триггера, используя выражение:

    last(/fam/system.run[systemctl status fam |grep -o active])<>"active"

    Это условие отправит уведомление, если служба FAM не активна.



Приложение А. Инструменты мониторинга Zabbix

В разделе Monitoring Dashboards создаются и настраиваются графические панели, которые отображают актуальные данные о состоянии системы (в т.ч. наличие проблем в системе) ( Рисунок ).

В разделе Monitoring → L atest data отображаются последние полученные данные с хоста или группы хостов ( Рисунок ).

Раздел предназначен для отслеживания текущих значений метрик мониторинга (загрузка процессора, использование памяти, доступность сервисов и др.).

В разделе Monitoring → Hosts производятся настройки и отображаются графики, которые демонстрируют статистику и изменения значения метрик мониторинга в течение определенного периода времени ( Рисунок ).