Мониторинг бэкапов с помощью Zabbix

Настройка проверки создания бэкапов на удаленном файловом сервере NAS с помощью системы мониторинга Zabbix (установку и настройку Zabbix описывал здесь).

Использовалась статья:

Zabbix. Мониторинг резервного копирования Linux серверов.

(только вместо команды: “ cut -d " " -f 2 ” использую: “ head -n 1 | awk '{print $7}' “)

Сами бекапы создаются с помощью backup-manager.


1) Создаем скрипты:

1.1) Скрипт с непосредственной проверкой файлов бэкапов на FTP-сервере и записью лог-файла для дальнейшего анализа:

Будут создаваться вот такие логи:

1.2) Скрипт, который будет запускать zabbix-agent для чтения лог-файла когда ему вздумается. Скрипт парсит нужную ему строку и колонку для получения размера (в байтах) конкретного бэкапа:

2) Добавляем выполнение скрипта (1.1) в crontab:

Запуск в 2 часа ночи со вторника по субботу.

3) В /etc/zabbix/zabbix_agentd.conf  в раздел с параметром UserParameter (или в конец файла) добавляем:

Формат:

Т.е. агент при своем выполнении будет запускать скрипт (1.2) и полученный размер бэкапа класть в нужный элемент данных zabbix по ключу.

4) Перезапускаем zabbix-agent:

Заходим в веб-админку zabbix:

1) Настройка – Узлы сети – Выбираем узел

2) Создаем Элемент данных

Имя: Test backup /logs
Тип: Zabbix агент
Ключ: test.backups.logs
Интерфейс узла сети: IP:10050
Тип информации: Числовой (с плавающей точкой)
Единица измерения: b
Интервал обновления: 30s
Пользовательские интервалы:
Тип: Переменный Интервал: 1800s
Период: 2-6,07:00-07:35
Период хранения истории: 1w
Период хранения динамики изменений: 365d
Отображение значения: Как есть
Группа элементов данных: Backups
Активировано: Да

3) Создаем Триггер:

Имя: Backup /logs is missing
Важность: Высокая
Выражение: {1C-SRV:test.backups.logs.last()}=0
Генерация ОК событий: Выражение
Режим генерации событий ПРОБЛЕМА : Одиночная
ОК событие закрывает: Все проблемы
Активировано: Да

4) Идем в Мониторинг – Последние данные.

Элемент Backups -> “Test backup /logs” будет неактивен, т.к. agent ничего не передал по ключу test.backups.logs, т.к. скрипт /usr/local/bin/zabbix/analyze_test_backups.sh  ничего не вернул, т.к. в /usr/local/bin/zabbix/test_backups.log  ничего нет !

Запустим вручную /usr/local/bin/zabbix/test_backups.sh , чтобы принудительно прочитать размер бэкапов логов, не дожидаясь выполнения ночного задания cron. Да, бэкапов логов еще нет, но пусть запишет хотя бы 0 !

Теперь “Test backup /logs” должен активироваться.

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *