Install agents from the console

You can use the Puppet Enterprise (PE) console to install agents in *nix, macOS, and Windows nodes.

Before you begin
If you're installing an agent with a different OS than your primary server, you must declare the corresponding pe_repo class on the primary server, such as pe_repo::platform::el_7_x86_64. Declare these classes in the console at Node Groups > PE Master > Classes.

You must have permission to run the pe_boostrap task to install agents on nodes. The pe_boostrap::linux task is for *nix and macOS targets, while the pe_boostrap::windows task is for Windows targets.

Refer to the Limitations section of the pe_bootstrap task's Forge page for platform, PowerShell, and Microsoft .NET Framework requirements.

  1. In the PE console, go to Nodes > Add nodes > Install agents.
    Tip: These steps use the default pe_boostrap task to immediately install agents using one transport method (SSH or WinRM). If you want to schedule the installation, use SSH and WinRM concurrently, or specify task parameters (such as a custom certname or other parameters described on the pe_boostrap task's Forge page), click Advanced install. Make sure you accept the CSRs after installing agents.
  2. Select a transport method to remotely install the agent on the target node.
    • SSH for *nix and macOS
    • WinRM for Windows
  3. Enter the target host names and the credentials required to access them. You can specify multiple targets, but only one set of credentials.
    Important: If you use an SSH key, include the begin and end tags.
  4. Click Add nodes to install agents on the specified nodes. You can click Installation job started to view the task's job details.
    Agents are installed on the target nodes and then they automatically submit certificate signing requests (CSRs) to the primary server.
  5. After installing agents, CSRs are added to the Unsigned certificates list in the console. You must accept the certificates, as explained in Managing certificate signing requests.

Download and install agents using Puppet Plan

You can use the Puppet Enterprise (PE) console to download and install agents for your specified platform. To download and install an agent:

  1. Go to ORCHESTRATION > Plans.
  2. In the Plans text field add enterprise_tasks::add_platforms.
  3. Under Plan parameters  enter parameters and values for your plan. See Puppet Plan parameters and Puppet Plan parameters and possible values to fetch a Puppet agent.
  4. Run the plan to download the Puppet agent.
  5. SSH into the agent node you want to upgrade.
  6. Run the install script command to install the agent:
    cacert="$(puppet config print localcacert)"
    uri="https://$(puppet config print server):8140/packages/current/install.bash"
    
    curl --cacert "$cacert" "$uri" | sudo bash

Puppet Plan parameters

The following table lists supported platforms and the expected input types for the fields.

Platforms Fields Required (R)/ Optional (O) Validation

AIX

Amazon

Redhat

Fedora

RedhatFIPS

SLES

Solaris

os R Can’t be blank
os_version R Can’t be blank
target R Can’t be blank
architecture R Can’t be blank
agent_version O If provided, the puppet-agent of the given version will get fetched
codename O Not applicable

Debian

OSX

Ubuntu

os R Can’t be blank
os_version R Can’t be blank
target R Can’t be blank
architecture R Can’t be blank
codename R Can’t be blank
agent_version O If provided, the puppet-agent of the given version will get fetched

Windows

WindowsFIPS

os R Can’t be blank
os_version R Can’t be blank
target R Can’t be blank
architecture R Can’t be blank
agent_version O If provided, the puppet-agent of the given version will get fetched
codename O Not applicable

Puppet Plan parameters and possible values to fetch a Puppet agent

The following table lists supported platforms, and the expected values required for each platform to fetch a Puppet agent using Puppet Plan.

Platforms (R / O) fields Expected value
AIX R os aix
R os_version (should be passed in double quotes [“”]) 7.2
R architecture power
R target Server machine’s host name
O agent_version
O codename
Amazon R os amazon
R os_version (should be passed in double quotes [“”]) 2023
R architecture

x86_64

aarch64

R target Server machine’s host name
O agent_version
O codename
Debian R os debian
R os_version (should be passed in double quotes [“”])

10

11

12

R architecture

amd64

aarch64

R target Server machine’s host name
R codename

buster

bullseye

bookworm

O agent_version
Redhat R os el
R os_version (should be passed in double quotes [“”])

7

8

9

R architecture

x86_64

aarch64

ppc64le

R target Server machine’s host name
O agent_version
O codename
Fedora R os fedora
R os_version (should be passed in double quotes [“”])

36

40

R architecture x86_64
R target Server machine’s host name
O agent_version
O codename
OSX R os osx
R os_version (should be passed in double quotes [“”])

11

12

13

14

R architecture

x86_64

arm64

R target Server machine’s host name
R codename

bigsur

monterey

ventura

sonoma

O agent_version
RedhatFIPS R os redhatfips
R os_version (should be passed in double quotes [“”])

7

8

9

R architecture x86_64
R target Server machine’s host name
O agent_version
O codename
SLES R os sles
R os_version (should be passed in double quotes [“”])

12

15

R architecture x86_64
R target Server machine’s host name
O agent_version
O codename
Solaris R os solaris
R os_version (should be passed in double quotes [“”])

11

15

R architecture

i386

sparc

R target Server machine’s host name
O agent_version
O codename
Ubuntu R os ubuntu
R os_version (should be passed in double quotes [“”])

18.04

20.04

22.04

R architecture

amd64

aarch64

R target Server machine’s host name
R codename

bionic

focal

jammy

O agent_version
Windows R os windows
R os_version (should be passed in double quotes [“”]) 2016 (Field is required but the value is not used)
R architecture

x64

x86

R target Server machine’s host name
O agent_version
O codename
WindowsFIPS R os windowsfips
R os_version (should be passed in double quotes [“”]) 2016 (Field is required but the value is not used)
R architecture x64
R target Server machine’s host name
O agent_version
O codename