You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@bigtop.apache.org by "Olaf Flebbe (JIRA)" <ji...@apache.org> on 2016/04/23 08:50:12 UTC

[jira] [Created] (BIGTOP-2406) init scripts do not work reliable on systemd systems

Olaf Flebbe created BIGTOP-2406:
-----------------------------------

             Summary: init scripts do not work reliable on systemd systems
                 Key: BIGTOP-2406
                 URL: https://issues.apache.org/jira/browse/BIGTOP-2406
             Project: Bigtop
          Issue Type: Bug
          Components: debian, Init scripts
    Affects Versions: 1.1.0
            Reporter: Olaf Flebbe
             Fix For: 1.2.0


systemd is emulating the system v init system only up to some point.

>From the manual https://www.freedesktop.org/wiki/Software/systemd/Incompatibilities/

{code}
systemd only stops running services. On traditional SysV a K link installed for shutdown was executed when going down regardless whether the service was started before or not. systemd is more strict here and does not stop service that weren't started in the first place.
If systemd doesn't know which PID is the main PID of a service, it will not be able to track its runtime, and hence a service exiting on its own will not make systemd consider it stopped. Use the Red Hat "pidfile: " syntax in the SysV script header comment block to let systemd know which PID file (and hence PID) belongs to your service. Note that systemd cannot know if a SysV service is one of the kind where the runtime is defined by a specific process or whether it is one where there is none, hence the requirement of explicit configuration of a PID file in order to make systemd track the process lifetime.
{code}

The main point is that if for instance the {{hadoop-yarn-resourcemanager}} dies, a puppet run will not restart the daemon, since the systemd still considers it running. This happens sometimes on debian8.

I like to propose to support systemd unit files in addition to the existing sysv init scripts. 

And please do not bash systemd. It is a tremendous improvement of the Linux Boot process. We have to adapt.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)