У меня есть сервер nagios, это тоже резервный сервер. Этот сервер получает файлы автоматического резервного копирования с более чем 30 сетевых устройств в моей сети. Сетевые устройства отправляют файлы резервных копий ежечасно, но не в одно и то же время. У меня есть простой сценарий, чтобы проверить, создавался ли файл резервной копии за последние 30 минут:
#! /bin/bash
PROGNAME=`basename $0`
PROGPATH=`echo $0 | sed -e 's,[\\/][^\\/][^\\/]*$,,'`
. $PROGPATH/utils.sh
if [ "$1" = "" ]
then
echo -e " Use : $PROGNAME -- Ex : $PROGNAME /etc/hosts \n "
exit $STATE_UNKNOWN
fi
if [[ -z `find /backupdir/ -name "$1*" -mmin -30 -type f` ]]
then
echo "CRITICAL - $1 : backup not working for the last hour"
exit $STATE_CRITICAL
else
echo "OK : $1 config backup is working "
exit $STATE_OK
fi
поскольку через 30 минут может быть выполнено своевременное резервное копирование некоторых устройств, можно ли установить службу проверки в состояние КРИТИЧЕСКОЕ только после 2 проверок в час? Я пробовал это, но, похоже, не работает:
# 'check backup'
define service {
hostgroup_name ciscos
service_description auto backup config check
check_command check_cisco_backup
use generic-service
normal_check_interval 30
max_check_attempts 4
retry_check_interval 4
notification_interval 60
}
У меня недостаточно репутации, чтобы добавить комментарий к вашему ответу. Ниже приведен пример, чтобы прояснить мой вопрос:
- router R1 backing up config file to nagios server N1 at the first minute of every hour
- R2 -> N1 at 31st minute of every hour
- I want N1 to run 'auto backup config check' service every 30 minute,
- so at the first time the service run, apparently one of the two routers will be checked as CRITICAL and the other is OK, and the second the service run, the former OK one will be CRITICAL and vice versa
Посмотрите, можете ли вы помочь определить службу или изменить сценарий наиболее оптимальным образом.
Какую версию nagios вы используете? Я предполагаю, что если вы выходите с критическим состоянием при каждой проверке, эскалации не будет. Вы можете выйти с помощью STATE_WARNING и использовать эскалацию проверки cf: Nagios проверяет частоту обслуживания в зависимости от статуса обслуживания