Zabbix проверка свободного места на диске

Обновлено: 06.07.2024

Низкоуровневое обнаружение (LLD) даёт возможность автоматического создания элементов данных, триггеров и графиков для различных объектов на компьютере. Например, Zabbix может автоматически начать мониторить файловые системы или сетевые интерфейсы с вашего устройства, без необходимости создания вручную элементов данных для каждой файловой системы или сетевого интерфейса. Кроме того, в Zabbix имеется возможность настроить удаление ненужных объектов, основываясь на фактических результатах периодически выполняемого обнаружения.

В Zabbix поддерживаются три встроенных типа элементов данных для обнаружения:

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

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

Сначала, пользователь создает правило обнаружения в “Настройка” → “Шаблоны” → колонка “Обнаружение”. Правило обнаружения состоит из (1) элемента данных, который осуществляет обнаружение необходимых объектов (например, файловые системы или сетевые интерфейсы) и (2) прототипов элементов данных, триггеров и графиков, которые должны быть созданы на основании полученных значений этого элемента данных.

Элемент данных, который осуществляет обнаружение необходимых объектов, подобен обычным элементам данных, которые видны в других местах: Zabbix сервер запрашивает у Zabbix агента (или любой другой указанный тип элемента данных) значение этого элемента данных, и агент отвечает текстовым значением. Разница в том, что значение, которое возвращает агент, должно содержать список обнаруженных объектов в специальном JSON формате. Хотя детали этого формата важны только для создателей собственных проверок обнаружения, всё же всем необходимо знать, что возвращаемое значение содержит список из пар: макрос → значение. Например, элемент данных “net.if.discovery” может вернуть две пары: “” → “lo” и “” → “eth0”.

Эти макросы затем используются в именах, ключах и в других полях прототипов, которые являются основой для создания реальных элементов данных, триггеров и графиков каждому обнаруженному объекту. Смотрите полный список опций по использованию макросов в низкоуровневом обнаружении.

Когда сервер получает значение элемента данных обнаружения, он смотрит на пару макрос → значение и для каждой пары создает реальные элементы данных, триггеров и графиков, основанных на их прототипах. В приведенном выше примере с “net.if.discovery”, сервер будет создавать один набор элементов данных, триггеров и графиков для локального интерфейса “lo” и другой набор для интерфейса “eth0”.

Следующие разделы иллюстрируют весь процесс, описанный выше, в деталях и служат руководством, как осуществлять все упомянутые выше типы обнаружений. Смотрите Создание пользовательских LLD правил для понимания формата JSON элементов данных обнаружения и примера того, как реализовать ваш собственный скрипт для обнаружения файловых систем, используя Perl скрипт.

Ограничения данных для возвращаемых значений

Ограничения для JSON данных низкоуровневого правила обнаружения отсутствуют, если эти данные получены напрямую Zabbix сервером, так как полученные значения обрабатываются без сохранения в базу данных. Также ограничения отсутствуют и для пользовательских правил низкоуровневого обнаружения, однако, если предполагается получение пользовательских LLD данных при помощи пользовательского параметра, тогда накладывается ограничение по размеру значения (512 КБ) на сам пользовательский параметр.

Если данные поступают от Zabbix прокси, этот прокси вынужден сначала записать их в базу данных. В таком случае накладываются ограничения к базе данных, например, 2048 байт для Zabbix прокси, который работает с IBM DB2 базой данных.

[Глава 1] Zabbix3.4. Мониторинг использования ЦП Windows. Дисковый ввод-вывод. Мониторинг порога.


  • Windows установить Zabbix-агент
  • Мониторинг использования процессора Windows
Мониторинг Windows - мониторинг производительности дискового ввода-вывода

1. Windows-сервер должен сначала установить zabbix-агент

обзор

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

Zabbix агент собирает информацию о локальной работе и сообщает данные на Zabbix сервер для дальнейшей обработки. Как только возникает исключение (например, полное пространство на жестком диске или сбой процесса обслуживания), Zabbix сервер будет активно предупреждать администратора об исключении на указанной машине.

Агенты Zabbix чрезвычайно эффективны, потому что они могут использовать локальные системные вызовы для завершения сбора статистических данных.

Пассивная и активная проверка

Агенты Zabbix могут выполнять как пассивные, так и активные методы проверки.


Zabbix агент в Windows работает как служба Windows.

Вы можете запустить один или несколько экземпляров Zabbix агента на хосте.

Один экземпляр может использовать файл конфигурации по умолчанию или файл конфигурации, указанный в командной строке.

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

Следующие параметры команды могут использоваться в Zabbix агенте:

