Назад | Перейти на главную страницу

Awaken monit daemon каждые несколько часов для всех отслеживаемых процессов

Я вижу проблему с конфигурацией monit при настройке демона monit для пробуждения каждые несколько часов и запуска мониторинга процессов, для которых было установлено состояние «Not Monitored».

ПРОБЛЕМА: Когда monit изменяется на unmonitor определенного процесса, статус меняется на «not monitored», и демон monit НИКОГДА не будет пытаться запустить мониторинг этого процесса снова, даже если PID-файл обновляется новым правильным PID и мониторинг останавливается для этот процесс навсегда, если демон monit не будет снова пробужден для этого процесса вручную, как показано ниже.

Можно ли настроить этот демон пробуждения для каждого процесса с определенными интервалами тайм-аута в конфигурации мониторинга для этого процесса, чтобы избежать ошибок, связанных с тем, что процесс навсегда перейдет в состояние "не отслеживаемое"?

Например, если 2 перезапуска в течение 3 циклов, то таймаут {X часов} перезапуск монитора

Спасибо.

У меня есть эта конфигурация ниже для процесса snmp.

# Check for cmaeventd process
check process cmaeventd with pidfile /var/run/cmaeventd.pid
group snmp-agents
start program = "/opt/hp/hp-snmp-agents/storage/etc/cmaeventd start"
stop program = "/opt/hp/hp-snmp-agents/storage/etc/cmaeventd stop"
if 2 restarts within 3 cycles then timeout

По какой-то причине, если файл PID не заполнен правильно (я работаю над его исправлением), monit продолжает пытаться перезапустить процесс, используя пустой файл pid, выкидывая указанные ниже ошибки в журнале мониторинга и, наконец, «не отслеживайте» его после сбоя. для перезапуска в течение 3 циклов, как мы настроили.

сообщения журнала:

[PST Feb  3 11:43:23] error    : monit: Error reading pid from file '/var/run/cmaeventd.pid'
[PST Feb  3 11:43:24] error    : monit: Error reading pid from file '/var/run/cmaeventd.pid'

[PST Feb  3 11:45:25] error    : 'cmaeventd' service restarted 2 times within 2 cycles(s) - unmonitor

Мониторинг статуса этого процесса после unmonitor:

Process 'cmaeventd'
  status                            not monitored
  monitoring status                 not monitored
  data collected                    Tue Feb  3 12:10:25 2015

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

>monit monitor cmaeventd 

This will awaken the monit daemon for this process and starts reading the PID file again and if successful it starts the monitoring back in. 

Before awakening the monit daemon for this process:
---------------------------------------------------
logbash-3.1# ls -l /var/run/cmaeventd.pid
-rw-r--r-- 1 root root 1 Feb  3 00:00 /var/run/cmaeventd.pid
logbash-3.1# cat /var/run/cmaeventd.pid

logbash-3.1# ps -ef|grep cmaeventd |grep -v grep
root     13066     1  0 00:00 ?        00:00:00 cmaeventd -p 15 -l /var/log/hp-snmp-agents/cma.log
l
logbash-3.1# echo "13066" > /var/run/cmaeventd.pid
logbash-3.1# cat /var/run/cmaeventd.pid
13066

logbash-3.1# monit monitor cmaeventd

Из журнала:

[PST Feb  3 12:20:54] info     : monitor service 'cmaeventd' on user request
[PST Feb  3 12:20:54] info     : monit daemon at 23515 awakened
[PST Feb  3 12:20:54] info     : Awakened by User defined signal 1
[PST Feb  3 12:20:54] info     : 'cmaeventd' monitor action done

Статус мониторинга:

Process 'cmaeventd'
  status                            initializing
  monitoring status                 initializing
  data collected                    Tue Feb  3 12:20:54 2015

Изменения ниже через некоторое время:

Process 'cmaeventd'
  status                            running
  monitoring status                 monitored
  pid                               13066
  parent pid                        1
  uptime                            12h 21m
  children                          0
  memory kilobytes                  2160
  memory kilobytes total            2160
  memory percent                    0.0%
  memory percent total              0.0%
  cpu percent                       0.0%
  cpu percent total                 0.0%
  data collected                    Tue Feb  3 12:21:54 2015

Мониторинг отдельных агентов HP с помощью Monit не требуется. Кроме того, все они связаны вместе с услугой обертки, hp-snmp-agents. Перезапуск одного независимо от остальных будет иметь нежелательные последствия.

Хотя можно отлаживать журналы агента HP, я думаю, что у вас может быть проблема со старым ядром (похоже, RHEL / CentOS 5.5) и, возможно, старыми агентами управления HP. Агенты HP, которые вам следует использовать, находятся в SDR репозиторий.

Для платформы ProLiant DL3xx G7 вам потребуются новейшие версии следующих пакетов:

hp-snmp-agents, hpssa, hp-health, hp-smh-templates, hpsmh, hpssacli, hponcfg