Mastering Puppet the devops way by School of DevOps®
3.9 (335 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
1,777 students enrolled

Mastering Puppet the devops way by School of DevOps®

The most comprehensive Puppet course. Learn to write Infrastructure as a Code and manage it at scale with Puppet
3.9 (335 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
1,777 students enrolled
Last updated 7/2020
English [Auto]
Current price: $69.99 Original price: $99.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 8 hours on-demand video
  • 10 articles
  • 6 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Infrastructure as a Code and related concepts e.g. idempotence, convergence
  • Puppet's DSL and best practices to write Manifests, Modules, Node Classification etc.
  • Create dynamic, data driven modules with Parameters and Templates
  • Setup Puppet Master and Nodes and apply configurations with centralised configuration management system
  • Integrate with Continuous Integration tool (CircleCI) and deploy applications with Puppet
  • Managing multiple environments e.g. Dev, Stage, QA, Production
  • Externalising properties with Hiera
  • Roles and Profile Design Patterns
  • Overview of Puppet Enterprise
  • Linux Command Line Operations
  • Text Editor
  • Experience with installing and configuring applications

Infrastructure as a Code is one of the foundations of Devops Automation toolchain. Being the first to enter in 2005, Puppet is at the forefront of the IaaC revolutions and was the first tool amongst the four main configuration management tools including Chef, Ansible and Saltstack . Puppet is also the fastest configuration management system and provides a simple DSL (Domain Specific Language) to define the state of resources and does the heavy lifting of managing underlying platform specific operations by itself, providing users higher level of abstraction than scripts do.

The use of puppet is no more limited to servers, but has also expanded to managing all type of devices including routers, embedded systems, storage etc. With more and more organisations adopting to devops practices, knowledge on IaaC and tools such as Puppet is essential for today's generation of devops professionals. This skill would also help one to advance their careers, specially for the operations, systems, networks and devops engineers.

This course is one of the most comprehensive programs to master Puppet. It starts from most basic concepts related to Infrastructure as a Code, Convergent Infrastructures, Code and Data separation, Idempotence. It then helps you dive into the world of puppet by understanding the basics of the languages such as resources/providers, manifests, modules and then delves deeper into creating dynamic code with parameters, templates, defined types etc. Once equipped with the basics, it unlocks Puppet's full potential with advanced topics such as environments, hiera, r10k, puppet enterprise, rolls and design patterns etc. This course takes from from zero to puppet master in two weeks.

Who this course is for:
  • Systems Operations Personal who would like to know how to manage insfrastructure at scale
  • Developers who would like to setup consistent environments and software delivery using automation
  • Anyone who would like to be a Devops Professional
  • Anyone who is interested learning to write Infrastructure as a Code
  • QA who would like to automate test environment setups and create a repeatable way
Course content
Expand all 87 lectures 08:11:52
+ Environment Setup
6 lectures 32:57
Environment Setup - Section Intro
Using Codespaces
Puppet Master Agent Setup
Regenerating Certs
Project Intro
+ Manifests
9 lectures 38:17
Resource DSL
Applying Puppet Manifest Locally
Idempotence and Convergence
Solution to Exercise
Execute Resource and Idempotence
Lab: Creating and applying a Puppet Manifest
Slides: Puppet - Manifests
+ Modules
13 lectures 01:22:16
Classes, Naming Convention and Strategies
Creating java::install class, Classifying Node with Node Definitions
Using Default Block, Adding Checkpoints with Notify Resource, Classification
Ordering, Notifications and Meta Parameters
Exercise - Creating Tomcat Classes
Solution to Tomcat Exercise
Using init.pp , Defining Dependencies
Managing Configurations
Lab: Modules
Slides: Creating Modular Code
+ Parameters
9 lectures 52:26
Inheritance to consume properties defined in params
Parameterize Tomcat Configs
Supporting Platform Specific Configs with Params.pp and Switches
Using Facts inside Classes to create flexible configs
Lab: Data Driven Modules - Params and Facts
Slides: Puppet Parameters, Facts and Templates
+ Templates
4 lectures 21:22
Why Templates? ERB Syntax
Templatizing Tomcat Configs
Lab: Converting tomcat.conf into a template
+ Parameterized Classes
5 lectures 23:53
How to write a Parameterised Class
Creating Parameterised Class for Tomcat
Lab: Coverting tomcat class into a parameterised class
+ Defined Types
5 lectures 26:44
Puppetforge, Modules Selection Criteria, HAProxy Loadbalancers
Setting up a Load Balancer with Defined Types
Lab: Defined Types