Puppet Architect

In Puppet Architect students will learn how to design their own infrastructure and define their own Right Way to implement Puppet. Students will use advanced Puppet DSL techniques affecting how modules are architected. Students will learn classification and data lookup techniques, and will be able to determine the most efficient and extensible architecture to scale Puppet to their own needs.

Duration: 

3 Days

Prerequisites: 

In this course, we expect students to have an intimate understanding of their site needs and have a reasonable idea of how they can use Puppet to manage their infrastructure. They should be expert sysadmins with an understanding of the operating system and the impact of various tuning techniques.
The course is designed for site architects and DevOps professionals with a solid understanding of configuration management strategies and sysadmin skills.

Before class:

  • Know the command line. If you aren’t using it at present, please refresh yourself.
  • Familiarity with Linux-y concepts such as services, packages and configuration files. 
  • Be familiar with a text editor such as vi, Vim, Emacs or nano. Puppet Labs trainers typically use Vim.
  • 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.

What will you learn: 

  • Designing and implementing an efficient development workflow.
  • Designing complex Hiera datasource hierarchies.
  • Sharing data between nodes via exported resources.
  • Using MCollective from the command line to automate infrastructure orchestration.
  • Estimating the number of nodes their Master(s) can support.
  • Using r10k to automate Puppet code deployment.
  • Dynamic provisioning strategies providing for rapid infrastructure scaling.
  • Designing a scaled architecture for their infrastructure.
  • Managing multiple Puppet environments in an effective manner.
  • Interacting with the Puppet Master using the REST APIs.
  • The underlying message passing protocol that MCollective is built on.
  • Scaling the ActiveMQ messaging bus.
  • Integrating Puppet with external tools via Hiera backends, report processors, etc.

What is provided: 

  • Original training material from Puppet Labs
  • Lunch for all 3 days of training
  • Support and help after the training

What is next: