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

document using locally-build ipxe using build-ipxe.sh #1114

Open
anderbubble opened this issue Feb 29, 2024 · 2 comments
Open

document using locally-build ipxe using build-ipxe.sh #1114

anderbubble opened this issue Feb 29, 2024 · 2 comments
Assignees
Labels
documentation Improvements or additions to documentation stake:ciq CIQ is a stakeholder of this issue
Milestone

Comments

@anderbubble
Copy link
Collaborator

Document how, why, and when to use https://github.com/warewulf/warewulf/blob/main/scripts/build-ipxe.sh, and how to configure Warewulf to use the iPXE builds that it generates.

@anderbubble anderbubble added the documentation Improvements or additions to documentation label Feb 29, 2024
@anderbubble anderbubble added this to the v4.5.1 milestone Feb 29, 2024
@anderbubble anderbubble self-assigned this Feb 29, 2024
@anderbubble
Copy link
Collaborator Author

From Slack:

One of the things we did for v4.5.0 was stop shipping an iPXE binary and start using the iPXE that comes with the host OS. Since then, we’ve encountered a few instances where the OS iPXE has bugs that were not present in the one we were shipping before, leading to unreliable behavior.

You might try building a new iPXE. We’ve got a script to help with that here: https://github.com/warewulf/warewulf/blob/main/scripts/build-ipxe.sh

That script will put new iPXE builds in /usr/local/share/ipxe by default. You’ll then need to configure Warewulf to use the iPXE builds from there. For example,

tftp:
  ipxe:
    "00:00": /usr/local/share/ipxe/undionly.kpxe
    "00:07": /usr/local/share/ipxe/ipxe-snponly-x86_64.efi
    "00:09": /usr/local/share/ipxe/ipxe-snponly-x86_64.efi
    00:0B: /usr/local/share/ipxe/arm64-efi/snponly.efi

After that, you’ll need to rm /var/lib/tftpboot/warewulf/* and wwctl configure tftp.

@alansill
Copy link

The current tftp section in our warewulf.conf reads as follows. Is it required to change the tftproot setting, or should we also remove the systemd name or alter how systemd calls or interacts with tftp?

tftp:
  enabled: true
  tftproot: /var/lib/tftpboot
  systemd name: tftp
  ipxe:
    "00:00": undionly.kpxe
    "00:07": ipxe-snponly-x86_64.efi
    "00:09": ipxe-snponly-x86_64.efi
    "00:0B": arm64-efi/snponly.efi

There is also a path in the paths area we could presumably change for ipxesource. Would that work and/or be cleaner?

paths:
  bindir: /usr/bin
  sysconfdir: /etc
  localstatedir: /var/lib
  ipxesource: /usr/share/ipxe
  srvdir: /var/lib
  firewallddir: /usr/lib/firewalld/services
  systemddir: /usr/lib/systemd/system
  wwoverlaydir: /var/lib/warewulf/overlays
  wwchrootdir: /var/lib/warewulf/chroots
  wwprovisiondir: /var/lib/warewulf/provision
  wwclientdir: /warewulf

@anderbubble anderbubble added the stake:ciq CIQ is a stakeholder of this issue label Mar 20, 2024
@anderbubble anderbubble modified the milestones: v4.5.1, v4.6.0 Apr 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation stake:ciq CIQ is a stakeholder of this issue
Projects
None yet
Development

No branches or pull requests

2 participants