What is the reason for having monit unmonitor all services prior to shutdown?
On Mon, Nov 21, 2016 at 8:51 AM, Shankar SM <[email protected]> wrote: > Hi All, > We are seeing an issue using monit during a reboot or > shutdown sequence. First some background of the some of the configuration > of monit. > > 1. Monit version is 5.5 > 2. Monit is started from inittab as null::respawn:/usr/bin/monit -Ic > /etc/monitrc 3. Monit is configured to check services every 30 secs. > 4. Monit is monitoring certain custom applications and restarts them if > they are not running by calling the init script of that particular custom > application. > 5. The applications have their own init script in /etc/init.d/ folder that > are started on bootup. Monit starts after these init scripts are run from > inittab. > > Now to the problem at hand. > During a shutdown/reboot of the system first a command is sent to monit to > stop monitoring all services. After this all the kill scripts in > /etc/init.d/ are called. For the most part it works but there is a corner > case where monit starts an application when the application has already > shutdown gracefully, which is wrong. I have tried to capture the problem in > the Sequence diagram below link. > > https://i.stack.imgur.com/XwYk9.png > > I looked at monit source code and it looks like when the check for a > service fails monit tries to run the command mentioned by forking and > executing it. So this forked process can still be in progress when monit > receives a unmonitor command. It also looks like monit does not stop > processes that it started when it receives this command and immediately > returns. > > Is there a way to wait till all the forked processes that are started by > monit are complete? > > Any other recommendation to avoid this problem? > > Thanks > Shankar > > > -- > To unsubscribe: > https://lists.nongnu.org/mailman/listinfo/monit-general > -- *Geoff GoasSystems Engineer*
-- To unsubscribe: https://lists.nongnu.org/mailman/listinfo/monit-general
