Forge Home


Bolt plans used to deploy an at-scale Puppet Enterprise architecture


204 latest version

5.0 quality score

Version information

  • 3.8.0 (latest)
  • 3.7.0
  • 3.6.0
  • 3.5.0
  • 3.4.0
  • 3.3.0
  • 3.2.0
  • 3.1.0
  • 3.0.1
  • 3.0.0
  • 2.5.0
  • 2.4.5
  • 2.4.4
  • 2.4.3
  • 2.4.2
  • 2.4.1
  • 2.4.0
  • 2.3.0
  • 2.2.1
  • 2.2.0
  • 2.1.1
  • 2.1.0
released Jun 21st 2022
This version is compatible with:
  • Puppet Enterprise 2021.6.x, 2021.5.x, 2021.4.x, 2021.3.x, 2021.2.x, 2021.1.x, 2021.0.x, 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x
  • Puppet >= 6.0.2 < 8.0.0
  • , , ,
  • agent_install
  • agent_upgrade
  • backup_classification
  • cert_data
  • cert_valid_status
  • code_manager
  • code_sync_status
  • and 23 more. See all tasks
  • add_compiler
  • add_database
  • add_replica
  • backup
  • convert
  • install
  • divert_code_manager
  • and 21 more. See all plans

Start using this module

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

Add this module to your Puppetfile:

mod 'puppetlabs-peadm', '3.8.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

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

Manually install this module globally with Puppet module tool:

puppet module install puppetlabs-peadm --version 3.8.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.



puppetlabs/peadm — version 3.8.0 Jun 21st 2022

Puppet Enterprise (pe) Administration (adm) Module

This Puppet module contains Bolt plans used to deploy and manage Puppet Enterprise infrastructure. Plans are provided to automate common lifecycle activities in order to increase velocity and reduce the possibility of human error incurred by manually performing these activities.

The peadm module is able to deploy and manage Puppet Enterprise 2019.x Standard, Large, and Extra Large architectures.

Table of Contents

  1. Expectations and support
  2. Overview
  3. Usage
  4. Reference
  5. Getting Help

Expectations and support

The peadm module is intended to be used only by Puppet Enterprise customers actively working with and being guided by Puppet Customer Success teams—specifically, the Professional Services and Solutions Architecture teams. Puppet Enterprise customers might be advised to begin using this tool after an introduction by their Technical Account manager (TAM) to the Solutions Architecture team or during a Professional Sevices (PS) engagement where the Puppet PS team aids and intructurs in the use of the tool. Independent use is not recommended for production environments without a comprehensive understanding of the peadm module.

The peadm module is a services-led tool that is supported through Puppet Enterprise's standard and premium service.


The normal usage pattern for peadm is as follows.

  1. Users set up a Bolt host from which they can run peadm plans. The Bolt host can be any machine that has ssh access to all of the PE nodes.
  2. Users run the peadm::install plan to bootstrap a new PE cluster. Depending on the architecture chosen, peadm may create some node groups in the classifier to set parameters on the built-in puppet_enterprise module, tuning it for large or extra large architectures.
  3. Users use and operate their PE cluster as normal. The peadm module is not used again until the next upgrade.
  4. When it is time to upgrade, users run the peadm::upgrade plan from their Bolt host to accelerate and aid in the upgrade process.

What peadm affects

  • The peadm::install plan adds a number of custom OID trusted facts to the certificates of PE infrastructure nodes as it deploys them. These trusted facts are later used by the plans to quickly and correctly identify nodes in particular roles.
  • Up to four node groups may be created to help configure puppet_enterprise class parameters for PE infrastructure roles. The most notable configuration is the designation of compilers as being either "A" or "B" nodes for availability.

What peadm does not affect

  • The peadm module is not required to exist or be present outside of the point(s) in time it is used to create a new PE cluster, or upgrade an existing cluster. No new Puppet classes or other persistent content not provided out-of-box by PE itself is applied to PE infrastructure nodes by the peadm module.
  • Having used the peadm module to install or to upgrade a PE cluster is not known to affect or curtail the ability to use any normal, documented PE procedures, e.g. failover to a replica, or manual upgrade of a cluster.


  • Puppet Enterprise 2019.8.1 or newer (tested with PE 2021.6)
  • Bolt 3.17.0 or newer (tested with Bolt 3.21.0)
  • EL 7, EL 8, Ubuntu 18.04, or Ubuntu 20.04
  • Classifier Data enabled. This PE feature is enabled by default on new installs, but can be disabled by users if they remove the relevant configuration from their global hiera.yaml file. See the PE docs for more information.


Follow the links below to usage instructions for each peadm plan.


Additional documentation and information pertaining to various aspects or elements of peadm.

Getting Help

  • If you find bugs with this module, please make use of issues in the project on GitHub
  • If you are a Puppet Enterprise (PE) customer that uses peadm to manage a deployment of PE and are currently having an outage or need assistance troubleshooting another issue, e.g. upgrades, contact the Support Team