-
Notifications
You must be signed in to change notification settings - Fork 104
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
openstack: use config-drive by default and metadata API as fallback #462
Conversation
4f52a9e
to
f97eaa1
Compare
Some potential points of interest:
Except the public keys, other metadata can be successfully fetched:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm...don't we basically want to try them in parallel?
@cgwalters By parallel do you mean literally running both config-drive and metadata API at the same time, or running the metadata API as a fallback if any of the method in config-drive version fails? I was wondering too, since right now it won't check the metadata API unless something at the initialization step went wrong (like a missing config-drive device). For example, if the config-drive is mounted correctly, Afterburn won't check metadata API for ssh public keys even if public keys is missing in the meta_data.json filr in config-drive. |
There's some more details in the chat logs from the community meeting where this was discussed, but the TL;DR IIUC was: we keep The reason we do config drive first is to try to be consistent with Ignition's auto-discovery behaviour (which is not great, but we have to live with for now). If it used config-drive, then Afterburn should use config-drive too. Because we run so much later Ignition, we don't need to wait for the device to show up like Ignition does. We can just check for it and if it doesn't exist, fallback to the metadata server. |
f97eaa1
to
8b7276e
Compare
Updated with followings:
Also ran on OpenStack to make sure it worked as intended.. and it worked as expected |
Ready for another round of review! |
4cd92a5
to
d0ea1c4
Compare
This changes afterburn to use config-drive as default for scraping metadata and then try metadata API if config-drive is not available. Previously supported platform id 'openstack-metadata' will continue to be supported. Closes: coreos/fedora-coreos-tracker#422 Signed-off-by: Allen Bai <abai@redhat.com>
d0ea1c4
to
bb31a61
Compare
@lucab Thanks for the review! Updated regarding the reviews. |
LGTM, thanks for implementing this! |
As detailed in coreos#462, Afterburn has two separate OpenStack endpoints, each with a different metadata gathering policy. This patch adds the relevant information to the docs.
openstack: use config-drive by default and metadata API as fallback Related: coreos/afterburn#462
…tries with the config drive then fallback on the metadata service. Change `flatcar-openstack-hostname.service` to use afterburn `openstack` provider implemented on coreos/afterburn#462 instead of `openstack-metadata`. BootEngine PR: flatcar/bootengine#96
Change `flatcar-openstack-hostname.service` to use afterburn `openstack` provider implemented on coreos/afterburn#462 instead of `openstack-metadata`. BootEngine PR: flatcar/bootengine#96
Change `flatcar-openstack-hostname.service` to use afterburn `openstack` provider implemented on coreos/afterburn#462 instead of `openstack-metadata`. BootEngine PR: flatcar/bootengine#96
As detailed in coreos#462, Afterburn has two separate OpenStack endpoints, each with a different metadata gathering policy. This patch adds the relevant information to the docs.
This changes afterburn to use config-drive as default for scraping metadata and then try metadata API if config-drive is not available. Also changes the name of the platform from
openstack-metadata
toopenstack
.Closes: coreos/fedora-coreos-tracker#422
Signed-off-by: Allen Bai abai@redhat.com