[CentOS] Some thoughts on systemd

Thu Jul 17 21:17:27 UTC 2014
Mark Tinberg <mtinberg at wisc.edu>

On Jul 17, 2014, at 12:39 PM, Keith Keller <kkeller at wombat.san-francisco.ca.us> wrote:

> On 2014-07-17, Timothy Murphy <gayleard at alice.it> wrote:
>> 
>> But the only practical advantage of systemd that I've seen touted
>> is that it speeds up boot-time.
>> Even if this were true it does not seem to me worth worrying about,
> 
> It is if you manage a large cluster of virtual containers which
> dynamically boot or shut down based on load or other factors.  If you
> need to boot 100 virtual containers right away, boot time will be a huge
> factor.  (Not suggesting that systemd actually solves this issue, only
> that boot time is important in some use cases.)

If the only practical advantage of systemd that you have seen touted has been boot time efficiency then you have been poorly served by your advisors.  For servers I think some of the largest advantages is that now you have a standard, built-in way to make your services highly available, both with explicit watchdog heartbeats and with automatic restarting on failure if you want, but not mindless restarting if the service is broken, you have a configurable hold down timer as well.  Another advantage is in not needing to demonize anymore, which is a little song and dance of UNIX trivia I’m happy to dispense with, along with the reliable capturing of stdout/stderr from services for logging, which is where plenty of errors go especially when services can’t start properly.  Sanitized and consistent environment for services is also another feature, you can’t leak environment variables or file descriptors from the shell of the person who (re)starts a service since all services are a child of pid 1 not your shell.  I haven’t even mentioned control groups for reliably managing all processes which are members of a named service without relying on the kindness of pid files or having unique argv0 (I have a lot of processes named /usr/bin/perl that are not all the same thing 8-)

There are plenty of features, any of which might be useful to you, that have been integrated into a critical mass of distros and upstream projects.  That’s really the main difference, many of the individual features have been done before in various one-off systems but now there is a critical mass of the features being standardized across distros.  You can learn more by reading some of blogs from the project lead developer, who is obviously very excited about the project http://0pointer.de/blog/projects/ or LWN

https://www.google.com/?gws_rd=ssl#q=site:lwn.net+systemd+for+administrators

— 
Mark Tinberg, System Administrator
Division of Information Technology - Network Services
University of Wisconsin - Madison
mtinberg at wisc.edu