monit-general
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Dependencies question


From: Martin Pala
Subject: Re: Dependencies question
Date: Mon, 07 Nov 2005 14:01:09 +0100
User-agent: Mozilla Thunderbird 1.0.7 (Windows/20050923)

Martin Vuille wrote:
Hi,

I am experimenting with dependencies to see how I can
use them to meet a customer requirement.

I have the following in my monitrc file:

        check process dummy with pidfile /var/run/dummy.pid
            mode passive

        check process squid with pidfile /var/run/squid.pid
            start program = "/etc/init.d/squid start"
            stop program  = "/etc/init.d/squid stop"
            depends on dummy

On a "monit start all", even when the file /var/run/dummy.pid
doesn't exist, monit still starts squid.

I thought that squid would not be started until dummy was running
(i.e., until the pid file was present.)

What am I missing?

Monit performs in-order startup, however it doesn't check whether the parent realy started or not in the same cycle.

What happens is:

1.) try to start the service 'dummy' (there's no startup script and the mode is passive so just the monitoring will be enabled). In the case that 'squid' was running, it will be stopped, then 'dummy' monitoring enabled and then 'squid' started.

2.) try to start the service 'squid'. Because the 'dummy' is prerequisite, monit will check whether it is running or not. Because it is not running, it will try to start the 'dummy' (enable monitoring) and then 'squid' (run startup script). However, in between 'dummy' and 'squid' monit doesn't check that the 'dummy' realy started (the failure will be detected next cycle).

i.e. monit currently ensures correct sequence, but doesn't wait for 'dummy' to start before trying to start 'squid'.


Martin












reply via email to

[Prev in Thread] Current Thread [Next in Thread]