Skip to content
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

provisioning: add instructions for live-PXE via iPXE #121

Merged
merged 1 commit into from
Aug 4, 2020

Conversation

lucab
Copy link
Contributor

@lucab lucab commented Jul 31, 2020

This adds a new guide showing how to provision a transient FCOS
instance by live-PXE booting it via iPXE.

Ref: #117

@lucab lucab requested a review from bgilbert July 31, 2020 09:53
@lucab
Copy link
Contributor Author

lucab commented Jul 31, 2020

/cc @bgilbert

@lucab
Copy link
Contributor Author

lucab commented Jul 31, 2020

I manually tested this with testing-devel artifacts on Vultr infrastructure in preparation for coreos/fedora-coreos-tracker#390.

The example is referencing the next stable release coreos/fedora-coreos-streams#158, which is the first one with a the initramfs/rootfs split. The VERSION variable may need to adjusted if my guesstimation turns out to be off.


Since the traditional FCOS upgrade process requires a disk, live-PXE systems are not able to auto-update in place. For this reason, Zincati is not running there.

Instead, it is reccomended that images references in the PXE configuration are regularly refreshed. Once infrastructure and configurations are updated, the live-PXE instance simply needs to be rebooted in order to start running the new FCOS version.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there any way in the ipxe environment/config to do some logic to figure out what the latest is and use that? That would allow people to follow the latest without having to update their configs. The flip side of that is that someone could automate generating the ipxe config and just substitute in the latest version.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not that I've seen. Plus I'm not sure that would be a very good approach. We somehow consciously decided to steer away from the Container Linux way (having a current directory and not encoding version into file name), and this mostly follows from it.

What we could add here as a followup is showing how to mirror the current tip of a stream via coreos-installer download. That should make it slightly easier to automate and refresh (not fully though).

This adds a new guide showing how to provision a transient FCOS
instance by live-PXE booting it via iPXE.
@lucab lucab force-pushed the ups/booting-live-ipxe branch from 13bd70f to 1cd78e9 Compare August 3, 2020 11:22
@lucab
Copy link
Contributor Author

lucab commented Aug 3, 2020

Rebased to avoid duplicated content.

@lucab lucab mentioned this pull request Aug 3, 2020
6 tasks
Copy link
Member

@dustymabe dustymabe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Nice work!

@lucab lucab merged commit 092bc23 into coreos:master Aug 4, 2020
@lucab lucab deleted the ups/booting-live-ipxe branch August 4, 2020 07:27
@jlebon jlebon mentioned this pull request Aug 4, 2020
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.

2 participants