peshkova - Fotolia

Look inside an advanced Puppet tutorial

Are you using Puppet to its full potential? This chapter excerpt on Puppet automation can help sys admins get the most out of the management tool throughout the IT infrastructure.

Configuration management has come a long way from the dark magic of clever scripting sys admins. Enterprises embrace...

the technology from development to production and support, requiring in-depth knowledge of their chosen configuration management tool.

The Puppet configuration management tool is known for its declarative model -- the user states the desired configuration of the stack and the tool seeks to maintain these specifications. It appeals to systems administrators whose main goal is to keep things in order and running smoothly.

Extending Puppet: Second Edition is a Puppet tutorial detailing how to configure, customize and manage infrastructure. Authors Alessandro Franceschi, an independent consultant, and Jaime Soriano Pastor, a site reliability engineer at Spain's Tuenti Technologies, help administrators make full use of the Puppet configuration management tool on servers as well as storage and networking devices, and more. The book covers the underlying structure of Puppet, including its Hiera key/value lookup tool and the PuppetDB data collection function for advanced services. It then provides options for exploiting the tool's capabilities and writing useful modules. Administrators will learn how to write and test Puppet code, scale a Puppet-configured deployment and customize for greater control and automation.

In Chapter 4: Designing Puppet Architectures, the authors of this Puppet tutorial explain the components and tasks involved in a Puppet architecture, then get into details on how to perform node classification, set parameters and manage configuration files:

It's almost certain that we will need to manage configuration files with Puppet and that we need to store them somewhere, either as plain static files to serve via Puppet's fileserver functionality using the source argument of the File type, or via .erb templates. While it's possible to configure custom fileserver shares for static files and absolute paths for templates, it's definitely recommended to rely on the modules' auto-loading conventions and place such files inside custom or shared modules, unless we decide to use Hiera for them.

Download and read the entire chapter on Puppet architectures here.

Systems administrators should develop these in-depth configuration management skills to enable automation and rapid change in the IT environment. The goal is to initially provision and configure platforms according to templates and with the aid of automation, and then reduce the time spent troubleshooting problems that stem from configuration drift and dependency hell.

Extending Puppet - Second Edition, a Puppet tutorial by Alessandro Franceschi and Jaime Soriano Pasto, is published by Packt Publishing, June 2016, ISBN 9781785885686. The ebook is available for $5 as a promotional offer from Packt through January 9, 2017.

Next Steps

Containers, monitoring top DevOps plans

The guide to choosing a configuration management tool

Follow along with a real-life Puppet user

Puppet's CEO discusses an automated future

Learn to manage VMs with Puppet

Dig Deeper on Configuration Management and DevOps