cloud-initramfs-dyn-netconf should work without /etc/network/interfaces symlink

Bug #1534205 reported by Scott Moser
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
cloud-init (Ubuntu)
Fix Released
Medium
Unassigned
Xenial
Fix Released
Medium
Unassigned

Bug Description

See [1] for doc on cloud-initramfs-dyn-netconf.

cloud-initramfs-dyn-netconf takes klibc ipconfig output and writes /etc/network/interfaces (ENI) style file in /run/network/dynamic-interfaces.
The goal is to have the user's provided 'ip=' kernel parameters be "sticky" and not have the network interface get bounced by normal post-initramfs networking bringup. Essentially kernel command line should override /etc/network/interfaces in a similar way to command line flags overriding environment or system configuration.

As it is right now, we have to have ln -sf /etc/network/interfaces /run/network/dynamic-interfaces in order for this to work.
That means:
 a.) if you've not done this, dyn-netconf isn't much use
 b.) if you *have* done this, but not provided ip= then you'll get you'll get no network configuration.

In xenial, the one necessary change from a cloud image to maas image is this symlink, so that the image can work well with networking information being provided on the kernel command line via network boot.

--
[1] http://bazaar.launchpad.net/~cloud-initramfs-tools/cloud-initramfs-tools/trunk/view/head:/dyn-netconf/doc/README.txt

Scott Moser (smoser)
Changed in cloud-initramfs-tools (Ubuntu):
status: New → Confirmed
importance: Undecided → High
description: updated
Revision history for this message
Scott Moser (smoser) wrote :

The fix that went in to xenial for this (and present in current yakkety and trunk cloud-init) is for cloud-init to read its networking configuration effectively from the kernel command line.

If cloud-init sees network-config= or ip= on the kernel command line, then it will parse the /run/net-*.conf files that are written by the ipconfig in the initramfs and use them as a source of networking information. The kernel's command line overrides a datasource or builtin configuration, so the end result is that the 'ip=' declares the system's network configuration.

Changed in cloud-init (Ubuntu):
status: New → Fix Released
importance: Undecided → Medium
no longer affects: cloud-initramfs-tools (Ubuntu)
Revision history for this message
Scott Moser (smoser) wrote :

cloud-init in xenial can now handle this so I've just explicitly marked this fix-released there.

Changed in cloud-init (Ubuntu Xenial):
status: New → Fix Released
importance: Undecided → Medium
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.