Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Puppet 5 - From Beginner to Paid Professional: 2-in-1
Rating: 4.0 out of 5(38 ratings)
215 students
Last updated 5/2018
English

What you'll learn

  • Everything you need to become a Puppet professional, from creating manifests with Puppet 5.0 to managing and deploying your Puppet code on the cloud
  • Build complex configuration files with dynamic data using Puppet's EPP template mechanism
  • Manage Docker and AWS with Puppet
  • Learn the powerful new features of Puppet 5, including loops and data types
  • Manage your Puppet code with Git
  • Use Puppet's key-value database

Course content

2 sections54 lectures4h 50m total length
  • The Course Overview2:59

    This video will give you an overview about the course.

  • What Is Puppet?3:52

    Whether you're a system administrator, a developer who needs to wrangle servers from time to time, or just someone who's annoyed at how long it takes to deploy a new app, you'll have come across the kind of problems Puppet is designed to solve. Let’s see what Puppet is and how it does that.

    • Take a look at Configuration management
    • Learn about Puppet
  • Getting Ready for Puppet2:55

    The best way to view this course is to follow along with the examples. You can use the popular Vagrant software to run a virtual machine on your computer. The public GitHub repository for this course contains a Vagrantfile, which you can use to get up and running with Puppet in just a few steps.

    • Install Git
    • Download repo
    • Install Vagrant
  • Hello, Puppet – Your First Puppet Manifest6:15

    Let’s begin by writing our first manifest with Puppet, and put Puppet to work configuring a server. We’ll also understand how Puppet compiles and applies a manifest.

    • Modifying existing files
    • Dry-run Puppet
    • Create your own file
  • Managing Packages2:55

    A key resource type in Puppet is the package. A major part of configuring servers by hand involves installing packages, so let’s see how we will be using packages in Puppet manifests.

    • Take a look at resource declaration and install cowsay
    • Query resources with the puppet resource
  • Services5:00

    The third most important Puppet resource type is the service: a long running process that either does some continuous kind of work, or waits for requests and then acts on them. Let’s explore services in detail.

    • Use puppet describe
    • Notify a linked resource
    • See Resource ordering with require
  • Getting Started with Git5:36

    In this video, we’ll learn how to use the Git version control system to manage Puppet manifests.

    • Track changes
    • Create a Git repo
    • Take a look at Branching
  • Distributing Puppet Manifests3:03

    So far we've only applied Puppet manifests to one node, using puppet apply with a local copy of the manifest. Let’s see how we can manage several nodes at once by distributing the Puppet manifests to each node.

    • Create a GitHub account and project
    • Push your repo to GitHub
    • Clone the repo
  • Fetching and Applying Changes Automatically4:44

    In a stand-alone Puppet architecture, each node needs to automatically fetch any changes from the Git repo at regular intervals, and apply them with Puppet. In this video, we’ll explore how to do that.

    • Write a manifest to set up regular Puppet runs
    • Apply the run-puppet manifest
    • Test automatic Puppet runs
  • Files6:28

    We saw earlier that Puppet can manage files on a node using the file resource, and we looked at an example which sets the contents of a file to a particular string using the content attribute. Let’s take a look at it again.

    • Manage whole files
    • Take a look at ownership
    • Learn about Trees of files
  • Packages5:12

    We've already seen how to install a package using the package resource, and this is all you need to do with most packages. However, the package resource has a few extra features which may be useful.

    • Install the latest version
    • Install ruby gems
    • Install gems in Puppet’s context
  • Services4:31

    Although services are implemented in a number of varied and complicated ways at the operating system level, Puppet does a good job of abstracting away most of this with the service resource.

    • See the hasstatus attribute
    • Take a look at the pattern attribute
    • Learn about the hasrestart and restart attributes
  • Users5:20

    An important part of system configuration involves creating and managing users, and Puppet's user resource provides a model for doing just that.

    • Take a look at the user resource
    • Manage SSH keys
    • Remove users
  • Cron Resources3:36

    Cron is the mechanism on Unix-like systems which runs scheduled jobs, sometimes known as batch jobs, at specified times or intervals. Puppet provides the cron resource for managing scheduled jobs.

    • See attributes of the cron resource
    • Randomize cron jobs
    • Remove cron jobs
  • Exec Resources11:32

    While the other resource types we've seen so far (file, package, service, user, ssh_ authorized_key, and cron) have modeled some concrete piece of state on the node, such as a file, the exec resource is a little different. An exec allows you to run any arbitrary command on the node.

    • Learn attributes of the exec resource
    • See how not to misuse exec resources
  • Introducing Variables6:48

    A variable in Puppet is simply a way of giving a name to a particular value, which we could then use wherever we would use the literal value.

    • Use Booleans
    • Create arrays
    • Understand hashes
  • Introducing Expressions4:03

    Variables are not the only things in Puppet that have a value. Expressions also have a value. The simplest expressions are just literal values.

    • Take a look at comparison operators
    • Use regular and conditional expressions
    • Make decisions with if statement and choose options with case statements
  • Finding out Facts8:22

    It's very common for Puppet manifests to need to know something about the system they're running on, for example, its hostname, IP address, or operating system version. Puppet's built-in mechanism for getting system information is called Facter, and each piece of information provided by Facter is known as a fact.

    • Use facts hash
    • Referencing facts in expressions
    • Provide external facts and create executable facts
  • Iterating over Arrays3:44

    Iteration (doing something repeatedly) is a useful technique in your Puppet manifests to avoid lots of duplicated code. Let’s see how we can use that with Puppet.

    • Use the each function
    • Iterate over hashes
  • Puppet 5 – The Complete Beginner’s Guide:

