On Mon, Oct 20, 2014 at 08:56:19PM +0200, Lennart Poettering wrote:
Hmm, not sure I follow here. Since when is systemd an optional
component in Fedora?
I have been spending much of my time building Fedora-based Docker
containers recently. I've been sticking to the
one-process-per-container model because I think it brings a number of
advantages. One of the biggest, in my opinion, is that "container
management" reduces to "process management", and I already have a
great process manager on my host. It's called "systemd".
Decomposing an application into single-process containers also means
that it's easier to scale individual components. *And* for many
applications -- those that can log to stderr/stdout -- it means
that application logs show up in my host journal *where I want them*.
Running any sort of process manager inside the container can also have
the unintended side-effect of hiding problems from the host. If an
application is failing to start because of a configuration issue, I
don't want that managed inside the container -- I want the host to be
aware of that so that higher-level mechanisms can be involved. I want
a host- or cluster- level container manager to be able to restart
dependent containers, or to have the opportunity to reschedule a
container on another host.
I think it is absolutely essential that systemd is *able* to run
inside a container -- because I think there are invariably going to be
situations in which the one-process-per-container model simply doesn't
pan out. But I also think that in many situations it is not required
and using systemd inside the container simply complicates things.
--
Lars Kellogg-Stedman <lars(a)redhat.com> | larsks @ {freenode,twitter,github}
Cloud Engineering / OpenStack |
http://blog.oddbit.com/