параметры Описание n
Агент UNIX и Windows
-c --config <config-file> Абсолютный путь к файлу конфигурации.
Вы можете использовать эту опцию для разработки файла конфигурации вместо использования файла по умолчанию. \\ В UNIX файл по умолчанию /usr/local/etc/zabbix_agentd.conf или через переменную времени компиляции--sysconfdirили--prefixУстановить
В Windows по умолчанию используется файл c: \ zabbix_agentd.conf
-p --print Показать известные предметы и запустить
Note: Для одновременного возврата пользовательского параметра user необходимо создать файл конфигурации (если он не находится в указанном месте).
-t --test <item key> Проверьте указанный элемент мониторинга и выйдите.
Note: Для одновременного возврата пользовательских параметров необходимо создать файл конфигурации (если он не находится в указанном месте).
-h --help Показать справочную информацию
-V --version Показать номер версии
Только агент UNIX
-R --runtime-control <option> Выполнять функции управления. Смотрите контроль времени выполнения.
Только агент Windows
-m --multiple-agents Используйте экземпляры с несколькими агентами (используйте -i, -d, -s, -x).
Чтобы отличить имя службы экземпляра, каждое имя службы будет включать значение имени хоста из файла конфигурации.
Только агент Windows (функция)
-i --install Установите Zabbix Windows agent как сервис
-d --uninstall Удаление Zabbix indows агент службы
-s --start Запустите Zabbix Windows агент службы
-x --stop Остановите службу агента bbix для Windows

Разархивируйте загруженный выше файл zabbix_agents_3.4.6.win.zip и поместите его на диск c


Затем вам нужно изменить zabbix_agentd.win.conf в файле conf, который является файлом конфигурации

Запустите cmd с правами администратора. На следующем рисунке показано, что успешно установленный означает успешно, затем перейдите в службу и запустите zabbix-agent



2. Контролировать использование Windows-CPU

В zabbix шаблон по умолчанию не включает мониторинг использования ЦП. Чтобы снизить частоту повторяющихся операций, создайте шаблон под шаблоном Затем добавьте контролируемый хост-сервер в следующий раз, чтобы напрямую соотнести соответствующие шаблоны! В Конфигурации ----> Шаблон ----> Создать шаблон


После создания шаблона начните создавать элементы мониторинга Значение ключа: perf_counter [\ Processor (_Total) \% времени процессора]


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

Название: процессор используется более 80%

Серьезность: как правило, серьезная


После создания триггера добавьте график для просмотра графика использования процессора

Название: загрузка процессора

Элементы мониторинга: Шаблон Использование ЦП Windows: Загрузка ЦП


После того, как добавление прошло успешно, вы можете просмотреть графическую таблицу CPU, и данные указывают на успешный мониторинг!


3. Мониторинг мониторинга производительности Windows-Disk IO

▼ Примечание. Этот шаблон ввода-вывода собирает данные ввода-вывода всех физических жестких дисков всего сервера. Например: сервер имеет твердотельный жесткий диск, механический жесткий диск, он твердотельный жесткий диск и данные механического жесткого диска отображаются вместе При мониторинге сервера базы данных лучше всего рассматривать твердотельный диск и механический жесткий диск отдельно, используя разные пороги срабатывания. Поскольку все жесткие диски на машине сложены вместе, очень трудно отличить триггер от твердотельного диска и механического жесткого диска


Мониторинг производительности ввода-вывода под WIN достигается путем вызова параметров в счетчике производительности

В настоящее время он скомпилирован в шаблон и может использоваться напрямую. Шаблон включает в себя графику и элементы мониторинга, показанные на рисунке выше.


4. Мониторинг Windows - изменение порога срабатывания диска

Выберите Конфигурация ---> Шаблон ---> (Шаблон ОС Linux / Шаблон ОС Windows)

Я здесь для мониторинга Windows, поэтому измените шаблон Windows, если вы отслеживаете Linux, вы можете изменить шаблон Linux

По умолчанию обновляется один раз в час, и изменяется до 600 секунд, то есть обновляется каждые 10 минут. Через 10 минут вы можете видеть значения мониторинга сетевой карты и диска!



Выберите конфигурацию ---> шаблон ---> (Шаблон ОС Linux / Шаблон ОС Windows) ---> Обнаружение подключенной файловой системы ---> Тип триггера

Я уже модифицировал его здесь. Если нет изменений или нет элемента триггера, вы можете нажать в правом верхнем углу (создать прототип триггера)

Имя: на диске свободное место на диске менее 50 ГБ.



Выберите конфигурацию ---> шаблон ---> (Шаблон ОС Linux / Шаблон ОС Windows) ---> Обнаружение подключенной файловой системы ---> Тип элемента мониторинга

