Foreman never triggers PXE boot - Must be missing something

I installed foreman 3.13 freshly onto my ubuntu 20.04 LTS server. I have a physical HPE Proliant server that I’m trying to get to PXE boot. I can see the PXE request come into my ubuntu/foreman server, but nothing happens to the physical server.

I’m obviously doing something wrong here.

I configured a subnet

  • Name: TestSubnet
  • Description: My Test Subnet
  • Protocol: IPv4
  • Network Address:
  • Network Prefix: 24
  • Network Mask:
  • Gateway Address:
  • Primary DNS: empty
  • Secondary DNS: empty
  • IPAM: None
  • VLAN ID: empty
  • MTU: 1500
  • Link Delay: empty
  • Boot Mode: Static

I created an Operating System entry:

  • Name: TestCentos 7
  • Major Version: 7
  • Minor Version: empty
  • Description: empty
  • Family: Red Hat
  • Root Password Hash: SHA256
  • Architecture: x86_64

Partition Table:

  • Kickstart Default

Installation Media:

  • CentOS 7 mirror

Then i created a host entry:
Host Tab

  • Name: myserver
  • Organization: Default Organization
  • Location: Default Location
  • Host Group: empty
  • Deploy on: Bare Metal
  • Environment: production
  • Puppet Proxy: ubuntuserver.local
  • Puppet CA Proxy: ubuntuserver.local

OS Tab

  • Architecture: x86_64
  • Operating System: TestCentos 7
  • Build Mode: Ticked (Enable this host for provisioning)
  • Media: CentOS 7 mirror
  • Partition Table: Kickstart default
  • PXE Loader: (Tried several, PXELinux BIOS, PXELinux UEFI, Grub UEFI, Grub2 BIOS, Grub2 UEFI, Grub2 UEFI HTTP, iPXE UEFI HTTP) To be honest I’m not sure what value to set here, the server is trying UEFI HTTP boot so i tried options that seem to match that.
  • Custom Partition Table: empty
  • Root Password: set
  • Provisioning Templates: Clicked Resolve, returns Linux host_init_config default

Interfaces Tab
Added interface:

  • Type: Interface
  • MAC Address: 50:7c:6f:58:1f:da (physical servers mac address)
  • Device Identifier: empty
  • DNS Name: empty
  • Domain: local
  • IPv4 Subnet: TestSubnet
  • IPv6 Subnet: No Subnets
  • IPv4 Address:
  • IPv6 Address: empty
  • Managed: ticked
  • primary: ticked
  • provision: ticked
  • virtual nic: unticked

The host shows as “Pending Installation”.

My Foreman was a basic install, has the following config/plugins installed:

  1. [✓] Configure foreman
  2. [✓] Configure foreman_cli
  3. [✓] Configure foreman_cli_puppet
  4. [✓] Configure foreman_proxy
  5. [✓] Configure puppet
  6. [✓] Configure foreman_plugin_puppet

The server I’m trying to install this on is a HPE Proliant DL320 Gen 11

Is there any logs or anything that I can check to at least help point me in the right direction?

Any advice would be great.


make sure you did this

In the Foreman web UI, navigate to Hosts > Provisioning Templates and click Build PXE Default .

it’S mentioned in

otherwise everything seems pretty fine to me