Book Review - Pro Puppet

Recently, I was contacted by Apress and asked to read and review their new book, "Pro Puppet". Seeing as how I had been working my way through understanding puppet for my new job, I was quite excited to check out yet another resource. I'll try to be fair in this review, but sometimes your first love will always have a special place in your heart. And without further ado, in all of it's glory, my review.

First off, let's define what Puppet is. Puppet is a solution for managing configurations on a wide variety of UNIX-like systems. It's designed to let an administrator build policies on a centralized "Puppet Master" and have those configuration policies applied to all of the managed systems in a reliable, repeatable, and secure manner. It's an itch that has needed to be scratched in the Linux world for some time. Puppet is not the only contender in this arena, but it appears to be the most widely used.

When I started reading Pro Puppet I had already been working with puppet for a few months based on the documentation I have found on the Internet and a now out-of-date copy of Pulling Strings With Puppet. While Pulling Strings With Puppet is an excellent reference, it was based on a much older version of Puppet which is no longer supported. Anyhow, Pro Puppet is based on the 2.6.x series of the software (and 2.7 is out as of this writing) and as such has many useful resources for the newly minted puppet user.

Pro Puppet starts with explaining what puppet it and what it can be used for. It also explains a little about how puppet it structured. Puppet uses a Domain Specific Language (or DSL) to describe the configuration policies, and the book does an excellent job of slowly immersing the reader into the nuances of the language. I can say that it took me weeks to learn from Internet resources how to do what Pro Puppet can explain in just a day.

The book goes into excellent detail about how to install puppet on various different platforms like: Ubuntu, Debian, Solaris, Red Hat, and even Windows! Each of the detailed procedures takes the reader step by step through the install process and can quickly get the user up and running with puppet.

As you continue reading, you are lead from starting out with puppet, through creating advanced manifests, and finally on to scaling puppet to massive environments. The final few chapters deal with extending puppet, enabling true push support through marionette collective, and finally setting up reporting.

I have to say that this book had perfect timing for me. I had been fighting with learning how to use puppet to manage systems for my job. I find that the documentation from Puppet Labs is difficult to follow and hard to put together in a useful manner. Once I started reading this book and putting it's simplified lessons to use, I was able to make much more useful puppet manifests and truly start managing my servers in an automated fashion. If you need puppet to manage your systems or if you are just interested in learning puppet for other purposes, I highly recommend this book.


Popular Posts