Introduction to Using Puppet Course Details:

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 Puppet training 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.

    No classes are currenty scheduled for this course.

    Call (919) 283-1653 to get a class scheduled online or in your area!

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

Resources

  • 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

Modules

  • 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


*Please Note: Course Outline is subject to change without notice. Exact course outline will be provided at time of registration.

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.

Students should bring laptops to class. Additionally, although it is not mandatory, students who have completed a foundational DevOps course have found it very helpful when completing this course.

  • 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

Ready to Jumpstart Your IT Career?

CONTACT US NOW!