Puppet Book Summary - 2013
Even though I don’t spend as much time writing puppet code as I used to I try to stay relevant and as part of that I like to read all the Puppet books that come out. Below are the ones I’ve read this year, brief thoughts on them and the reading path I’d give to a new junior.
As the name implies the Puppet 3 Beginner’s Guide is a decent place to start learning Puppet. It’s an easy to read tour of the puppet language and how to use a number of the core resource types. I can see this being a very useful book for people just starting out and a handy reference for their first 3-6 months of writing manifests.
Pro Puppet 2nd Edition is the new book on the block at the time of writing. You can read my initial review but in general it’s a good book for people that are beginner to intermediate level and a hands on bent. It introduces quite a few topics, how to structure and write modules, scale your puppet master, reporting and introduces you to extending puppet with facts, functions and types for example. I think it fits very well with the Beginner’s Guide for new users and provides a lot of the ‘why’ things are done in a certain way above the ‘how’.
I feel a little odd adding the Puppet 3 Cookbook to this post as I’ve never actually read it. As the maintainer of the Puppet Cookbook website I feel that reading the book would be a bit of a conflict of interest but from different community members I’ve spoken to the book comes very well regarded so I didn’t want to exclude it. I’ve been told it provides very handy examples that will take you through a number of more intermediate use cases and introduce a number of useful approaches.
On to Managing Infrastructure with Puppet. I normally won’t buy a book that falls outside of a certain page / price ratio but this being the first O’Reilly Puppet book overrode my caution. That was a mistake. There’s nothing wrong with the actual content but there’s not much of it, it’s very jumpy in what it covers and I have trouble narrowing down which type of audience it’s for. 90% of the topics are covered more comprehensively in Pro Puppet for example.
On the plus side it did have some of the best coverage of using Puppet with LDAP together that you could get until Pro Puppet (2nd Ed) came out. I can’t recommend this book, and after a glance on the O’Reilly and Amazon review pages for it, I’m not alone in this view.
In terms of more advanced coverage, until we can convince Brice Figureau to write an extending puppet book, Puppet Types and Providers is the go to guide for people that want to implement their own types and providers. I’ve already written my Puppet Types and Providers review and I stand with what I said in the past, it’s the best introduction and reference for people that want to write their own types.
What’s missing from this list? Instant Puppet 3 Starter is the only other book I’m aware of but the price to page on that one means I won’t be buying a copy.
Now we’ve covered the books what’s my ideal reading path? I think I’d start someone with the Puppet 3 Beginner’s Guide and somewhere around the halfway mark I’d get them to read the first 3 chapters of Pro Puppet and, the oddly placed at the end of the book, hiera chapter to give them some big picture views of how to apply the language to their problems. Once they’ve read those four chapters finishing off the Beginner’s Guide should leave them self-sufficient enough to use the language and type sections of the Puppetlabs documentation site. After that I’d finish reading Pro Puppet for the breadth of coverage.
As for next steps, if you are interested in extending Puppet then Puppet Types and Providers is the best book on the market and provides a very solid introduction to the subject. If you are in the middle of bringing a number of different services under puppet management then from what I’ve heard the Puppet 3 Cookbook will expose you to a number of handy approaches and code snippets. After that? Well, you’ll know more than most puppet users and it’s time to get involved with the community through the forge and Planet Puppet.