-
Notifications
You must be signed in to change notification settings - Fork 59
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
initramfs: support configuring network on DHCP-less platforms #111
Comments
We could possibly start using IIUC Summary for short term strategy:
Longer term we'll hopefully be able to use We also need the glue code for Packet and DO to be written for |
There is also |
@thom311 would you be able to help us with this problem and weigh in on the design with your NM expertise ? |
Dusty is correct that
With Digital Ocean, that current approach would not work directly (because it would require something to first activate a profile with (IPv4?) link local addressing enabled. On the other hand, there is also I think we can solve the issues for the different environments, and it could be a combination of |
On Fedora CoreOS, Ignition performs the first-boot configuration starting from a running vanilla image and fetching the configuration to apply.
In some cases such configuration is coming from a network resource (e.g. a link-local metadata service, or a cloud bucket, or a cluster service like OpenShift MachineConfigServer).
This works fine in most cases, specifically on all platforms where there is a working DHCP and NetworkManager is able to configure the initramfs before Ignition runs.
There are however a few platforms where a machine is expected to auto-configure its own network using some other hints (i.e. not via DHCP):
In Container Linux, Afterburn runs in the initramfs, queries the metadata service, and writes networkd units for use by the real root filesystem. (On Packet they're written into
/etc
on first boot, and on DO they're written into/run
on every boot.). This however introduces a lot of other troubles for the normal Ignition flow, like coreos/bugs#2205, and in general cannot work for cluster services like MachineConfigServer.We'll need better functionality in Fedora CoreOS, so that NetworkManager in initramfs can properly configure the network in those cases, before Ignition runs. We should also account for transitioning such configuration to the real root (with a teardown in-between at the time of root-pivoting).
EDIT(lucab): reworded for clarity and expanded to reference all platforms where we have the same kind of troubles.
The text was updated successfully, but these errors were encountered: