PXE Reboot Centriq 2400

The correct command to set PXE mode

The EFI firmware running on centriq 2400 doesn't support legacy mode. Refer to [QFD2400] BMC ignores bootdev and bootflag. It means the following command to set force_pxe boot wouldn't work.

$ ipmitool -I lanplus -U XXX -P YYY -H NN.NN.NN.NN chassis bootparam set bootflag force_pxe

And the following command is the correct form of ipmi command to set PXE mode for an EFI machine. Refer to Use efi mode in ipmi pxe commands

$ ipmitool -I lanplus -U XXX -P YYY -H NN.NN.NN.NN chassis bootdev pxe options=efiboot

PXE Reboot using mr-provisioner

Here are the steps to 'PXE Reboot' Centriq 2400 servers with mr-provisioner:

  1. Set machine Architecture to 'arm64' and Subarchitecture to 'grub-efi-upstream-2.02'. The subarchitecture should have 'Efiboot' enabled.
  2. Choose the Kernel and initrd images you want to use.
  3. Make sure 'Netboot enabled' is on.
  4. Click 'PXE Reboot' button to boot from PXE server.

When PXE Rebooting, if you see system boots off 'HTTP' and failover to 'Disk', you may try the following work around.

Failed 'PXE Reboot' boot log:

>>Checking Media Presence......
>>Media Present......
>>Start HTTP Boot over IPv4
[TSE] Entering CheckForDeviceNeedRepair()
[TSE] CheckForDeviceNeedRepair() : LocateDevicePath Status :EFI_SUCCESS
[TSE]Entering MatchDPHandleWithDrvHlthHndls()
[TSE]MatchDPHandleWithDrvHlthHndls():gBS->LocateHandleBuffer Status:EFI_SUCCESS No of handles:2
[TSE]Exiting MatchDPHandleWithDrvHlthHndls()

[TSE] CheckForDeviceNeedRepair() : MatchDPHandleWithDrvHlthHndls is FALSE For Handle:13164598Checkpoint D9
ERROR: Boot option loading failed
Installing ACPI 2.0: EFI_SUCCESS, 7130000
Checkpoint AD
BDS.SaveMemoryTypeInformation(17F53B08)
Unknown.Entry(7112400)
error: no suitable video mode found.

Work around: 

Enter BIOS setup. Don't use 'PXE Reboot' button as it changes boot options. Power off the machine with 'Power off' button, and then power it on. Monitor output from serial console, follow the following instruction to enter BIOS setup.

Version 2.19.1268. Copyright (C) 2017 American Megatrends, Inc.
BIOS Date: 11/01/2017 08:00:01 Ver: 0ACJA501
EVALUATION COPY.
Press <DEL> or <ESC> to enter setup

Navigate to 'Advanced → Network Stack Configuration', disable 'HTTP Support' options.

Navigate to 'Boot → Boot Option Priorities', make sure 'UEFI: PXE IP4 EMAC SNP Controller' has higher priority then other network boot options.

Save changes and exit. Click 'pxe reboot' button again. When it works, you should see the following output from serial console.

>>Checking Media Presence......
>>Media Present......
>>Start PXE over IPv4.
Station IP address is 10.101.2.224

Server IP address is 10.101.1.1
NBP filename is graeme/mlab-grubaa64-upstream-2.02.efi.7ccf5bba
NBP filesize is 2463744 Bytes

>>Checking Media Presence......
>>Media Present......
Downloading NBP file...


More info about boot and boot order:

'PXE Reboot' and 'Reboot' from MrP change boot order for the next boot.  They only change it once, and the changes are temporary. Boot order set in BIOS wouldn't be touched.

Debian/CentOS installer will add a new boot entry called debian/centos on the top of the BIOS boot entries.

Soft reboot from OS or 'Power on' doesn't change boot order, it will boot whatever is on the top your boot entries set in BIOS.