Skip to content

Conversation

olivierlemasle
Copy link

Currently, Ignition tries to use networkd DHCP leases to get the metadata service address in CloudStack provider.

As Fedora CoreOS switched to NetworkManager, CloudStack metadata cannot be found anymore (Afterburn has the same problem: coreos/afterburn#146)

With this PR, Ignition uses several methods in order to find the address of the CloudStack Virtual Router (which serves the
metadata service):

  1. A DNS request on "data-server";
  2. The DHCP option "dhcp_server_identifier" as returned by NetworkManager (queried using DBus)
  3. The current process (networkd DHCP leases)
  4. The default gateway (as defined in /proc/net/route)

I kept method 3 only for compatibility reasons, but I can remove it (it does not work with Fedora CoreOS 34). The order of methods is inspired by cloud-init.

Cf. coreos/fedora-coreos-tracker#716

Currently, Ignition tries to use networkd DHCP leases to get the
metadata service address in CloudStack provider.

As Fedora CoreOS switched to NetworkManager, CloudStack metadata
cannot be found anymore.

With this commit, Ignition uses several methods in order to find
the address of the CloudStack Virtual Router (which serves the
metadata service):

1. A DNS request on "data-server";
2. The DHCP option "dhcp_server_identifier" as returned by
   NetworkManager (queried using DBus)
3. The current process (networkd DHCP leases)
4. The default gateway (as defined in /proc/net/route)

Cf. coreos/fedora-coreos-tracker#716
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant