August 5, 2020

Get Started with Puppet: A Tutorial Guide for First-Timers

How to & Use Cases
Products & Services

So you’re ready to get started with Puppet and you don’t know where to begin. That’s alright – this short, easy Puppet tutorial will help you get started with Puppet Enterprise.

This tutorial blog walks through the first few steps you'll need to take to get Puppet Enterprise up and running so you can start automating your organization's IT infrastructure.

Table of Contents

Get Started with Puppet: Tutorial, Tips, and Requirements

To get started with Puppet Enterprise, you need the Puppet Enterprise installer, a Linux machine (physical or virtual) that meets the system requirements to be your Puppet server, and enough CPUs and memory allocated to your Puppet server.

Additionally, here are some helpful links for getting started with Puppet Enterprise:

Tutorial: How to Stand Up Your Puppet Server

First things first, you’ve got to decide where your machines are coming from. Will you be running VMs from vRA or VirtualBox? Maybe you’ll need to request a VM from your networking team. Regardless of how you’re running your VMs, installation will the be the same.

Download Puppet Enterprise

Once you have access to a Linux machine capable of running Puppet, you can download Puppet Enterprise to it. Make sure you’ve met all the hardware requirements before you go down this road. You’ll want to make sure you have enough CPUs and memory allocated for the Puppet server.

Once that’s set, you’ll want to head over to the Puppet Enterprise download link again and select the correct download for your OS. You should notice that there are multiple tabs and that the page you’re on also has the links for downloading agents and the Puppet Client Tools. You’ll need to select the OS you need and the download will begin.

Untar the Tarball from the Command Line

When it’s complete, you’ll want to untar the tarball from the command line. For more detailed steps, consult the installation documentation over on Docs.

Execute the Puppet Installer Script

After completing these tasks, you’ll need to run the installer script. It’s in the Puppet Enterprise directory, where you’ll also find the uninstaller script. After it executes, it will prompt you on how you want to run the installation. You can run the installation in text mode or in the browser. I’d recommend the browser option.

(This is a good time to mention that you’ll need to make sure the proper ports are open, and that firewalld is disabled.)

Running through the browser installation, you’ll be prompted to answer questions about your system and deployment. Be sure to have information about the machine’s fully qualified domain name, and a password. Once you’ve made those selections, you can trigger the installation process, which allows you to view the logs so you can see what’s happening on the backend.

Once the installation is complete, select the “Start using Puppet Enterprise” button, which will take you to your Puppet Overview page in the Puppet console. Log in with your user credentials and you’re now ready to install some agents.

Tutorial: How to Install Puppet Agents

In order to install a Puppet agent for Linux, you’ll grab the curl command that’s available in the console view. Go to the Nodes tab on the far left sidebar, then select the Unsigned Certificates section. Copy and paste that command into the command line of the system you wish to have a Puppet agent installed.

Once again, you’ll want to make sure that you’ve SSH’d into the agent, and that you have root access. After you run that command, make sure the /etc/hosts or /etc/known_hosts file has the server's FQDN, IP address and any aliases that are being used. When you’ve completed those checks, run Puppet. The command for doing this is puppet agent -t.

After the run is complete, go back to the Unsigned Certificates page and hit refresh. You should see that there’s a cert to accept. Accept it and you’re ready to go! For Windows machines, follow the hyperlink that provides instructions on using the single line command for PowerShell.

Get Started Automating Jobs with Puppet

Now that you’ve completed the installation of your agents with the help of this Puppet tutorial, it’s time to manage some resources! I also advise folks get going on a resource like NTP. Anything that’s foundational to your work and needs consistent managing is a good place to add value with Puppet. The Puppet Forge has tons of modules that can help you get started.

You’ll want to make sure you read over the docs on using classification, as well as how grouping and classifying nodes work. Armed with that information, you’ll be ready to tackle a few tasks with Forge modules and the Puppet console.

Once you feel good about the workflow above, start incorporating Puppet jobs into the mix. Being able to modify resources and create Puppet jobs that occur across your environment is a powerful capability that enhances the benefits of Puppet Enterprise.


This blog was originally published on October 5, 2017 and has since been updated for accuracy and relevance.

Learn more