Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
Надеюсь, что на основе приведенного примера вы сможете создать описание всех необходимых сервисов. В мире UNIX-систем большинство задач можно решить разными способами. Сейчас вы в этом убедитесь. Давайте в очередной раз расширим функциональность демона snmpd, внеся в snmpd.conf следующие строчки.
disk / 180000
disk /home 760000
Таким образом, мы указываем, что хотим следить за свободным местом на разделах /и home еще одним способом. Вышеуказанные строки говорят демону snmp, что мы хотим установить флаг ошибки в случае, если на разделе /занято 180 Мб, а /home заполнен на 760 Мб. Впрочем, ничего страшного не случится, если ограничения не устанавливать вовсе. Кстати, стоит отметить, что ограничение можно описывать не только в килобайтах, но и в процентах. Теперь интересующие нас данные находятся внутри ветви .iso.org.dod.internet.private.enterprises.ucdavis.dskTable.dskEntry. Принцип построения таблицы стандартен. Идентификатор dskPath содержит данные об именах разделов.
dskPath.1 = STRING: /
dskPath.2 = STRING: /home
dskDevice устанавливает соответствие между разделами и физическими устройствами диска.
dskDevice.1 = STRING: /dev/sda1
dskDevice.2 = STRING: /dev/sda6
В dskMinimum dskMinPercent содержатся пороговые значения для поднятия флага ошибки. Соответственно, dskTotal, dskAvail, dskUsed отображают общее, доступное и задействованное пространство дисков. Следующая ветвь, называемая dskPercent, для нас наиболее интересна, так как содержит величину заполнения дисков в процентах.
dskPercent.1 = INTEGER: 86
dskPercent.2 = INTEGER: 4
Именно ее мы и будем контролировать. Конечно, можно контролировать состояние ветвей dskErrorFlag и dskErrorMsg.
dskErrorFlag.1 = INTEGER: 1
dskErrorFlag.2 = INTEGER: 0
dskErrorMsg.1 = STRING: /: less than 80% free (= 86%)
dskErrorMsg.2 = STRING:
Но это не очень удобно, так как в этом случае у системы есть лишь два состояния – «нормальное» и «критическое». Соответственно, нет промежуточного перехода в виде состояния «предупреждение». Разобравшись с теорией, давайте создадим сервис, который будет контролировать состояние раздела /новым способом.
define service{
use generic-service
host_name Linux
service_description Space on / check 2
is_volatile 0
check_period 24x7
check_command check_snmp_oid!.1.3.6.1.4.1.2021.9.1.9.1!InK12345!80!90!%
}
Думаю, создать сервисы, выполняющие проверку остальных разделов, вы сможете сами. Идем дальше. Если мы хотим следить за загрузкой процессора, добавляем в snmpd.conf вот это: