How Razor works

There are five key steps for provisioning nodes with Razor.

Figure 1. Razor identifies a node

Graphic showing a server identified by its metadata.

When a new node appears, Razor discovers its characteristics by booting it with the Razor microkernel and using Facter to inventory its facts.

Figure 2. The node is tagged

Graphic showing a server tagged based on its metadata.

The node is tagged based on its characteristics. Tags contain a match condition — a Boolean expression that has access to the node’s facts and determines whether the tag is to be applied to the node or not.

Figure 3. The node tags match a Razor policy

Graphic showing a server with tags A and B matching to a policy with tags A and B.
Node tags are compared to tags in the policy table. The first policy with tags that match the node’s tags is applied to the node.
Figure 4. Policies pull together all the provisioning elements

Graphic showing that repositories, tasks, brokers, tags, and miscellaneous data are all governed by policies.
Figure 5. Razor provisions the node

Graphic showing a server provisioned with Puppet and Windows.
The node is now installed. If you choose, you can hand off management of the node to Puppet Enterprise.

Razor system requirements

The Razor server and client are supported on these operating systems.

Component Supported OS
Server
  • RHEL 6 and 7

  • CentOS 6 and 7

Client
  • Windows 2008 R2 Server
  • Windows 2012 R2 Server
  • Windows 2016 Server
  • ESXi 5.5
  • RHEL 6 and 7
  • CentOS 6 and 7
  • Debian Wheezy

Pre-requisites for machines provisioned with Razor

To successfully install an operating system on a machine using Razor, the machine must meet these specifications.

  • Have at least 512MB RAM.

  • Be supported by the operating system you're installing.

  • Be able to successfully boot into the microkernel. The microkernel is based on CentOS 7, 64-bit only, and supports the x86-64 Intel architecture.

  • Be able to successfully boot the iPXE firmware.