In Puppet Fundamentals students will learn the Right Way to manage a infrastructure. Students will start by installing Puppet Enterprise, then learn Puppet Best Practices and use Puppet to write simple classes, and update and extend existing modules. Puppet Fundamentals is taught through a combination of lecture and relevant, real world, hands-on exercises.
After completing this course, students will be able to deploy basic system configurations using best practices for Puppet in a Master-Agent setup.
What You Will Learn to Help You Solve Problems
- The fundamental component roles that make up Puppet Enterprise (and Puppet Open Source).
- The core concepts for the Puppet DSL, including:
- Modules and Classes
- Language Constructs
- Separating logic from presentation by using Templates.
- Modeling repeatable portions of your configuration by using Defined Resource Types.
- Building a foundation for building more complex configurations by using Advanced Classes:
- Parameterized Classes
- Introduction to Inheritance
- Introduction to Data Separation using Hiera
- Revisiting Classification using parameterized classes & ADB
- An introduction to using modules from the Puppet Forge and Supported Modules.
- A brief introduction to the Roles and Profiles design pattern.
- Have the Training VM downloaded to your computer before you show up. We will run through the configuration and installation for this VM in class, so you don't need to boot it up prior to class. Just make sure that it's on your computer and you know how to start it.
- If you prefer to learn from the Windows perspective, you may provide your own VM instead. It should be Windows Server 2012 or greater.
- Know the command line. If you aren’t using it at present, refresh yourself with a course likeLinux/UNIX Fundamentals (Note: We use bash in class.).
- Familiarity with Linux-y concepts such as services, packages and configuration files. If you work primarily in Windows, you can try out this Unix tutorial, and we also recommend this shell script training.
- Be familiar with a text editor such as vi, Vim, Emacs or nano. Puppet Labs trainers typically use Vim. We recommend printing yourself a Vim cheat sheet, and you could even study up on Vimin advance.
- You definitely need junior-level sysadmin skills. You should know:
- how to restart a service
- what an entry in /etc/hosts means
- what a hostname is
- how to troubleshoot basic networking problems such as name lookups, DNS lookups, and basic connectivity
- Be able to configure a virtual machine (your choice of VMware or VirtualBox) to use bridged or NAT networking
- Know how to navigate the file system.
- Have the Training VM downloaded to your computer before you show up. We will run through the configuration and installation process for this VM, so you don’t even need to boot it up yet. Just make sure that it’s on your computer and you know how to start it.
- Be ready to completely shift configuration management paradigms! Writing Puppet code is not like writing your average shell script, so prepare to learn a new way of thinking.
In this course, we expect students to have little to no experience with Puppet Enterprise (or Puppet Open Source) and are looking to build a foundation for future growth, experience, and knowledge.