juju needs to support systemd for >= vivid
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
| juju-core |
High
|
Eric Snow | ||
| juju-core (Ubuntu) |
High
|
Unassigned | ||
| Vivid |
High
|
Unassigned |
Bug Description
[Status]
The status of Juju and systemd need to be considered in three separate scenarios:
A: A system administrator running the Juju client. For example, managing a deployment somewhere else from your laptop.
B: Running within a deployment itself (the bootstrap node and all other deployed nodes). This is the Juju that runs a production workload.
C: Developing charms using the local provider. This is really a special case combining A and B.
The status of systemd and Juju in these scenarios is as follows:
A: Not affected. The client does not integrate with any init system, so works fine under both upstart and systemd.
B: Affected (when deploying private Vivid charms). Juju will support systemd from version 1.23 (yet to be released). Existing deployments are not affected, since all existing Ubuntu releases run upstart. Deploying onto Vivid is affected, since it will now run systemd, and will continue to be affected after Vivid's release without further action. Workaround for developers: arrange for deployed Vivid nodes to run upstart.
C: Affected (on Vivid only), until scenario B is fixed.
Schedule:
The first beta of 1.23 is expected 2015-03-18 and will provide full systemd support. It will be available from a devel PPA. 1.23 is expected to be released the week of 2015-03-30. It will be available from the standard Juju stable PPA and will be uploaded to Vivid. In time, Trusty will be updated too, although this has not yet been scheduled.
Archive status:
Currently no plans to upload 1.23 betas to Vivid. 1.23 will be uploaded once it is released.
Until this time, dep8 tests are failing against juju-core as they test scenario C, now in a systemd environment.
[Original Description]
Ubuntu is currently working on switching its default init system from upstart to systemd; this has a direct impact on juju-core, which generates upstart configurations for the daemons that it runs across a deployment.
The current target for switchover is the end of Jan/start of Feb, so it would be nice if we had a juju that supported this by then (at least in development).
tags: | added: systemd-boot |
Changed in juju-core (Ubuntu): | |
milestone: | none → ubuntu-15.01 |
status: | New → Triaged |
importance: | Undecided → High |
Andrew Wilkins (axwalk) wrote : | #1 |
Andrew Wilkins (axwalk) wrote : | #2 |
(I should have added: but will support Ubuntu, with a couple of minor adjustments)
Curtis Hovey (sinzui) wrote : | #3 |
We have frozen juju 1.22. We expect it to ship with vivid. This feature will need to be back-ported. How does Ubuntu feel about adding a feature to 1.22.1? If this is bad, then we will wait for 1.23 to be backported to w, v and t.
Changed in juju-core: | |
milestone: | none → 1.23 |
status: | New → Triaged |
importance: | Undecided → High |
Martin Pitt (pitti) wrote : | #4 |
Feature freeze isn't until Mid-February, so any new feature can be put into the vivid package without problems by then. Even after that this will certainly get a freeze exception as this is a release goal. But as this apparently blocks OpenStack deployment/testing (said James Page), we'd probably backport this before feature freeze once it lands in trunk.
Dimitri John Ledkov (xnox) wrote : | #5 |
Looking at http://
Please use DBus api to talk to systemd.
Or use golang-
Eric Snow (ericsnowcurrently) wrote : | #6 |
Right now we (juju core) are scoping out the effort to add systemd support to juju in time for the feature freeze. We'll update here as we move forward.
Note that, as Andrew said, we have some of the work done already (though not merged yet). It's likely the trickiest part, so the remainder of the work should be of the add-systemd-
Eric Snow (ericsnowcurrently) wrote : | #7 |
We've landed a patch for systemd support in juju. We are currently working through a couple of minor bugs before calling it good.
Changed in juju-core: | |
status: | Triaged → In Progress |
Antonio Rosales (arosales) wrote : | #8 |
@Eric,
Thanks for the comment. To confirm is this still on track for 1.23 and the Ubuntu 15.04 (Vivid) release?
-thanks,
Antonio
Eric Snow (ericsnowcurrently) wrote : | #9 |
the last of the patches to add systemd support in juju (including on vivid) has landed. There are a couple of caveats we need to look into though:
* vivid LXC containers on non-vivid hosts don't work correctly out of the box. This has an impact on local provider (I've been testing in a vivid KVM). See https:/
* vivid (and later) may be configured to boot with upstart (e.g. after an upgrade?). We are looking at adding a feature flag to support that use case (which I expect will be an uncommon one).
Changed in juju-core: | |
status: | In Progress → Fix Committed |
assignee: | nobody → Eric Snow (ericsnowcurrently) |
Eric Snow (ericsnowcurrently) wrote : | #10 |
It will also be worth looking into the impact of systemd on existing charms that get published for vivid.
Changed in juju-core: | |
milestone: | 1.23 → 1.23-beta1 |
Robie Basak (racb) wrote : | #11 |
We have 1.20.14 in Vivid at the moment, and dep8 tests are now failing. I believe this is because the systemd switch has happened, and it cannot find upstart.
Which upstream release are you expecting us to pull in to Vivid to fix this please?
Martin Pitt (pitti) wrote : | #12 |
> Which upstream release are you expecting us to pull in to Vivid to fix this please?
As Juju has a "newer versions allowed" exception even for stables, that should equally apply to the current development series. So while I'm not officially in ~ubuntu-release, I'd say "whichever one works" is an acceptable answer? (Not sure whether I misunderstood the question)
description: | updated |
Martin Pitt (pitti) wrote : | #13 |
Thanks Robie for the summary. For the record, if you want to continue running the DEP-8 tests in an upstart environment under vivid, you can do that at the top of your test:
if [ -d /run/systemd/system ]; then
if [ ! -x /tmp/autopkgtes
echo "SKIP: testbed does not support reboot"
exit 0
fi
if [ -n "${ADT_
echo "SKIP: Reboot with upstart still runs systemd; using init= ?"
exit 0
fi
echo "Installing upstart..."
apt-get install -y upstart
echo "Rebooting into upstart..."
/tmp/
fi
(That's what I put into systemd-shim's tests, which also only run under upstart)
tags: | added: hs-arm64 |
Changed in juju-core: | |
status: | Fix Committed → Fix Released |
Changed in juju-core (Ubuntu Vivid): | |
milestone: | ubuntu-15.01 → ubuntu-15.04 |
status: | Triaged → Fix Committed |
Dimitri John Ledkov (xnox) wrote : | #14 |
I also don't understand why this is marked Fix Released, upstream I only see systemd/centos support and no systemd/ubuntu support. I see code that assumes ubuntu == upstart.
Martin Pitt (pitti) wrote : | #15 |
https:/
Changed in juju-core (Ubuntu Vivid): | |
status: | Fix Committed → In Progress |
Changed in juju-core (Ubuntu Vivid): | |
milestone: | ubuntu-15.04 → vivid-updates |
tags: | added: systemd vivid |
Changed in juju-core (Ubuntu Vivid): | |
status: | In Progress → Fix Committed |
Changed in juju-core (Ubuntu): | |
status: | In Progress → Fix Committed |
Changed in juju-core (Ubuntu Vivid): | |
status: | Fix Committed → Fix Released |
Changed in juju-core (Ubuntu): | |
status: | Fix Committed → Fix Released |
Changed in juju-core (Ubuntu): | |
milestone: | vivid-updates → none |
Systemd support is currently under development, primarily to support CentOS: http:// reviews. vapour. ws/r/671/