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

Re: [libvirt] [PATCH] Configuring systemd to restart libvirt on abort



On Tue, Jul 30, 2013 at 05:43:16AM -0400, Mooli Tayer wrote:
> 
> ----- Original Message -----
> > On Mon, Jul 29, 2013 at 05:36:21PM +0300, Mooli Tayer wrote:
> > > From: Mooli Tayer <mtayer redhat com>
> > > 
> > > This will create a respawn behaviour in case libvirt
> > > process exits due to an uncaught signal not specified
> > > as a clean exit status.
> > > see http://www.freedesktop.org/software/systemd/man/systemd.service.html
> > > ---
> > >  daemon/libvirtd.service.in | 1 +
> > >  1 file changed, 1 insertion(+)
> > > 
> > > diff --git a/daemon/libvirtd.service.in b/daemon/libvirtd.service.in
> > > index aa5913b..b3c0849 100644
> > > --- a/daemon/libvirtd.service.in
> > > +++ b/daemon/libvirtd.service.in
> > > @@ -15,6 +15,7 @@ EnvironmentFile=-/etc/sysconfig/libvirtd
> > >  ExecStart= sbindir@/libvirtd $LIBVIRTD_ARGS
> > >  ExecReload=/bin/kill -HUP $MAINPID
> > >  KillMode=process
> > > +Restart=on-abort
> > >  # Override the maximum number of opened files
> > >  #LimitNOFILE=2048
> > 
> > I'm wondering whether 'on-abort' is the best choice or if
> > 'on-failure' or 'always' are better. The systemd.service
> > man page says
> > 
> > [quote]
> >            Takes one of no, on-success, on-failure,
> >            on-abort, or always. If set to no (the
> >            default) the service will not be restarted. If
> >            set to on-success it will be restarted only
> >            when the service process exits cleanly. In
> >            this context, a clean exit means an exit code
> >            of 0, or one of the signals SIGHUP, SIGINT,
> >            SIGTERM, or SIGPIPE, and additionally, exit
> >            statuses and signals specified in
> >            SuccessExitStatus=. If set to on-failure the
> >            service will be restarted when the process
> >            exits with an nonzero exit code, is terminated
> >            by a signal (including on core dump), when an
> >            operation (such as service reload) times out,
> >            and when the configured watchdog timeout is
> >            triggered. If set to on-abort the service will
> >            be restarted only if the service process exits
> >            due to an uncaught signal not specified as a
> >            clean exit status. If set to always the
> >            service will be restarted regardless whether
> >            it exited cleanly or not, got terminated
> >            abnormally by a signal or hit a timeout.
> > [/quote]
> > 
> > I tend towards saying 'on-failure' here.
> 
> I agree. we defiantly want restart in the 'on-failure'
> cases.

Would 'on-failure' mean that libvirtd is to be restarted if it has
exited with an error due to wrong configuration? This may spell nasty
thrashing of systemd.

Dan.


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