Installing Puppet: Debian and Ubuntu

Included in Puppet Enterprise 3.8. A newer version is available; see the version menu above for details.

Note: This document covers open source releases of Puppet version 3.8 and lower. For current versions, you should see instructions for installing the latest version of Puppet or installing Puppet Enterprise.

First

Before installing Puppet, review the pre-install tasks.

Supported Versions

Puppet publishes and tests open-source Puppet 3.8 packages for the following versions of Debian to apt.puppetlabs.com:

  • Debian 7 “Wheezy” (previous stable release)
  • Debian 6 “Squeeze” (obsolete stable release)

Puppet publishes and tests packages for the following versions of Ubuntu to apt.puppetlabs.com:

  • Ubuntu 14.04 LTS “Trusty Tahr”
  • Ubuntu 12.04 LTS “Precise Pangolin”

Ubuntu 10.04 LTS reached its end-of-life in April 2015.

Puppet Enterprise support: PE 3.8 supports these operating systems, but supports masters only on 64-bit editions of Ubuntu. Newer versions of Puppet Enterprise support more agents on more recent versions of Debian and Ubuntu, and masters on more recent versions of Ubuntu.

Users of out-of-production versions might have vendor packages of Puppet available, but can’t use our provided packages.

To install on other operating systems, see the product navigation.

Step 1: Enable the Puppet Package Repository

The newest versions of Puppet can be installed from the apt.puppetlabs.com package repository.

To enable the repository:

  1. Download the “puppetlabs-release” package for your OS version.
    • You can see a full list of these packages on the front page of https://apt.puppetlabs.com/. They are all named puppetlabs-release-<CODE NAME>.deb. (For Ubuntu releases, the code name is the adjective, not the animal.)
    • Architecture is handled automatically; there is only one package per OS version.
  2. Install the package by running dpkg -i <PACKAGE NAME>.
  3. Run apt-get update to get the new list of available packages.

For example, to enable the repository for Ubuntu 12.04 Precise Pangolin:

wget https://apt.puppetlabs.com/puppetlabs-release-precise.deb
sudo dpkg -i puppetlabs-release-precise.deb
sudo apt-get update

To enable the repository for Ubuntu 14.04 Trusty Tahr:

wget https://apt.puppetlabs.com/puppetlabs-release-trusty.deb
sudo dpkg -i puppetlabs-release-trusty.deb
sudo apt-get update

Optionally: Enable Prereleases

To test release candidate (RC) versions of Puppet and related projects, you can enable the prerelease repo, which is disabled by default. Note that RCs can contain unexpected changes, so be careful.

After installing the repos, open your /etc/apt/sources.list.d/puppetlabs.list file for editing. Locate and uncomment the line that begins with deb and ends with devel:

# Puppetlabs devel (uncomment to activate)
deb https://apt.puppetlabs.com precise devel
# deb-src https://apt.puppetlabs.com precise devel

To disable the prerelease repo, re-comment the line.

Step 2: Install Puppet on the Puppet Master Server

(Skip this step for a standalone deployment.)

On your Puppet master, run:

sudo apt-get install puppetserver

This installs Puppet, its prerequisites, and Puppet Server, a JVM-based Puppet master server that’s ready for production.

Note: Puppet 3.8 is compatible with Puppet Server 1.1. Puppet Server 2 and newer require Puppet 4.

Do not start Puppet Server yet.

Upgrading

Note: Read our tips on upgrading before upgrading your Puppet deployment.

To upgrade a Puppet master to the latest version of Puppet 3, run:

sudo apt-get update
sudo puppet resource package puppetmaster ensure=latest

After upgrading, restart Puppet Server.

Step 3: Install Puppet on Agent Nodes

On your Puppet agents, run:

sudo apt-get install puppet

This installs Puppet and an init script (/etc/init.d/puppet) that runs the Puppet agent daemon.

Do not start the puppet service yet.

Upgrading

Note: Read our tips on upgrading before upgrading your Puppet deployment.

To upgrade a Puppet agent to the latest version of Puppet 3, run:

sudo apt-get update
sudo puppet resource package puppet ensure=latest

After upgrading, restart the puppet service.

Next

At this point, Puppet is installed, but it isn’t configured or running. You should now do the post-install tasks.

↑ Back to top