Setting up Razor environment

This version is out of date. For current versions, see Puppet Enterprise support lifecycle.

This workflow describes a sample setup using dnsmasq. It’s not intended for production environments; however, you can use a similar workflow to set up Razor on any DHCP and TFTP service.

Warning: We recommend first testing Razor in a completely isolated test environment. Running a second DHCP server on your company’s network could bring down the network or replace a server with a fresh installation. See Protecting existing nodes for strategies on avoiding data loss.

Before you begin

Install Puppet Enterprise.

Install and configure dnsmasq DHCP/TFTP service

  1. Use YUM to install dnsmasq:

     yum install dnsmasq
  2. If it doesn’t already exist, create the directory /var/lib/tftpboot .
  3. Change the permissions for /var/lib/tftpboot:

     chmod 655 /var/lib/tftpboot

Temporarily disable SELinux to enable PXE boot

  1. Disable SELinux by changing the following setting in the file /etc/sysconfig/selinux:


    Note: Disabling SELinux is highly insecure and should only be done for testing purposes.

    Another option is to craft an enforcement rule for SELinux that will enable PXE boot but will not completely disable SElinux.

  2. Restart the computer and log in again.

Edit dnsmasq.conf to enable DHCP

  1. Edit /etc/dnsmasq.conf. You must provide a DHCP range as indicated in this file. For example, if you want an IP range from - with a 24 hour lease, your file should look like this:

    # Uncomment this to enable the integrated DHCP server, you need
    # to supply the range of addresses available for lease and optionally
    # a lease time. If you have more than one network, you will need to
    # repeat this for each network on which you want to supply DHCP
    # service.
  2. Indicating a range name can be helpful for more complex setups. However, this is not required.

    dhcp-range=range1,,,24h dhcp-range=range2,,,48h

Edit the dnsmasq configuration file to enable PXE boot

  1. Edit the file /etc/dnsmasq.conf, by adding the following line at the bottom of the file:

  2. Write and exit the file.
  3. Create the file /etc/dnsmasq.d/razor and add the following configuration information:

     # This works for dnsmasq 2.45
     # iPXE sets option 175, mark it for network IPXEBOOT
     # TFTP setup
  4. Enable dnsmasq on boot:

     chkconfig dnsmasq on
  5. Start the dnsmasq service:

     service dnsmasq start

Puppet sites use proprietary and third-party cookies. By using our sites, you agree to our cookie policy.