Моя сторона была изменена. Если нет изменений или этот элемент мониторинга недоступен, вы можете нажать в правом верхнем углу (создать прототип элемента мониторинга)

Название: Свободное место на диске на $ 1

Выражение: vfs.fs.size [, бесплатно]

Единица измерения: B

Интервал обновления: 1 м или 60 с


5. Мониторинг правил автоматического обнаружения Windows-сетевой карты

Описание проблемы: Это шаблон Windows по умолчанию, который содержит сетевую карту сервера автообнаружения, но он автоматически найдет много других сетевых карт и другую графику.

Решение: Бесполезно удалять соответствующий графический объект напрямую, поскольку правило автоматического обнаружения будет снова автоматически обнаружено, поэтому вам необходимо изменить правило

1. Внутри правил автообнаружения ----> Обнаружение службы Windows (это можно отключить)

2. Управление ---> Общее ---> Регулярные выражения ---> Сетевые интерфейсы для обнаружения (добавьте параметры ниже, чтобы сетевая карта не была автоматически обнаружена с этими параметрами)



6. Настройте функцию почтовой тревоги на сервере

Я использую корпоративную электронную почту Tencent

Как показано на рисунке ниже, Management ---> Alarm Media Type ---> Email

Следует отметить, что в качестве имени пользователя следует указать свою служебную электронную почту, пароль ввести пароль


Конфигурация ---> Действие ---> Триггер

Создать триггер для отправки оповещений по электронной почте


Операция:

Операция восстановления:

Заголовок по умолчанию: Восстановить , Сервер: : восстановлен!

Подтвердите операцию:

Название по умолчанию: Подтверждено:

Текущее состояние проблемы:


Нажмите на маленький аватар, затем введите основную информацию пользователя, выберите медиа-сигнал тревоги, чтобы установить

Вы можете выбрать уровень серьезности самостоятельно. После того, как настройка включена, функция будильника установлена!

Как настроить мониторинг Windows FileSystem через FSNAME в ZABBIX?

Переходим по следующему пути: Настройки -> Шаблоны -> и на строке нужного шаблона нажимаем кнопку Обнаружение



На данной странице нажимаем кнопку: Создать правило обнаружения

Данный способ позволяет нам мониторить диски C;D;E; и сразу же к ним обращаться, если точнее, то значения описанные в поле напротив макроса это регулярные выражения. Подробнее о них вы можете узнать из гугла.

Нажимаем кнопку Добавит. Далее нас переносит обратно на страницу настройки правил обнаружения. Как только правило будет создано, нам необходимо создать прототип элемента данных этого правила со следующими параметрами:


Далее необходимо нажать на кнопку добавить. Обратите внимание на то, как используется макрос , где требуется указать имя файловой системы. Когда правило будет обрабатываться, этот макрос будет заменен обнаруженной файловой системой. Теперь проверяем обнаружение файловых систем перейдя по пути Мониторинг -> Последние данные -> Выбрать узел сети к которому был применен шаблон с обнаружением.


В моем случае определились абсолютно все файловые системы, которые были найдены на сервере gsasql29v. Таким образом мы можем подключать автообнаружение файловых систем к большому количеству серверов, что сократит развертывание мониторинга.

Исходные данные

Вспомним где у нас лежат конфигурационные файлы zabbix-агента:
root@debian7:

Перейдем в папку с конфигурационными файлами:
root@debian7:

Создадим файл iostat.conf в директории с конфигурационными файлами zabbix-агента

Создадим первый скрипт:

Вот с таким кодом:

Выставим на оба скрипта необходимые права:
root@debian7:

Отредактируем файл конфигурации агента:
root@debian7:

Структура каталогов должна выглядеть примерно следующим образом, если вы настраивали все точно также как и я:

zabbix disk monitoring 01

Перезапускаем агента:
root@debian7:

Проверяем подцепляется ли конфигурационный файл с пользовательскими параметрами (можно воспользоваться любой командой):
root@debian7:

Должно получиться что-то на подобии этого:

zabbix disk monitoring 02

У автора скриптов есть одна непримечательная заметка:

Attention: Second parameter in iostat.collect must be less than Timeout option in zabbix_agentd.conf

Игнорировать её не стоит, иначе работать скрипты не будут. Для исправления заходим в конфигурационный файл zabbix-агента:

То же самое делаем в файле конфигурации zabbix-сервера:

На этом настройка завершена, данные должны приходить. Чтобы не быть голословным, приведу пару скриншотов, свидетельствующих хотя бы то, что у меня все работает:

zabbix disk monitoring 03

zabbix disk monitoring 04

Кому интересно, можно почитать немного отличающиеся варианты реализации мониторинга нагрузки на жесткие диски:

Читайте также: