Live Chat
Monday - Friday 8am - 6pm EST Chat Now
Contact Us
Monday - Friday 8am - 8pm EST 1-800-268-7737 Other Contact Options

Cart () Loading...

    • Quantity:
    • Delivery:
    • Dates:
    • Location:


Puppet - Beyond the Basics

This course takes an in-depth look at the architecture and advanced features of Puppet.

GK# 7332

Course Overview


Puppet is an open source configuration managementtool, which helps to eliminate the errors that occur with manual tasks. This path of courses takes an in-depth look at the architecture of Puppet and the techniques required to automate configuration on the nodes managed by Puppet. This path also covers the advanced features of Puppet, some best practices, troubleshooting, and server administration.


  • Delivery Format:
  • Date:
  • Location:
  • Access Period:


What You'll Learn


Building and Administering a Complex Puppet Installation


Viewing outline for:

On-Demand Outline

Working with Puppet Agent and Puppet Apply

  • Distinguish between the roles of Puppet Server, Puppet Master, Puppet Agent, and Puppet Apply
  • Summarize the role of the Puppet Server and describe its relationship with Puppet Master
  • Install Puppet Server
  • Set up initial certificate and domain name for a Puppet Server installation
  • Review the configuration steps and describe the contents of each major configuration file
  • Recall the role of Ruby, and install and remove Ruby gems
  • Describe the types of variables used within Puppet
  • Apply control branching statements of Puppet
  • Write and call built-in and custom functions
  • Write Puppet code to apply specific configurations to specific nodes
  • Use Puppet code to access facts
  • Describe how Puppet scales as the number of nodes grow
  • Describe the certificate signing process between Puppet Master and Puppet Agent in detail
  • Describe how the Puppet Agent executes its main manifest
  • Describe the communication between Puppet Master and Puppet Agent in detail
  • List the start options for Puppet Agent and describe their functionality
  • Use the commandline to start Puppet Agent and interpret commandline messages
  • Execute Puppet Agent as a service
  • Execute Puppet Agent on Linux machines as a scheduled cron job
  • Describe how Puppet Agent performs logging, and identify logging configuration issues
  • Describe the functionality of Puppet Apply and its features
  • Describe Puppet Apply's run environment and execute the main manifest
  • Describe how Puppet Apply communicates over the network and uses local collections of modules
  • Discuss how Puppet Apply handles logging and report handling
  • Execute the Puppet resource command to set up a Puppet Apply cron job
  • Create a cron job that will execute a Puppet Agent

Building and Administering a Complex Puppet Installation

  • Review the best practices in module design and write modules using the module generator
  • Use modules and plugins to enhance and extend the functionality of Puppet
  • Use the Puppet module installation tool to install and uninstall modules
  • Develop a module and deploy it on Puppet Forge
  • Use Puppet's group and user resource types to manage group and user accounts
  • Use Puppet's file resource type to manage folders and files
  • Use Puppet to edit, create, and delete a scheduled task
  • Use Puppet's package resource type to manage software packages
  • Use Puppet to manage operating system services
  • Use the internal report handlers to generate reports, and analyze YAML
  • Create a custom report in Ruby and include it in a Puppet module
  • Distinguish between older report formats and the new report format
  • Compare the different options when configuring an external CA
  • Describe how Puppet Server can be configured to use certificates from an existing external CA
  • Describe the steps needed to configure external SSL termination on the Puppet Server
  • Distinguish the functionality of Puppet from Vagrant
  • Use Vagrant to create virtual machines
  • Prepare a Puppet manifest to be deployed on Vagrant-created virtual machines
  • Modify Vagrant configuration to use Puppet for provisioning
  • Run Vagrant to create virtual machines provisioned by Puppet
  • Recognize the problems and issues that can be fixed by Hiera
  • Install Hiera from a package or a gem, and install Puppet functions
  • Describe the Hiera global configuration settings and how configuration files are resolved at runtime
  • Use Hiera and Puppet together
  • Create a Puppet module that will be extrapolated by Hiera
  • Create Vagrant virtual machines that will be provisioned by a Puppet manifest



Puppet is a configuration management automation tool that focuses on creating repeatable, supportable, and consistent configuration management. An in-depth understanding of its use and implementation is a fundamental requirement for all software professionals. In this path, you will learn the principals of Puppet, and how to successfully integrate Puppet into your organization.

Who Should Attend


This course is targeted toward technical managers, operations staff, application developers, network administrators, system administrators, and anyone interested in learning the advanced features of Puppet. A prior knowledge of Puppet is essential.

Course Delivery

This course is available in the following formats:


Train at your own pace with 24/7 access to courses that help you acquire must-have technology skills.

Request this course in a different delivery format.