Unable to boot EFI Configured hosts post provisioning

Problem:
For some reason I am unable to boot from EFI configured hosts after they have been installed and the OS installed. Seems to be for any EFI configured host that is being provisioning using Foreman. I am not sure if this is a template association issue or what, any direction on this would be helpful. Thanks!

Expected outcome:
Able to boot the host once configured and the OS installed.

Foreman and Proxy versions:
Foreman and Proxy plugin versions:
foreman-3.6.1-1.el8.noarch
foreman-cli-3.6.1-1.el8.noarch
foreman-debug-3.6.1-1.el8.noarch
foreman-dynflow-sidekiq-3.6.1-1.el8.noarch
foreman.domain.com-apache-1.0-80.noarch
foreman.domain.com-foreman-client-1.0-80.noarch
foreman.domain.com-foreman-proxy-1.0-80.noarch
foreman.domain.com-foreman-proxy-client-1.0-80.noarch
foreman.domain.com-puppet-client-1.0-80.noarch
foreman.domain.com-qpid-broker-1.0-1.noarch
foreman.domain.com-qpid-router-server-1.0-1.noarch
foreman-installer-3.6.1-1.el8.noarch
foreman-installer-katello-3.6.1-1.el8.noarch
foreman-postgresql-3.6.1-1.el8.noarch
foreman-proxy-3.6.1-1.el8.noarch
foreman-release-3.6.1-1.el8.noarch
foreman-selinux-3.6.1-1.el8.noarch
foreman-service-3.6.1-1.el8.noarch
foreman-vmware-3.6.1-1.el8.noarch
katello-4.8.1-1.el8.noarch
katello-certs-tools-2.9.0-1.el8.noarch
katello-client-bootstrap-1.7.9-1.el8.noarch
katello-common-4.8.1-1.el8.noarch
katello-debug-4.8.1-1.el8.noarch
katello-default-ca-1.0-1.noarch
katello-repos-4.8.1-1.el8.noarch
katello-selinux-4.0.2-3.el8.noarch
katello-server-ca-1.0-1.noarch

Distribution and version:
NAME=“CentOS Stream”
VERSION=“8”
ID=“centos”
ID_LIKE=“rhel fedora”
VERSION_ID=“8”
PLATFORM_ID=“platform:el8”
PRETTY_NAME=“CentOS Stream 8”
ANSI_COLOR=“0;31”
CPE_NAME=“cpe:/o:centos:centos:8”
HOME_URL=“https://centos.org/
BUG_REPORT_URL=“https://bugzilla.redhat.com/
REDHAT_SUPPORT_PRODUCT=“Red Hat Enterprise Linux 8”
REDHAT_SUPPORT_PRODUCT_VERSION=“CentOS Stream”

Other relevant data:
None at the moment, please suggest if anything could be useful here.

This is the most recent line up of templates I tried:

This simply seems to be an issue with the EFI boot method, once I disabled and bypassed network boot, the server dropped right into the Grub boot menu and booted right up. Issue seems to be somewhere with the bootloader… I see the EFI boot partition is on sda1 → /boot/efi/EFI/redhat/grubx64.efi

Its seems to be a lower case/upper case issue on EFI. It seems to be presented as lowercase grub> ls (hd01)/ => efi/
if the uefi boot menu is edited to lower case it all works. Seems grub2 is ignoring case

its a fat filesystem issue (required for uefi)

Is this VMware?

Could be this issue: Pxe with uefi katello 3.16

Long story short: GRUB2 in combination with certain firmware has issues in finding ESP, thus can’t chainload bootloader from disk.

Workaround #1 (see link above): Replace GRUB2 binary on TFTP server and add connectefi scsi to global GRUB2 template

Wordaround #2 (only VMware): Set efi.quickBoot.enabled = FALSE for VM

yes its vmware for me

Both workarounds worked for me Thanks

We installed vmware-advanced GitHub - ananace/foreman_vmware_advanced: Foreman plugin to provide advanced VMWare configuration and that is now setting efi.quickBoot.enabled for each vm we create.

1 Like

Oh perfect!! That’ll work for now. Thanks for posting!!

Where (once added) does it add the ability to make those “Advanced” changes in the Provisioning?

Yes it does

As in where in Foreman does it as a section to make those changes/settings? I don’t see anywhere that it’s available.

Describes the settings

ananace commented Jun 2, 2023

You’d create the file /etc/foreman/plugins/foreman_vmware_advanced.yaml, and list all your VMX settings under the key :vmware_advanced in it, something like;

— :vmware_advanced: efi.quickBoot.enabled: ‘FALSE’

I should really write a blurb about the configuration in the readme, that entirely got forgotten while redoing the configuration for the plugin.

1 Like

Ah the missing peice! Perfect. Thanks man! Hopefully others find this useful too.