systemd support in juju

Alexis Bruemmer alexis.bruemmer at canonical.com
Thu Mar 12 23:27:42 UTC 2015


Hi All,

systemd support in juju has been developed and currently is in trunk.  It
will be available in the 1.23 release scheduled to go beta next week.
Upstart will continue to be supported as well.  However, versions of juju
prior to 1.23 will not support systemd.  This means that these versions
cannot run on the latest vivid images without first switching to upstart.

More information regarding systemd support can be found at:

https://bugs.launchpad.net/juju-core/+bug/1409639

Also below are some notes addressing points several folks have asked about
over the past month.

The systemd support is new so please do use the 1.23-beta once available
next week and if you encounter any problems file a bug.  As always juju
developers are available on #juju-dev or this mailing list if you have
questions.

Thanks!
Alexis


* Notes======*

Running Older juju on vivid
======================

In order to use juju 1.22 and earlier on vivid the host must be
updated to boot with upstart. This can be done by running "sudo
apt-get install upstart" followed by "sudo update-grub".  As well, a
vivid host may be booted with upstart for a single boot.  Upon
booting, in the grub menu select "Advanced options for Ubuntu" and
then "Ubuntu, with Linux ... (upstart)".

We are working on updating the dist packages for earlier versions of
juju to specifically require upstart.

Charms
=========

Since charms are released on a per-series basis, there is no immediate
impact from vivid.  The only impact relative to systemd on vivid will
be to the effort of updating charms for release on vivid.  Most charms
will be unaffected.  Those that are will be those that currently
install their own upstart scripts or call upstart-specific commands
("start", "stop", "restart", "initctl").  Those that call more generic
commands like "service" are fine.

Local Provider
============

There is a known issue where vivid (systemd) LXC containers on
non-vivid hosts will not boot.  See
https://bugs.launchpad.net/ubuntu/+source/lxc/+bug/1347020.  This has
a direct impact on using local provider on non-vivid hosts under those
circumstances.  However, everything works fine if local provider is
run on a vivid host.

There is also an issue with using lxc-create to create vivid
containers using the ubuntu-cloud template  on a non-vivid host, if
certain packages have not been updated.  See
https://bugs.launchpad.net/ubuntu/+source/cloud-utils/+bug/1062671.
This may impact some users of local provider.

Discovery
=========

juju decides at run-time on which init system to use.  For local hosts
this involves inspecting the host and falling back to inferring the
init system from the juju version information.  For cloud-init the
init system is deduced strictly from the juju version information
defined for the to-be-created instance.  Trusty and earlier indicates
upstart should be used and vivid and later indicates systemd.
However, there is a feature flag which may be used to force vivid and
later to use upstart.  Set "JUJU_DEV_FEATURE_FLAGS = legacy-upstart" in
your shell environment.

Resources
==========
* https://wiki.ubuntu.com/SystemdForUpstartUsers




-- 
Alexis Bruemmer
Juju Core Manager, Canonical Ltd.
(503) 686-5018
alexis.bruemmer at canonical.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ubuntu.com/archives/juju-dev/attachments/20150312/cbdfcf78/attachment.html>


More information about the Juju-dev mailing list