Supported operating systems

Puppet Enterprise supports various operating systems depending on the role a machine assumes in your infrastructure.

Supported operating systems

When choosing an operating system, first consider what role the machine will assume. Different roles support different operating systems/architectures.

  • Supported Puppet master platforms
  • Supported Puppet agent platforms
  • Supported Puppet agents on network device platforms

Puppet master platforms

The Puppet master role can be installed on the following operating systems/architectures.

Operating system Versions Architecture
Red Hat Enterprise Linux 6, 7 x86_64
CentOS 6, 7 x86_64
Oracle Linux 6, 7 x86_64
Scientific Linux 6, 7 x86_64
SUSE Linux Enterprise Server 11 (SP1/SP2), 12 (SP1/SP2) x86_64
Ubuntu 12.04, 14.04, 16.04 x86_64

Puppet agent platforms

The Puppet agent role can be installed on the following operating systems/architectures.

Operating system Versions Architecture
Red Hat Enterprise Linux 4, 5, 6, 7
CentOS 5, 6, 7
  • x86_64
  • i386 for 5, 6
Oracle Linux 5, 6, 7
  • x86_64
  • i386 for 5, 6
Scientific Linux 5, 6, 7
  • x86_64
  • i386 for 5, 6
SUSE Linux Enterprise Server 11 (SP1/SP2), 12 (SP1/SP2)
Solaris 10 (update 9 or later), 11
  • SPARC
  • i386
Ubuntu 12.04, 14.04, 16.04, 16.10
  • x86_64
  • i386
Fedora 23, 24, 25
  • x86_64
  • i386
Debian Wheezy (7), Jessie (8)
  • x86_64
  • i386
Microsoft Windows (Server OS) 2008, 2008R2, 2012, 2012R2, 2012R2 core, 2016
  • x86_64
  • i386
Microsoft Windows (Consumer OS) Vista, 7, 8, 8.1, 10
  • x86_64
  • i386
Mac OS X 10.10, 10.11, macOS Sierra x86_64
AIX 5.3, 6.1, 7.1, 7.2 Power

Note: Some operating systems require an active subscription with the vendor’s package management system (e.g., the Red Hat Network) to install dependencies.

Supported network devices

The Puppet agent role can be installed on the following network devices/operating systems.

Operating system support life cycles

Operating support life cycles vary depending on whether the device is a Puppet master or Puppet agent.

Puppet agent and operating system support life cycles

Puppet ends platform-specific support for Puppet agent at the platform vendor’s end-of-life (EOL) date.

For example, Fedora 20 reached its EOL on June 23, 2015. As of that date, Puppet stopped testing and providing fixes, updates, and support for Puppet Enterprise and open source Puppet versions of that agent.

On platforms where the vendor does not publish EOL dates, we support Puppet agent on the two most recent releases of a platform (e.g Mac OS X 10.10 and 10.11). (When Mac OS 10.12 launches, we will send a notice of the deprecation plan for Mac OS X 10.10).

Puppet may choose to continue to support certain agent operating systems after the platform vendor’s EOL solely at our discretion.

In all cases, we will announce a Puppet agent platform’s EOL at least 90 days before Puppet’s EOL date for the platform.

Puppet master and operating system support life cycles

Puppet aligns Puppet Enterprise master platform support to the Puppet Enterprise support lifecycle. In general, Puppet supports a Puppet Enterprise master platform until the EOL date for a Puppet Enterprise version.

However, if a PE master platform’s vendor EOL date is more than 6 months sooner than its PE Version’s EOL date, we may, at our discretion, end support for that master platform at the platform vendor’s EOL date.

In all cases, we will announce a PE master platform’s EOL at least 6 months before Puppet’s EOL date for the platform.

Upcoming platform end-of-life (EOL)

In accordance with our operating system support lifecycle policy, platform-specific support will end on the specified EOL dates, as listed below.

At EOL, Puppet will stop providing agents, masters, patches, fixes and security updates for the operating system.

Operating system PE agent and/or master OS vendor's EOL Puppet's EOL
Fedora 22 Agent 7/19/2016 11/30/2016
Mac OS X 10.9 Agent 11/30/2016
Ubuntu 15.10 (Wily) Agent 7/28/2016 11/30/2016
Ubuntu 10.04 (Lucid) Agent 4/30/2015 12/31/2016
Ubuntu 12.04 (Precise) Agent, Master April 2017 4/30/2017
Windows Server 2003 Agent for 3.8 (not >=2015.2) 7/14/2015 12/31/2016
Debian 6 (Squeeze) Agent and Master for 3.8 (not >=2015.2) 2/29/2016 12/31/2016
SLES 10 Agent 7/31/2016 12/31/2016
EL (RHEL, CentOS, Scientific Linux, Oracle Linux) 4 Agent 3/31/2017 3/31/2017
AIX 5.3 Agent 4/30/2012 6/30/2017

Performing major OS upgrades when Puppet Enterprise is installed

If you have Puppet Enterprise installed, take extra precautions before performing a major upgrade of your machine’s operating system.

