-
Notifications
You must be signed in to change notification settings - Fork 60
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
NetworkManager inappropriately configures the SR-IOV interface on Azure #1383
Comments
Thanks @freedge for the report. Also thanks for running
Correct. I suspect it is the case that this configuration you've laid down in I think we could take a step back here and ask if this configuration should be delivered another way by us and not by the user directly (i.e. the |
We already ship a udev rule for this, but presumably it isn't matching on aarch64. |
Thanks @bgilbert for that link. I see |
there is an issue with NetworkManager still deciding to manage this interface despite the udev rule actually matching. (this issue is not specific to fcos or aarch64). There were similar issues with NetworkManager like https://bugzilla.redhat.com/show_bug.cgi?id=1896866 and https://bugzilla.redhat.com/show_bug.cgi?id=2149012 however the IP being added through DHCP when in the ramdisk seems to be a race condition that triggers more often with aarch64. Adding the 99-azure-unmanaged-devices.conf file does not workaround this one, so this is really something unique to CoreOS. |
but does the udev rule match? See #1383 (comment)
Right. When you create I think bringing up the networking in the initramfs on every boot was unintended. The intention I beleive was to have it be activated unconditionally on first boot. So.. Since the network is activated in the initramfs on Azure always, your applied |
I noticed recently that Azure is bringing up networking in the initramfs on every boot. This wasn't the intention of c1cf903 I don't believe. I believe the intention was just to make sure that it does come up in the initramfs on first boot (Ignition boot). Noticed this when investigating coreos/fedora-coreos-tracker#1383 (comment)
Let's test that theory in coreos/fedora-coreos-config#2176 |
I also found Azure/WALinuxAgent#1622, which is an effort to upstream this udev rule in question here. |
yes
and logs
Your pull request, not bringing the network in the ramdisk, should directly win us 90s of boot time on our x64 machines, where the DHCP request does not succeed, and so it waits for 90s (I just noticed that!) |
I noticed recently that Azure is bringing up networking in the initramfs on every boot [1]. This behavior was originally introduced in c1cf903. After some discussion with @jlebon and @bgilbert we are going to convert the coreos-enable-network.service to only be pulled in and enalbed on the Ignition boot so that it doesn't run on subsequent boots. [1] coreos/fedora-coreos-tracker#1383 (comment)
We previously hadd the 68-azure-sriov-nm-unmanaged.rules but we figured out we also want those rules in the initramfs. This commit makes a new overlay.d entry and groups together a new dracut module along with the udev rules in that overlay.d directory. Fixes coreos/fedora-coreos-tracker#1383
We previously had the 68-azure-sriov-nm-unmanaged.rules but we figured out we also want those rules in the initramfs. This commit makes a new overlay.d entry and groups together a new dracut module along with the udev rules in that overlay.d directory. Fixes coreos/fedora-coreos-tracker#1383
I noticed recently that Azure is bringing up networking in the initramfs on every boot [1]. This behavior was originally introduced in c1cf903. After some discussion with @jlebon and @bgilbert we are going to convert the coreos-enable-network.service to only be pulled in and enalbed on the Ignition boot so that it doesn't run on subsequent boots. [1] coreos/fedora-coreos-tracker#1383 (comment)
We previously had the 68-azure-sriov-nm-unmanaged.rules but we figured out we also want those rules in the initramfs. This commit makes a new overlay.d entry and groups together a new dracut module along with the udev rules in that overlay.d directory. Fixes coreos/fedora-coreos-tracker#1383
I noticed recently that Azure is bringing up networking in the initramfs on every boot [1]. This behavior was originally introduced in c1cf903. After some discussion with @jlebon and @bgilbert we are going to convert the coreos-enable-network.service to only be pulled in and enalbed on the Ignition boot so that it doesn't run on subsequent boots. [1] coreos/fedora-coreos-tracker#1383 (comment)
This should be fixed (in two ways) by coreos/fedora-coreos-config#2176 |
Thanks a lot! Can I just rebase to the next next release to try it? |
We'll put out a new
You shouldn't need to deploy
|
You can test out this change with the following |
Just to add more context to this issue. The existing udev rule that we had in Fedora CoreOS already made it so that this SR-IOV interface was unmanaged:
However there was a case where the
So we made two fixes here:
|
We previously had the 68-azure-sriov-nm-unmanaged.rules but we figured out we also want those rules in the initramfs. This commit makes a new overlay.d entry and groups together a new dracut module along with the udev rules in that overlay.d directory. Fixes coreos/fedora-coreos-tracker#1383 (cherry picked from commit 8d63178)
We previously had the 68-azure-sriov-nm-unmanaged.rules but we figured out we also want those rules in the initramfs. This commit makes a new overlay.d entry and groups together a new dracut module along with the udev rules in that overlay.d directory. Fixes coreos/fedora-coreos-tracker#1383 (cherry picked from commit 8d63178)
We previously had the 68-azure-sriov-nm-unmanaged.rules but we figured out we also want those rules in the initramfs. This commit makes a new overlay.d entry and groups together a new dracut module along with the udev rules in that overlay.d directory. Fixes coreos/fedora-coreos-tracker#1383 (cherry picked from commit 8d63178)
We previously had the 68-azure-sriov-nm-unmanaged.rules but we figured out we also want those rules in the initramfs. This commit makes a new overlay.d entry and groups together a new dracut module along with the udev rules in that overlay.d directory. Fixes coreos/fedora-coreos-tracker#1383 (cherry picked from commit 8d63178)
We previously had the 68-azure-sriov-nm-unmanaged.rules but we figured out we also want those rules in the initramfs. This commit makes a new overlay.d entry and groups together a new dracut module along with the udev rules in that overlay.d directory. Fixes coreos/fedora-coreos-tracker#1383 (cherry picked from commit 8d63178)
We previously had the 68-azure-sriov-nm-unmanaged.rules but we figured out we also want those rules in the initramfs. This commit makes a new overlay.d entry and groups together a new dracut module along with the udev rules in that overlay.d directory. Fixes coreos/fedora-coreos-tracker#1383 (cherry picked from commit 8d63178)
also verified with fedora-coreos-37.20230122.20.0-azure.aarch64.vhd, thanks! |
The fix for this went into |
The fix for this went into |
The fix for this went into |
I noticed recently that Azure is bringing up networking in the initramfs on every boot [1]. This behavior was originally introduced in c1cf903. After some discussion with @jlebon and @bgilbert we are going to convert the coreos-enable-network.service to only be pulled in and enalbed on the Ignition boot so that it doesn't run on subsequent boots. [1] coreos/fedora-coreos-tracker#1383 (comment)
We previously had the 68-azure-sriov-nm-unmanaged.rules but we figured out we also want those rules in the initramfs. This commit makes a new overlay.d entry and groups together a new dracut module along with the udev rules in that overlay.d directory. Fixes coreos/fedora-coreos-tracker#1383
I noticed recently that Azure is bringing up networking in the initramfs on every boot [1]. This behavior was originally introduced in c1cf903. After some discussion with @jlebon and @bgilbert we are going to convert the coreos-enable-network.service to only be pulled in and enalbed on the Ignition boot so that it doesn't run on subsequent boots. [1] coreos/fedora-coreos-tracker#1383 (comment)
We previously had the 68-azure-sriov-nm-unmanaged.rules but we figured out we also want those rules in the initramfs. This commit makes a new overlay.d entry and groups together a new dracut module along with the udev rules in that overlay.d directory. Fixes coreos/fedora-coreos-tracker#1383
Describe the bug
deploying a VM using accelerated networking on Azure,
Azure exposes a second interface, that is supposed to stay unmanaged, but NetworkManager still configures it.
Reproduction steps
Expected behavior
eth0 should be the only managed and configured interface.
When explicitly telling the NetworkManager to not manage this interface as doc, the second interface should not receive an IP
Actual behavior
both eth0 and enP36480s1 are configured and given an IP.
When creating a 99-azure-unmanaged-devices.conf, enP36480s1 is not managed, but still has an IP configured on it. Maybe CoreOS is starting the NetworkManager a first time in the initrd and it does not see the configuration.
System details
Ignition config
Additional information
reported on RHCOS through a case to the vendor, but since it is reproduced on fcos, I figured I'll send an issue here too.
The text was updated successfully, but these errors were encountered: