Forge Home

peadm

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

15,901 downloads

214 latest version

4.7 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

  • 3.17.0 (latest)
  • 3.16.1
  • 3.16.0
  • 3.15.1
  • 3.15.0
  • 3.14.0
  • 3.13.1
  • 3.13.0
  • 3.12.0
  • 3.11.1
  • 3.11.0
  • 3.10.0
  • 3.9.0
  • 3.8.0
  • 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 Feb 7th 2024
This version is compatible with:
  • Puppet Enterprise 2023.5.x, 2023.4.x, 2023.3.x, 2023.2.x, 2023.1.x, 2023.0.x, 2021.7.x, 2021.6.x, 2021.5.x, 2021.4.x, 2021.3.x, 2021.2.x, 2021.1.x, 2021.0.x
  • Puppet >= 7.0.0 < 9.0.0
  • , , , ,
Tasks:
  • agent_install
  • backup_classification
  • cert_data
  • cert_valid_status
  • code_manager
  • code_sync_status
  • divert_code_manager
  • and 23 more. See all tasks
Plans:
  • add_compiler
  • add_database
  • add_replica
  • configure
  • db_populate
  • install
  • modify_certificate
  • 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.17.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.17.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.

Download

Documentation

puppetlabs/peadm — version 3.17.0 Feb 7th 2024

Puppet Enterprise Administration Module (PEADM)

The Puppet Enterprise Administration Module (PEADM) contains a set of Bolt plans designed for deploying and managing Puppet Enterprise (PE) infrastructure. These plans automate key PE lifecycle activities to accelerate deployment and reduce the risk of human error.

You can use PEADM to deploy and manage PE installations for standard, large, and extra-large architectures.

Important: PEADM is compatible with PE 2019.8.1 and later versions. If your PE version is older than 2019.8.1 and you want to use PEADM, you must upgrade PE before converting your installation to a PEADM-managed installation.

Table of contents

Support

PEADM is a supported PE module. If you are a PE customer with the standard or premium support service, you can contact Support or your Technical Account Manager for assistance.

Overview

This is the standard workflow for installing PEADM.

  1. Install Bolt on a jump host.
  2. To create a Bolt project that includes the PEADM module, run:mkdir <YOUR_PROJECT> && cd <YOUR_PROJECT> && bolt project init <YOUR_PROJECT> --modules puppetlabs-peadm
  3. In the Bolt project directory, update the inventory.yaml file with connection information for the servers you plan to use for hosting PE infrastructure. For example:
---
groups:
  - name: puppet-enterprise-nodes
    config:
      transport: ssh
      ssh:
        host-key-check: false
        user: centos
        run-as: root
    targets:
      - pe-xl-core-0.lab1.puppet.vm
      - pe-xl-core-1.lab1.puppet.vm
      - pe-xl-core-2.lab1.puppet.vm
      - pe-xl-core-3.lab1.puppet.vm
      - name: pe-xl-compiler-0.lab1.puppet.vm
        uri: 10.234.6.45
      - name: pe-xl-compiler-1.lab1.puppet.vm
        uri: 10.234.14.131

What PEADM affects

  • The peadm::install plan adds a number of custom original identifier (OID) trusted facts to the certificates of deployed PE infrastructure nodes. These trusted facts are used by PEADM plans to identify nodes that host PE infrastructure components.
  • Depending on the scale of your architecture, up to four node groups may be created to configure puppet_enterprise class parameters for the following PE infrastructure components:
    • The primary server
    • The primary server replica
    • PostgreSQL nodes (database servers)
    • Compilers (compiler hosts are designated as belonging to availability group A or B)

What PEADM does not affect

  • PEADM does not impact regular PE operations. After using it to deploy a new PE installation or upgrade an existing one, PEADM is not required until you want to use it to upgrade PE or expand your installation.
  • Using PEADM to install PE or upgrade PE does not prevent you from using documented PE procedures such as setting up disaster recovery or performing a manual upgrade.

Requirements

  • PEADM is compatible with Puppet Enterprise 2019.8.1 or newer versions.
  • To use PEADM, you must first install Bolt version 3.17.0 or newer.
  • PEADM supports PE installations on the following operating systems: EL 7, EL 8, Ubuntu 18.04, or Ubuntu 20.04.
  • To successfully convert your current PE installation to a PEADM-managed installation, ensure that the PE setting for editing classifier configuration data is enabled. This setting is enabled by default on new PE installations, but it could be disabled if the relevant configuration was removed from your global hiera.yaml file. See the PE docs for more information.

Usage

For instructions on using PEADM plans, see the following PEADM docs:

Reference

To understand which architecture is right for you, see the following information on the Puppet documentation site:

To learn more about the PEADM module and its uses, see the following PEADM docs:

Getting help

License

This codebase is licensed under Apache 2.0. However, the open source dependencies included in this codebase might be subject to other software licenses such as AGPL, GPL2.0, and MIT.