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

Re: To supervise or to not supervise?



On Wednesday 02 March 2005 05:16 pm, Scott Gifford wrote:
> Patrick Campbell <PCampbell@xxxxxxxxxxxxxxxxxxxx> writes:
>
> [...]
>
> > I'm wondering if I should reconsider using supervise.
> >
> > I tend to feel like it "over complicates" things and also feel like if a
> > program is going to "crash" or whatever qmail might do, sometimes its
> > just best to let it.
>
> One nice thing about it is it gives you a consistent interface to
> everything that runs under it; you don't have to remember to use
> apachectl for Apache, kill qmail-send manually for qmail, send a HUP
> signal to inetd.

this, in my opinion, is the most important advantage to using supervise and 
daemontools.  Portable, easy to use startup scripts.  And a very simple 
interface to help write portable utilities for starting/stopping/managing 
these services (Dave Sill's 'qmailctl' script is an excellent example of 
utilizing these features)

> Starting things back up automatically is generally nice; supervise
> limits how often it will restart things, so it doesn't tend to take
> down machines frantically restarting services.

.... by waiting one second before trying again, which is plenty enough, 
generally.

> And especially on 
> Linux with its out-of-memory killer, sometimes a process can die for
> no good reason and needs to be restarted.

yes, but the oom-killer is very buggy and I don't believe it is recommended 
that anyone use it yet.

> On the other hand, I think there are some general security
> disadvantages to automatically restarting services, especially in the
> face of buffer overflow attacks that require the attacker to guess
> memory locations and such.

using svc -o instead of svc -u can take care of this.  You can have a startup 
script that does svc -o on your services, this should make them stay down the 
next time they go down.

-Jeremy

-- 
Jeremy Kitchen ++ Systems Administrator ++ Inter7 Internet Technologies, Inc.
  jeremy@xxxxxxxxxx ++ www.inter7.com ++ 866.528.3530 ++ 815.776.9465 int'l
      kitchen @ #qmail #gentoo on EFnet IRC ++ scriptkitchen.com/qmail
         GnuPG Key ID: 481BF7E2 ++ jabber:kitchen@xxxxxxxxxxxxxxxxx

Attachment: pgp00003.pgp
Description: PGP signature