Installing Puppet Enterprise

30 minutes
  • 3 Learning Objectives

About this Hands-on Lab

Puppet Enterprise is a robust configuration management and automation tool, that allow use to enforce consistent configurations across multiple platform. But before we can get started using Puppet Enterprise, we have to install it! In this hands-on lab, we’ll be setting up a Puppet Enterprise Master of Masters and preparing it to help deploy its Puppet agent service across multiple operating systems. To test this, we’ll also deploy the Puppet agent on an additional node.

Learning Objectives

Successfully complete this lab by achieving the following learning objectives:

Install Puppet Enterprise on the “Puppet Master” Server

Text-Mode

Pull down the installation file:

$ wget --content-disposition 'https://pm.puppetlabs.com/puppet-enterprise/2018.1.7/puppet-enterprise-2018.1.7-el-7-x86_64.tar.gz'

Expand the file:

$ tar -xf puppet-enterprise-2018.1.7-el-7-x86_64.tar.gz

Run the installation script:

$ cd puppet-enterprise-2018.1.7-el-7-x86_64
$ sudo ./puppet-enterprise-installer
...
How to proceed? [1]: 1

Update the password and DNS alt names:

"console_admin_password": "password"
...
"pe_install::puppet_master_dnsaltnames": ["puppet", "master"]

Save and exit, then continue installation:

Proceed with installation using the pe.conf at
/home/cloud_user/puppet-enterprise-2018.1.7-el-7-x86_64/
conf.d/custom-pe.conf? [Yn]y

Update the PATH for sudoers:

$ sudo $EDITOR /etc/sudoers.d/puppet_path

Defaults    secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/opt/puppetlabs/bin

Save and exit the file, then refresh the Bash session:

$ bash

Perform a Puppet run twice:

$ sudo puppet agent -t
$ sudo puppet agent -t

Graphical-Mode

Update the /etc/hosts file:

$ sudo $EDITOR /etc/hosts

127.0.0.1   puppet.ec2.internal localhost localhost.localdomain localhost4 localhost4.localdomain4

Save and exit.

Pull down the installation file:

$ wget --content-disposition 'https://pm.puppetlabs.com/puppet-enterprise/2018.1.7/puppet-enterprise-2018.1.7-el-7-x86_64.tar.gz'

Expand the file:

$ tar -xf puppet-enterprise-2018.1.7-el-7-x86_64.tar.gz

Run the installation script:

$ cd puppet-enterprise-2018.1.7-el-7-x86_64
$ sudo ./puppet-enterprise-installer
...
How to proceed? [1]: 2

Do not navigate to the provided URL, instead go to https://PUBLIC_IP_OF_MASTER:3000.

Set the DNS alt names and the password using the graphical prompt. Click Continue.

Review the plan, then click Continue again.

Click Deploy Now. Installation will take about 8 minutes.

Return to the command line and update the PATH for sudoers:

$ sudo $EDITOR /etc/sudoers.d/puppet_path

Defaults    secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/opt/puppetlabs/bin

Save and exit the file, then refresh the Bash session:

$ bash
Update the Puppet Master to Support Ubuntu 18.04 Agent Architecture

Access the Puppet Enterprise console through HTTPS and the public IP address of the Puppet master server.

Go to Classification.

Select the Puppet Master group.

Under Configuration, add the pe_repo::platform::ubuntu_1804_amd64 class. Click Add class. Commit 1 change.

Install the Puppet Agent on the “Additional Node”

On the Puppet Enterprise Console, copy the installation command from the Unsigned Certs page.

Paste and run the command on the node1 "additional node."

Check the fingerprint of node1 before signing it on the Puppet Enterprise Console:

$ sudo puppet agent --fingerprint

Additional Resources

After much consideration and debate, your burgeoning systems engineering team has finally decided on a configuration management solution to implement across the fleet: Puppet! Specifically, Puppet Enterprise 2018, the long-term support version of Puppet.

You're now tasked with getting this set up up and running. With the CentOS 7 server provided, install Puppet Enterprise version 2018.1.7 using either the text-mode or graphical-mode installation, ensuring you set the admin password and provide two DNS alt names for the master: puppet, and master.

Note the fully qualified domain name Puppet should use in this lab is puppet.ec2.internal, and use the following URL to download Puppet Enterprise 2018.1.7:

https://pm.puppetlabs.com/puppet-enterprise/2018.1.7/puppet-enterprise-2018.1.7-el-7-x86_64.tar.gz

When installation is complete, access the PE console (https://PUBLIC_IP_ADDRESS), and change any configurations needed to let us bootstrap an Ubuntu 18.04 agent. Then, use the one-command installer to install an agent on the provided second server. Accept the certificate.

What are Hands-on Labs

Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.

Get Started
Who’s going to be learning?

How many seats do you need?

  • $499 USD per seat per year
  • Billed Annually
  • Renews in 12 months

Ready to accelerate learning?

For over 25 licenses, a member of our sales team will walk you through a custom tailored solution for your business.


$2,495.00

Checkout
Sign In
Welcome Back!

Psst…this one if you’ve been moved to ACG!