In this context, a major OS upgrade refers to an upgrade to a new whole version, such as an upgrade from CentOS 6.0 to CentOS 7.0; it does not refer to a minor version upgrade (e.g., CentOS 6.5 to CentOS 6.6). A major OS upgrade typically requires a new version of PE.

Performing major upgrades of your OS while PE is installed can cause problems with PE. To perform an OS upgrade, you’ll need to perform the following steps:

  1. Back up your databases and other PE files.
  2. Perform a complete uninstall (including the -p -d uninstaller option).
  3. Upgrade your OS.
  4. Install PE.
  5. Restore your backup.

Dependencies and OS-specific details

When you install PE or a Puppet agent, the following OS packages are also installed from the various OS repos.

If the machine you’re installing on has internet access, they will be set up during PE installation. If your machine doesn’t have internet access, you must manually install these dependencies.

Centos

  All Nodes Master Nodes Console Nodes Console/Console DB Nodes
pciutils x      
system-logos x      
which x      
libxml2 x      
dmidecode x      
net-tools x      
curl   x x  
mailcap   x x  
libjpeg   x   x
libtool-ltdl   x x  
unixODBC   x x  
libxslt       x
zlib x      

RHEL

  All Nodes Master Nodes Console Nodes Console/Console DB Nodes
pciutils x      
system-logos x      
which x      
libxml2 x      
dmidecode x      
net-tools x      
cronie (RHEL 6, 7) x      
vixie-cron (RHEL 4, 5) x      
curl   x x  
mailcap   x x  
libjpeg   x   x
libtool-ltdl (RHEL 7)   x x  
unixODBC (RHEL 7)   x x  
libxslt       x
zlib x      
gtk2   x    

SLES

  All Nodes Master Nodes Console Nodes Console/Console DB Nodes
pciutils x      
pmtools x      
cron x      
libxml2 x      
net-tools x      
libxslt x x   x
curl   x x  
libjpeg   x   x
db43   x x  
unixODBC   x x  
zlib x      

Ubuntu

  All Nodes Master Nodes Console Nodes Console/Console DB Nodes
pciutils x      
dmidecode x      
cron x      
libxml2 x      
hostname x      
libldap-2.4-2 x      
libreadline5 x      
file   x x  
libmagic1   x x  
libpcre3   x x  
curl   x x  
perl   x x  
mime-support   x x  
libcap2   x x  
libjpeg62   x   x
libxslt1.1       x
libgtk2.0-0   x x x
ca-certificates-java   x x x
openjdk-7-jre-headless*   x x x
libossp-uuid16   x x x
zlib x      

*For Ubuntu 10.04 and Debian 6, use openjdk-6-jre-headless.

AIX

Before installing the Puppet agent on AIX systems, install the following packages on AIX systems.

These packages are required to install and run the Puppet agent on AIX systems.

  • bash
  • zlib
  • readline
  • curl
  • OpenSSL

Warning: For cURL and OpenSSL, you must use the versions provided by the “AIX Toolbox Cryptographic Content” repository, which is available via IBM support. Note that the cURL version must be 7.9.3. Do not use the cURL version in the AIX toolbox package for Linux applications, as that version does not include support for OpenSSL.

To install the bash, zlib, and readline packages on your selected node directly, you can run rpm -Uvh with the following URLs (note that the RPM package provider on AIX must be run as root):

  • ftp://ftp.software.ibm.com/aix/freeSoftware/aixtoolbox/RPMS/ppc/bash/bash-3.2-1.aix5.2.ppc.rpm
  • ftp://ftp.software.ibm.com/aix/freeSoftware/aixtoolbox/RPMS/ppc/zlib/zlib-1.2.3-4.aix5.2.ppc.rpm
  • ftp://ftp.software.ibm.com/aix/freeSoftware/aixtoolbox/RPMS/ppc/readline/readline-6.1-1.aix6.1.ppc.rpm (AIX 6.1 and 7.1 only)
  • ftp://ftp.software.ibm.com/aix/freeSoftware/aixtoolbox/RPMS/ppc/readline/readline-4.3-2.aix5.1.ppc.rpm (AIX 5.3 only)

If you are behind a firewall or running an http proxy, the above commands may not work. Instead, use the AIX toolbox packages download available from IBM.

GPG verification will not work on AIX, the RPM version used by AIX (even 7.1) is too old. The AIX package provider doesn’t support package downgrades (installing an older package over a newer package). Avoid using leading zeros when specifying a version number for the AIX provider (i.e., use 2.3.4 not 02.03.04).

The PE AIX implementation supports the NIM, BFF, and RPM package providers. Check the type reference for technical details on these providers.

Solaris

Solaris support is agent only.

For Solaris 10, the following packages are required:

  • SUNWgccruntime
  • SUNWzlib
  • In some instances, bash may not be present on Solaris systems. It needs to be installed before running the PE installer. Install it via the media used to install the OS or via CSW if that is present on your system. (CSWbash or SUNWbash are both suitable.)

For Solaris 11 the following packages are required:

  • system/readline
  • system/library/gcc-45-runtime
  • library/security/openssl

These packages are available in the Oracle Solaris release repository (enabled by default on Solaris 11). The PE installer will automatically install them; however, if the release repository is not enabled, the packages will need to be installed manually.

↑ Back to top