Paths

Configuration Management using Puppet 4

Authors: Andrew Mallett, Ben Piper

Puppet, a popular configuration management suite for Linux and Windows, is being used to manage servers all over the world. Puppet was founded in 2005 and the software is now used... Read more

Beginner

Learn how to deploy and use Puppet to automate configuration management and software deployment for Windows and Linux. The course in this section uses Puppet version 3.7.3, but the skills taught in this course are transferrable to Puppet 4.

Puppet Fundamentals for System Administrators

by Ben Piper

Feb 12, 2015 / 5h 31m

5h 31m

Start Course
Description

Learn step-by-step how to deploy and use Puppet to automate configuration management and software deployment for Windows and Linux. No programming experience required! Follow along as we build a realistic Puppet lab from the ground up utilizing cross-platform Vagrant and VirtualBox. Topics covered include manifests, modules, templates, Hiera, the roles and profiles pattern, and version control using Git.

Table of contents
  1. Introduction to Puppet24m
  2. Installing and Configuring the Puppet Master1h 1m
  3. Installing and Configuring the Puppet Agent26m
  4. Creating Manifests47m
  5. Creating and Using Modules59m
  6. Creating File Templates21m
  7. Configuring Hiera22m
  8. Windows Configuration Management45m
  9. Version Control21m

Intermediate

Take a closer at Puppet 4 with this group of courses that cover language essentials, modules, classes, files, and templates.

Puppet 4: Language Essentials

by Andrew Mallett

Jul 26, 2016 / 3h 49m

3h 49m

Start Course
Description

As your server estate grows with more and more virtual systems, so does the difficulty of trying to keep your configurations consistent and reliable. The days of having a few servers to manage are long-gone, and there seems to be an array of different distributions that all require specific tools. Puppet is a mature and respected configuration management tool that is available free of charge as open-source software. In this course, Puppet 4: Language Essentials, you can learn Puppet quickly as the language is written simply with administrators and not developers in mind. First you'll learn how to provide consistent and reliable configuration results, and look at defining configurations as resources. Next, you'll learn to use logic to set the correct service names. Finally you'll be looking at how to restart services after configuration changes. After watching this course, you'll be able to create manifests yourself as well as defining your own configuration needs.

Table of contents
  1. Course Overview1m
  2. Configuration Management and Puppet14m
  3. Installing the Puppet Client36m
  4. Working with Puppet Apply and Manifests36m
  5. Working with Puppet Resources53m
  6. Exposing the Puppet Language54m
  7. Managing Resource Relationships33m

Puppet 4: Working with Modules and Classes

by Andrew Mallett

Aug 18, 2016 / 3h 13m

3h 13m

Start Course
Description

Organizing your code into modules and classes will make it more usable and maintainable, which will make you more employable. In this course, Puppet 4: Working with Modules and Classes, you'll learn how to organize your code better than ever before. First, you'll learn to transform an NTP manifest into a more usable application, in the form of a module containing classes and defined types. You'll also learn how to create code once and reuse it. Finally, you'll discover how to validate input to parameterized classes. By the end of this course, you'll know how to refactor monolithic, flat Puppet manifests into streamlined modules.

Table of contents
  1. Course Overview1m
  2. Understanding Modules and Classes15m
  3. Working with Puppet Environments25m
  4. Working with Modules23m
  5. Working with Puppet Classes34m
  6. Implementing Parameterized Classes38m
  7. Implementing Class Inheritance20m
  8. Working with Custom Resource Types33m

Puppet 4: Working with Files and Templates

by Andrew Mallett

Sep 2, 2016 / 3h 7m

3h 7m

Start Course
Description

