13.2. Configuring the Foreman Discovery Plug-in
Prerequisites
Ensure the following are correctly configured before you configure the Foreman Discovery plug-in:
- Ensure that bare-metal provisioning is functional. See Chapter 11, Configuring the Provisioning Environment for more information. To test bare-metal provisioning, create a host entry with a MAC address and power on the system to provision it. After Foreman Discovery is configured, host creation will be automated.
- The network DHCP server must be able to serve unknown clients and it must point unknown clients to the TFTP server where the discovery image is stored. If Internet Systems Consortium (ISC) DHCP was installed via the capsule installer on the Red Hat Enterprise Linux host, this will already be configured. If you are using a different configuration or a different DHCP server, ensure the
nextserver
option is configured to return the correct TFTP server, which is under the Red Hat Satellite Server's control. - Satellite 6.0 has a template locking capability which prevents some templates from being edited or renamed because the application relies on their presence and name. The locked default PXELinux template prevents the configuration of Discovery. To circumvent this, start a Rails console on the Satellite Capsule and unlock the template, as described below:
# foreman-rake console > ct = ConfigTemplate.find_by_name("PXELinux global default"); ct.locked = false; ct.save! > exit
Procedure 13.1. To Configure the Foreman Discovery Plug-in:
- Click
and edit the PXELinux global default template. Add the following entries at the end of the template: LABEL discovery MENU LABEL Foreman Discovery MENU DEFAULT KERNEL boot/foreman-discovery-image-latest.el6.iso-vmlinuz APPEND rootflags=loop initrd=boot/foreman-discovery-image-latest.el6.iso-img root=live:/foreman.iso rootfstype=auto ro rd.live.image rd.live.check rd.lvm=0 rootflags=ro crashkernel=128M elevator=deadline max_loop=256 rd.luks=0 rd.md=0 rd.dm=0 rd.bootif=0 rd.neednet=0 nomodeset selinux=0 stateless foreman.url=FOREMAN_URL IPAPPEND 2
Theforeman.url
option on the APPEND line identifies the location of the Foreman instance. Ensure that this is set correctly in global settings or the discovered hosts will not register to Foreman.TheIPAPPEND 2
option is important because it adds theBOOTIF=MAC
option. This is reported by Facter asdiscovery_bootif
, which is a key fact used for provisioning. It is expected that the interface that it is booted from will be the provisioning interface as well. The same interface is used as the primary interface and is used to retrieve DNS configuration from DHCP. - Set the
ONTIMEOUT
parameter todiscovery
to make theforeman.url
option the default:ONTIMEOUT discovery
Alternatively, the discovery image can search for a DNS SRV record called_xforeman._tcp
. If the DNS server is configured for this, do not configure theforeman.url
option because it will override the DNS SRV record. The following is an example of the configuration for the ISC DNS server:_xforeman._tcp SRV 0 5 443 foreman
- Click
and then click to deploy the configuration file on the TFTP server. Important
The Foreman Discovery image does not support SELinux. Setselinux=0
in the template. The discovery image is read-only.