Phoenix TS

Beginner Puppet

Course Overview

Our 4 – day, instructor led Beginner Puppet course will introduce the participant to the features of Puppet. The participants will develop the skills needed to administer Puppet as well as learn how to use Puppet code to manage cloud resources. This course is ideal for system administrators and developers.

At the end of this course, participants will be able to:

  • Understand the latest Puppet 5 features
  • Install and set up Puppet and discover the latest and most advanced features
  • Configure, build, and run containers in production using Puppet’s industry-leading Docker support
  • Deploy configuration files and templates at super-fast speeds and manage user accounts and access control
  • Automate your IT infrastructure
  • Use the latest features in Puppet 5 onward and its official modules
  • Manage clouds, containers, and orchestration
  • Get to know the best practices to make Puppet more reliable and increase its performance


Currently, there are no public classes scheduled. Please contact a Phoenix TS Training Consultant to discuss hosting a private class at 240-667-7757.


4 Days



Course Outline

Module 1: Getting Started with Puppet

  • Why do we need Puppet anyway?
  • Configuration management tools
  • What is puppet
  • Getting Ready for Puppet

Module 2: Creating your first manifests

  • Hello, Puppet – Your First Puppet Manifest
  • Managing packages
  • Services

Module 3: Managing your Puppet code with Git

  • What is version control?
  • Creating a Git repo
  • Distributing Puppet manifests
  • Fetching and applying changes automatically

Module 4: Understanding Puppet resources

  • Files
  • Packages
  • Services
  • Users
  • Cron resources
  • Exec resources

Module 5: Variables, Expressions, and Facts

  • Introducing variables
  • Introducing expressions
  • Finding out facts
  • Iterating over arrays

Module 6: Managing data with Hiera

  • Why Hiera?
  • Setting up Hiera
  • Adding Hiera data to your Puppet repo
  • Querying Hiera
  • Types of Hiera data
  • Interpolation in Hiera data
  • The hierarchy
  • Creating resources with Hiera data
  • Managing secret data

Module 7: Mastering Modules

  • Using Puppet Forge modules
  • Using modules in your manifests
  • Exploring the standard library
  • Writing your own modules

Module 8: Classes, roles, and profiles

  • Classes
  • Parameter data types
  • Defined resource types
  • Managing classes with Hiera
  • Roles and profiles

Module 9: Managing files with templates

  • What are templates?
  • Using templates in your manifests
  • Iteration in templates

Module 10: Controlling containers

  • Understanding containers
  • Deployment with Docker
  • Managing Docker with Puppet
  • Managing Docker images
  • Building dynamic containers
  • Persistent storage for containers
  • Networking and orchestration
  • Running Puppet inside containers

Module 11: Orchestrating cloud resources

  • Introducing the cloud
  • Setting up an Amazon AWS account
  • Getting ready to use puppetlabs/aws
  • Creating EC2 instances with Puppet
  • Managing custom VPCs and subnets
  • Provisioning AWS resources from Hiera data

Module 12: Putting it all together

  • Getting the demo repo
  • Understanding the demo repo
  • The bootstrap process
  • Adapting the repo for your own use
  • Bootstrapping a new node
Subscribe now

Get new class alerts, promotions, and blog posts