Forge Home


Razor puppet module


110,900 latest version

1.6 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 0.11.0 (latest)
  • 0.10.2
  • 0.10.1
  • 0.10.0
  • 0.6.1
  • 0.6.0
  • 0.4.1
  • 0.4.0
  • 0.3.0
  • 0.2.1
  • 0.2.0
  • 0.1.4
  • 0.1.3
  • 0.1.1
  • 0.1.0
released Dec 17th 2013

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'puppetlabs-razor', '0.11.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add puppetlabs-razor
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install puppetlabs-razor --version 0.11.0

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Tags: ubuntu, razor


puppetlabs/razor — version 0.11.0 Dec 17th 2013

Razor Module

Puppet Razor module will installation the Razor server on EL6, Debian 7, and Ubuntu 12.04, or newer versions of those platforms. It should be reasonably portable across platforms, and has decent support for failing well on unsupported platforms.

It is considered part of the overall Project Razor infrastructure, so you can get help using the module or enhancing it over at the main Project Razor site on GitHub.


The puppet module tool in Puppet Enterprise 2.5.0+ and Puppet 2.7.14+ resolves dependencies automatically.

Puppet module dependencies for razor module:


Install puppetlabs-razor module and dependencies into module_path:

$ puppet module install puppetlabs-razor
Preparing to install into /etc/puppet/modules ...
Downloading from ...
Installing -- do not interrupt ...
└─┬ puppetlabs-razor (v0.7.0)
  └─┬ puppetlabs-java (v1.0.1)
    └── puppetlabs-stdlib (v4.1.0)

Then, on your Puppet master, add razor class to target node -- or just use puppet apply as normal:

node razor_system {
  include razor

Post-Install Setup

Once the Razor server is installed, you have a handful of tasks to complete:

  1. Install PostgreSQL and create a Razor database.
    • razor-server requires a TCP connection to the database, due to JDBC driver limitations.
  2. cp /opt/razor/config.yaml.sample /opt/razor/config.yaml
  3. Edit that file to reflect your local settings.
  4. Run razor-admin -e production migrate-database to update the database content.
  5. Configure your DHCP service.

At that point everything should be working correctly.

Razor Client

This module does not install the Razor client, used to interact with the server. This is available as a Ruby gem, requiring Ruby 1.9.3, and is usually installed on developer workstations rather than the Razor server system.

Installing this is left as an exercise to the reader, but:

puppet resource package name=razor-client provider=gem ensure=latest


  • libarchive: set the package name for libarchive explicitly.
    • libarchive is require for ISO unpacking; if your system is not supported by autodetection you can set a manual package name instead.


A wide array of folks have contributed to the Razor module, including a pile of hugely valuable external contributions. The list was getting too long to maintain inline, but you can see the full list of contributors in the CONTRIBUTORS file.