Onboard Edge Node Using USB-Assisted Boot#

If the BIOS does not support HTTPS boot, you can use the USB-assisted boot solution to load the iPXE image.

Note

This USB option is mutually exclusive with the HTTPS-assisted approach.

Prepare the USB drive one time, so that the platform can use the USB-based boot to download the iPXE image. Use any Linux*-based machine to do the following:

  1. Run following command to find the device identifier for the connected USB drive:

    lsblk --output NAME,TYPE,TRAN | grep disk| grep usb | awk '{print $1}'
    

    Note

    The output of the above command is the USB device identifier. If the identifier is different from sdb, for example, sdc, in any of the following commands where /dev/sdb is found, replace sdb with the correct device identifier, for example, /dev/sdc.

  2. Use the following command to download the iPXE EFI file from the provided source:

    wget https://tinkerbell-nginx.CLUSTER_FQDN/tink-stack/signed_ipxe.efi --no-check-certificate --no-proxy
    

    Note

    Replace CLUSTER_FQDN with the FQDN of the Edge Orchestrator.

  3. Clear the disk partition table:

    sudo dd if=/dev/zero of=/dev/sdb bs=512 count=1 conv=notrunc
    
  4. Initialize the GPT partition table:

    echo -e "g\nw\nY\n" | sudo gdisk /dev/sdb
    
  5. Format the USB drive:

    sudo mkfs.fat -F32 /dev/sdb
    
  6. Mount the USB drive:

    sudo mkdir -p /tmp/efidrive
    sudo mount /dev/sdb /tmp/efidrive
    
  7. Create boot directory and copy signed_ipxe.efi to the drive:

    sudo mkdir -p /tmp/efidrive/efi/boot
    sudo cp signed_ipxe.efi /tmp/efidrive/efi/boot/bootx64.efi
    
  8. Unmount the USB drive from the Linux machine:

    sudo umount /dev/sdb
    

Note

  • Replace /dev/sdb with the appropriate device identifier for your USB drive.

  • Replace CLUSTER_FQDN with the name of the domain that is used during installation.

  • If secure boot is enabled, enroll the certificates into BIOS as mentioned in the UEFI Secure Boot section.

  • You can plug in the same USB drive into multiple edge nodes to do the provisioning flow; you do not have to prepare the USB drive every time.

  • Ensure to unplug the USB stick once the edge node is provisioned.

Set USB Boot through iDRAC#

  1. In iDRAC, go to Configuration > Virtual Media > Attached Media.

  2. Set the drop-down option to Enabled.

  3. Set the Boot Order: In the Boot Order section, move the USB option to the top of the list to prioritize USB boot over UEFI HTTP boot.

  4. Save Changes: Click Apply to save the changes. Reboot the system for changes to reflect.

The system now boots through the iPXE environment.