Docs / Puppet Open Source » Supported Platforms and System Requirements

Puppet Open Source » Supported Platforms and System Requirements

Puppet Open Source Supported Platforms

This page lists supported platforms for the open source version of Puppet. For Puppet Enterprise’s supported platforms visit the PE system requirements page.

Please contact Puppet Labs if you are interested in a platform not on this list.

See Installing Puppet for more details about the packages available for your platform(s).

Puppet 3.x and 4.x can run on the following platforms:

Linux

Red Hat Enterprise Linux (and Derivatives)

We publish official packages and run automated testing on the following versions:

Puppet Enterprise also supports RHEL 4, which does not receive packages for open source Puppet.

(Note that RHEL 5 requires an updated Ruby ≥ 1.8.7 from our yum repo.)

This information applies to RHEL itself, as well as any distributions that maintain binary compatibility with it, including but not limited to CentOS, Scientific Linux, Oracle Linux, and Ascendos.

Debian and Ubuntu

We publish official packages and run automated testing on the following versions:

Fedora

We publish official packages and run automated testing on the following versions:

  • Fedora 20

Other

  • SUSE Linux Enterprise Server, version 11 and higher
  • Gentoo Linux
  • Mandriva Corporate Server 4
  • ArchLinux

BSD

  • FreeBSD 4.7 and later
  • OpenBSD 4.1 and later

Other Unix

  • Mac OS X, version 10.7 (Leopard) and higher
  • Oracle Solaris, version 10 and higher
  • AIX, version 5.3 and higher
  • HP-UX

Windows

We publish official packages and run automated testing on the following versions:

We publish packages for the following versions, but do not run automated testing on them:

Ruby Versions

Puppet requires an MRI Ruby interpreter. Certain versions of Ruby are tested more thoroughly with Puppet than others, and some versions are not tested at all. Run ruby --version to check the version of Ruby on your system.

Starting with Puppet 4, puppet-agent packages do not rely on the OS’s Ruby version, as it bundles its own Ruby environment. You can install puppet-agent alongside any version of Ruby or on systems without Ruby installed. Likewise Puppet Enterprise does not rely on the OS’s Ruby version, as it bundles its own Ruby environment. You can install PE alongside any version of Ruby or on systems without Ruby installed. windows logo The Windows installers provided by Puppet Labs don’t rely on the OS’s Ruby version, and can be installed alongside any version of Ruby or on systems without Ruby installed.

Ruby version Puppet 3.x Puppet 4.x
2.2.x No Lightly Tested
2.1.x Tested (3.5 and higher) Tested
2.0.x Tested (3.2 and higher) Lightly Tested
1.9.3* Tested Lightly Tested
1.8.7 Tested No

* Ruby 1.9.3-p392 and up only. Unfortunately, Ubuntu Precise ships with 1.9.3-p0. If you’re using Precise with Puppet 3.x, we recommend using Puppet Enterprise or installing a third-party Ruby package.

Versions marked as “Tested” are recommended by Puppet Labs and are under automated test coverage. As of Puppet 4, where puppet-agent packages bundle Ruby, versions marked “Lightly Tested” are under reduced automated test coverage (specifically, spec tests only) – the Ruby version bundled with puppet-agent is the recommended version. Other versions are not recommended and we make no guarantees about their performance with Puppet.

Prerequisites

Puppet has a very small number of external dependencies:

Dependency Puppet 3.x Puppet 4.x
Facter Required Required
Hiera Required Required
rgen Optional Required

Rgen is only needed if you are using Puppet 4 (or Puppet ≥ 3.2 with parser = future enabled). The official Puppet Labs packages will install it as a dependency.

All other prerequisite Ruby libraries should come with any standard Ruby install. Should your OS not come with the complete standard library (or you are using a custom Ruby build), these include:

  • base64
  • cgi
  • digest/md5
  • etc
  • fileutils
  • ipaddr
  • openssl (>= 0.9.8o if using a 3.x Puppet master or newer)
  • strscan
  • syslog
  • uri
  • webrick
  • webrick/https
  • xmlrpc

↑ Back to top