document EFI boot process with correct ipxe binary

This commit is contained in:
2022-06-01 08:58:43 +02:00
parent 775faae55b
commit 8564e4c3a4
5 changed files with 103 additions and 7 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 127 KiB

After

Width:  |  Height:  |  Size: 132 KiB

View File

@@ -21,9 +21,9 @@ hnote over bootnode
endhnote
bootnode -> pxeserver : load PXE config tftp:/tftpboot/pxelinux.cfg/01-$MAC
note right
By manually setting a MAC or IP config the
boot menu can be customised or shortcut.
Most is managed by symlinks. There is the
By manually setting a MAC or IP config the
boot menu can be customised or shortcut.
Most is managed by symlinks. There is the
undocumented "link-to-lxprod.py" script for
manually linking MAC to hostname and hostname
to "lxprod". At some places this is done the
@@ -57,11 +57,14 @@ bootnode -> dhcp : DHCP request
dhcp -> bootnode : IP
bootnode -> sysdb : load iPXE menu http:/ipxe/v1/config?mac=$MAC
note right
Default selection by sydb boot
Default selection by sydb boot
property "local" or "netboot",
later installs Red Hat 7.9.
manually selectable are all
Red Hat 7 versions to install,
later automatically starts the
installer configured in sysdb
attribute "ipxe_installer".
Manually selectable are all
Red Hat 7 versions and Red Hat 8
alpha test version to install,
Windows, a selection of tools
and "HP SPP".
endnote

Binary file not shown.

After

Width:  |  Height:  |  Size: 130 KiB

View File

@@ -0,0 +1,88 @@
@startuml
actor admin
participant "UEFI Node" as bootnode
participant "QIP DHCP" as dhcp
participant "pxeserv01.psi.ch" as pxeserver
participant "boot00.psi.ch" as sysdb
participant "repo01.psi.ch" as reposerver
admin -> bootnode : boots up
hnote over bootnode
EFI
endhnote
bootnode -> dhcp : DHCP request
dhcp -> bootnode : IP + PXE boot location
bootnode -> pxeserver : load PXE kernel tftp:/tftpboot/shimx64.efi
bootnode -> pxeserver : load PXE kernel tftp:/tftpboot/grubx64.efi
hnote over bootnode
GRUB
endhnote
bootnode -> pxeserver : load PXE config tftp:/tftpboot/grub.cfg-01-$MAC
note right
By manually setting a MAC or IP config the
boot menu can be customised or shortcut.
end note
bootnode -> pxeserver : load PXE config tftp:/tftpboot/grub.cfg-$HEX-IP
bootnode -> pxeserver : load PXE config tftp:/tftpboot/grub.cfg
bootnode -> sysdb : load GRUB menu http:/grub/v1/config?mac=$MAC
note right
Default selection by sydb boot
property "local" or "netboot",
later automatically starts the
installer configured in sysdb
attribute "ipxe_installer".
Manually selectable are other
version of RHEL 7 and
"Windows and Tools Menus".
endnote
admin -> bootnode : selects "Windows and Tools Menus"
note left
Now the automatic installation kicks in,
but here we show the manual detour over iPXE.
end note
bootnode -> pxeserver : load iPXE kernel tftp:/tftpboot/boot00.lkrn
note right
https://git.psi.ch/linux-infra/ipxe-build
The following steps are by embed/pxe.ipxe
end note
hnote over bootnode
iPXE
endhnote
bootnode -> dhcp : DHCP request
dhcp -> bootnode : IP
bootnode -> sysdb : load iPXE menu http:/ipxe/v1/config?mac=$MAC
note right
Default selection by sydb boot
property "local" or "netboot",
later automatically starts the
installer configured in sysdb
attribute "ipxe_installer".
Manually selectable are all
Red Hat 7 versions and Red Hat 8
alpha test version to install,
Windows, a selection of tools
and "HP SPP".
endnote
bootnode -> reposerver : load initrd http:/iso/rhel-server-7.9-x86_64-dvd/images/pxeboot/initrd.img
note left
Automatic installation in GRUB
directly jumps here without iPXE
end note
bootnode -> reposerver : load kernel http:/iso/rhel-server-7.9-x86_64-dvd/images/pxeboot/vmlinuz
hnote over bootnode
Linux kernel
endhnote
bootnode -> reposerver : installation media http:/iso/rhel-server-7.9-x86_64-dvd/
bootnode -> sysdb : kickstart file http:/kickstart/v1/config?fqdn=$HOSTNAME&instrepo=rhel-server-7.9-x86_64-dvd
@enduml

View File

@@ -32,6 +32,11 @@ which distribution it is supposed to use. The menu offers other options as well,
e.g. an interactive iPXE shell and a memory test.
Sequence Diagram of the UEFI Boot Process
--------------------------------------------------
.. image:: _static/uefi_boot.png
Sequence Diagram of the BIOS (Legacy) Boot Process
--------------------------------------------------
.. image:: _static/legacy_boot.png