[Bug 1575572] Re: apache2 fails to start if installed via cloud config (on Xenial)

Scott Moser smoser at ubuntu.com
Fri Apr 29 13:24:43 UTC 2016


> This behaviour of installing packages or configuring your system while the
> system isn't booted yet might also bite you in other cases (it certainly bit
> me a number of cases). Maybe we should discuss how to move that after the
> boot? I do that in
> https://git.launchpad.net/~ubuntu-release/+git/autopkgtest-cloud/tree/tools/armf-lxd-slave.userdata
> but this doesn't look very pretty.

The goal of cloud-init is basically to allow the user to do whatever
they could have done by creating their own image.  But instead, do that
via feeding data to the system.

The portion of cloud-init that installs packages for a user can be moved
to a later stage, but can't really be moved *out* of boot.

sysvinit and upstart support this functionality well. upstart *really*
does the right thing in that you can add new jobs and when conditions
are met those jobs will be handled.

Also note that "in the boot sequence" is not really the problem.  The problem is that the package installation is happening before the system is completely booted.  As an example of the difference, consider that any hung or blocked systemd service will break installation of services.  I can show this by:
 a.) new xenial container
 b.) modify /etc/rc.local to have 'sleep 5m'
 c.) start container
 d.) lxc exec name apt-get install apache2
 e.) apt-get install apache2

The same problem can be shown with 'd' being invoked via ssh, or *any*
other mechanism on the system.

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to systemd in Ubuntu.
https://bugs.launchpad.net/bugs/1575572

Title:
  apache2 fails to start if installed via cloud config (on Xenial)

Status in cloud-init package in Ubuntu:
  Confirmed
Status in init-system-helpers package in Ubuntu:
  In Progress
Status in systemd package in Ubuntu:
  Won't Fix
Status in cloud-init source package in Xenial:
  New
Status in init-system-helpers source package in Xenial:
  Triaged
Status in systemd source package in Xenial:
  Won't Fix

Bug description:
  Using the following cloud config, apache2 will fail to start on
  installation on Xenial:

  #cloud-config
  packages:
  - apache2

  See for example:

  $ gcloud compute instances create xenial-$(date +%y%m%d-%H%M) --image ubuntu-1604-xenial-v20160420c --image-project ubuntu-os-cloud --metadata-from-file user-data=cloud-config
  NAME                ZONE            MACHINE_TYPE   PREEMPTIBLE  INTERNAL_IP  EXTERNAL_IP    STATUS
  xenial-160427-1050  europe-west1-d  n1-standard-1               10.240.0.7   104.155.86.94  RUNNING

  $ ssh ubuntu at 104.155.86.94 systemctl status apache2.service
  ● apache2.service - LSB: Apache2 web server
     Loaded: loaded (/etc/init.d/apache2; bad; vendor preset: enabled)
    Drop-In: /lib/systemd/system/apache2.service.d
             └─apache2-systemd.conf
     Active: inactive (dead)
       Docs: man:systemd-sysv-generator(8)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/cloud-init/+bug/1575572/+subscriptions



More information about the foundations-bugs mailing list