There are many scenarios where adding functionality to your Puppet modules can make your work easier. In this course, Puppet 4: Working with Files and Templates, you'll learn how to make use of templates in your Puppet code and how you can deliver files with Puppet. First, you'll see how easily you can reduce the number of files a module requires by making use of variable data and templates. The original template language was Ruby, but now with Puppet 4 you can support both Ruby and Puppet templates. Next, you'll look at ways to deliver files and parts of files. Finally, you'll learn how you can deliver a complete folder structure if required, purging any unmanaged content using file\-line while concat delivers single lines or fragments of files allowing for autonomous edits to the managed files. By the end of the course, you will be able to create Puppet modules delivering configurations using templates, as well as allowing autonomous edits using file fragments.

Table of contents
  1. Course Overview1m
  2. Puppet File and Template Tools15m
  3. Using Puppet Templates21m
  4. Working with ERB Templates46m
  5. Working with EPP Templates26m
  6. Delivering Files with Puppet36m
  7. Ensure Content Using File_Line28m
  8. Delivery of File Parts with Concat11m

Advanced

By now you should have a solid understanding of Puppet 4. Next, learn how Hiera, Puppet Server, and Puppet Enterprise can help simplify your workflow.

Puppet 4: Hiera, the Single Source of Truth

by Andrew Mallett

Oct 13, 2016 / 2h 39m

2h 39m

Start Course
Description

Throughout this series of Puppet 4 courses, the complexity of the NTP module has been building up. Now, you can start to simplify the module by removing components and adding Hiera. In this course, Puppet 4: Hiera, the Single Source of Truth, you'll be refactoring the NTP module to make use of Hiera in replacement of some of the Puppet logic. First, you'll learn how to write YAML files. Next, you'll learn how to configure and test Hiera. Finally, you'll learn the fault-finding Puppet applications. By the end of this course, you'll be able to implement modules using Hiera efficiently and effectively.

Table of contents
  1. Course Overview1m
  2. Hiera, the Single Source of Truth for Puppet14m
  3. Getting Started with Hiera19m
  4. Hiera Configuration23m
  5. Writing the Data Source22m
  6. Command Line Verification24m
  7. Simple Worked Example and What Goes Wrong25m
  8. Refactoring the NTP Module for Hiera27m

Puppet 4: Server and Puppet Enterprise

by Andrew Mallett

Nov 23, 2016 / 2h 59m

2h 59m

Start Course
Description

Centralizing your configuration on the Puppet Server ensures that your code only needs to be managed in the one location. In this course, Puppet 4: Server and Puppet Enterprise, you will install modules to the server, configure hiera on the server, and write Puppet code on the server. First, you'll get to see some of the differences between Puppet Server and Puppet Enterprise, as well as installing Puppet Enterprise onto the CentOS 7 host. Next, you'll get to see what can be managed with the Puppet Enterprise Dashboard and how you can use Puppet Server to distribute Agent Packages. Finally, you'll see how you can make use of Roles and Profiles to organize Puppet code for easier and more efficient assignment. You use both the Puppet Open Source Server and Puppet Enterprise Server so you may compare the two. By the end of the course, you will be comfortable in using the Puppet Server both from the command line and dashboard.

Table of contents
  1. Course Overview2m
  2. What Is the Puppet Server?17m
  3. Installing Puppet Enterprise24m
  4. Investigating the Dashboard23m
  5. Installing the Agent31m
  6. Configuring Hiera on the Server24m
  7. Deploying Modules to Agents26m
  8. Puppet Roles and Profiles28m

What you will learn

  • How to Write Puppet Code
  • How to Create Puppet Modules
  • How to Deliver Files and Templates
  • How to Use Hiera to Customize Module Application
  • How to Deploy and Manage a Puppet Server

Pre-requisites

To get the most out of this path, it’s recommended that you have experience working with the Linux command line interface and be familiar with text editors such as vi or nano. Much of configuration management in Linux has to do with services, so it is also recommended that you have an understanding of Linux Services. LFCS: Linux Essentials can help you get up to speed with this.

Offer Code *
Email * First name * Last name *
Company
Title
Phone
Country *

* Required field

Opt in for the latest promotions and events. You may unsubscribe at any time. Privacy Policy

By activating this benefit, you agree to abide by Pluralsight's terms of use and privacy policy.

I agree, activate benefit