Introduction to Using Puppet (PUPPETBC)


Course Content

The configuration management and data center automation tool that streamlines every step of IT service delivery, Puppet allows you to provision physical and virtual machines, orchestrate configuration management and develop, test and deploy code faster. Designed to easily automate repetitive and error-prone system administration tasks, Puppet's declarative language allows you to state how your systems should be configured to do their jobs. It's easy to quickly set up systems in a reliable and repeatable way.

This course demonstrates the complete Puppet configuration management system, and how it can be used to build and scale reliable infrastructure for your own environments. As a continuous hands-on lab intensive course, students will build a fully functional infrastructure using Puppet. By the end of this course you will have a solid understanding and hands-on experience with Puppet, and the knowledge to integrate Puppet into your own operations workflow.

Who should attend

  • IT Managers and Leaders
  • Developers and Application Teams
  • System Administrators
  • IT Operations Staff
  • Release Engineers
  • Configuration Managers
  • Anyone involved with IT infrastructure
  • ScrumMasters
  • Software Managers and Team Leads


Athough it is not mandatory, students who have completed the self-paced Fundamentals of DevOps eLearning course have found it very helpful when completing this course.

Outline: Introduction to Using Puppet (PUPPETBC)

Part 1: Intro to DevOps

  • Why DevOps
  • Benefits
  • Automation
  • Overview of Puppet
  • Puppet Enterprise vs Open Source

Lab: Using the Puppet Console, adding nodes and classes


  • How Puppet uses resources for configuration management
  • Developing Puppet resources
  • Variables
  • Conditional statements
  • Built-in resource types
  • Description of resources – resource types, titles, and body
  • Core resource types
  • Inspecting resources

Lab: Developing Puppet resources, applying resources to nodes

Part 2: Classes

  • Understanding Puppet classes
  • Manifests with Classes
  • Class Inheritance

Part 3: Architecture

  • Sizing Puppet Master
  • Differences between Monolithic and Split Puppet architectures
  • Puppet Agent

Lab: Manifests and Classes: Create class definitions, validate class syntax and apply to Puppet nodes


  • Understand how Puppet reports Facts and the Catalog
  • Installing modules from the Forge
  • Searching the Forge from CLI and web
  • Using the Puppet Module command
  • Types and Providers

Lab: Modules, module path structure, and testing

Lab: NTP configuring nodes and class parameters

Lab: MySQL: Using Puppet to configure MySQL databases, users, and services

Part 4: Variables

  • Using variables in Puppet
  • Writing Puppet code without repeating
  • Writing Classes with parameters
  • Using the facter tool with modules and classes

Lab: Variables and Parameters: learn how to assign variables in a manifest, create classes with parameters

Part 5: Hiera

  • Description and uses for Hiera
  • Code reusability
  • Access control with Git, LDAP, Jenkins

Lab: Installing and Using Hiera

Part 6: Conditional Statements Understand and use these conditional statements:

  • If
  • Unless
  • Case
  • Selector

Lab: Conditional Statements: Using conditional statements in resources and modules.

Part 7: Advanced Topics

  • Environments
  • Using R10K to manage modules
  • Creating custom modules
  • Next steps

Lab: Resource ordering: Ensure the correct order of modules and classes

Lab: Defined resource types: Create new resource types

Online Training

Duration 2 days

  • US$ 1,950
Classroom Training

Duration 2 days

  • United States: US$ 1,950
Click City Name To Book Schedule
This is an Instructor-Led Classroom course
Instructor-led Online Training:   This is an Instructor-Led Online (ILO) course. These sessions are conducted via WebEx in a VoIP environment and require an Internet Connection and headset with microphone connected to your computer or laptop.
  *   This class is delivered by a partner.
United States
Oct 14-15, 2020 Minneapolis 08:30 US/Central * Enroll
Oct 14-15, 2020 Online Training 09:30 US/Eastern * Enroll
Nov 11-12, 2020 Online Training 08:30 US/Eastern * Enroll
Dec 16-17, 2020 Online Training 11:30 US/Eastern * Enroll
Dec 16-17, 2020 San Jose 08:30 US/Pacific * Enroll