Requirements

  • No prior knowledge of Puppet needed.

Description

The challenges of IT infrastructures and the need to automate common activities has become a major requirement in many large organizations. Puppet is one such configuration management tool that allows to efficiently manage and automate all your IT infrastructure.

This comprehensive 2-in-1 course teaches you the key skills of Puppet 5.0 to effectively manage and automate your IT infrastructure. You'll learn through quick step-by-step instructions, clear explanations, and interesting real-world examples. It will give you all you need to know to use this essential IT power tool while applying these solutions to real-world scenarios.

This training program includes 2 complete courses, carefully chosen to give you the most comprehensive training possible.

The first course, Puppet 5 – The Complete Beginner’s Guide, gets you up-and-running with the very latest features of Puppet 5. From beginner to confident Puppet user with a series of clear, practical examples it will help you manage every aspect of your server setup. You will learn how to install packages and config files, create users, set up scheduled jobs, provision cloud instances, build containers, and more. Every example in this course deals with something real and practical that you're likely to need in your work, and you'll see the complete Puppet code that makes it happen, along with step-by-step instructions on what to type and what output you'll see.

The second course, Puppet 5 – From Beginner to Pro, starts off with explaining how to manage data with Hiera.  You will then install ready-to-use modules from the Puppet Forge using the r10k tool. You will also learn some of the best ways to organize your Puppet code using roles and profiles. Next, you will learn to build complex configuration files with dynamic data using Puppet's EPP template mechanism. You will learn some new support features of Puppet 5 for deployment on Docker containers. Finally, you will learn how to use Puppet to provision cloud servers on AWS.

By the end of this Learning Path, you will have a greater understanding of puppet 5.0 and how to use all it's different parts to give you a powerful configuration management tool.

Meet Your Expert(s):

We have the best work of the following esteemed author(s) to ensure that your learning journey is smooth:

  • John Arundel is a DevOps consultant, which means he helps people build world-class web operations teams and infrastructures and has fun doing it. He was formerly a senior operations engineer at global telco Verizon, designing resilient, high-performance infrastructures for major corporations such as Ford, McDonald's, and Bank of America. He is now an independent consultant, working closely with selected clients to deliver web-scale performance and enterprise-grade resilience on a startup budget. He likes writing books, especially about Puppet (Puppet 2.7 Cookbook and Puppet 3 Cookbook are available from Packt). He also provides training and coaching on Puppet and DevOps, which, it turns out, is far harder than simply doing the work himself. Off the clock, he is a medal-winning, competitive rifle and pistol shooter and a decidedly uncompetitive piano player. He lives in a small cottage in Cornwall, England and believes, like Cicero, that, if you have a garden and a library, then you have everything you need.

Who this course is for:

  • This Learning Path is designed for those who are new to Puppet, including system administrators and developers who are looking to manage computer server systems for configuration management.