- Series: Expert's Voice in Open Source
- Paperback: 336 pages
- Publisher: Apress (May 3, 2011)
- Language: English
- ISBN-10: 1430230576
- ISBN-13: 978-1430230571
- Product Dimensions: 7.5 x 0.8 x 9.2 inches
- Shipping Weight: 1.6 pounds (View shipping rates and policies)
- Average Customer Review: 3.1 out of 5 stars See all reviews (17 customer reviews)
Amazon Best Sellers Rank:
#1,248,332 in Books (See Top 100 in Books)
- #249 in Books > Computers & Technology > Networking & Cloud Computing > Network Administration > Linux & UNIX Administration
- #326 in Books > Computers & Technology > Operating Systems > Linux > Networking & System Administration
- #1352 in Books > Textbooks > Computer Science > Graphics & Visualization
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Pro Puppet (Expert's Voice in Open Source)
Use the Amazon App to scan ISBNs and compare prices.
O'Reilly Learning Series
Featured 'Learning' Series from O'Reilly Media. See more
Frequently bought together
Customers who bought this item also bought
About the Author
James Turnbull is the author of five technical books about open source software and a longtime member of the open source community. James authored the first and second books about Puppet, and works for Puppet Labs, running client services. James speaks regularly at conferences including OSCON, Linux.conf.au, FOSDEM, OpenSourceBridge, DevOpsDays and a number of others. He is a past president of Linux Australia, has run Linux.conf.au and serves on the program committee of Linux.conf.au and OSCON. James is Australian but currently lives in Portland, Oregon. His interests include cooking, wine, political theory, photojournalism, philosophy, and most recently the Portland Timbers association football team.
Browse award-winning titles. See more
If you are a seller for this product, would you like to suggest updates through seller support?
Top Customer Reviews
I've tried to find a good, current, book on Puppet but there doesn't seem to be one. The free learning VM on Puppet's site does a very good job as an introduction so if you're new I'd start there. Beyond that it looks like they offer several free self-tought classes as well as some paid courses though I haven't tried either of them yet.
I would have given it 5 stars except that this book and the source code that goes with it, is replete with typos and poor grammatical structure.
There are several sections in the book that seem quite disjointed, like the author knew where he was going in his head but spaced out a paragraph here or there.
The scary part is that I am only to chapter 2.
Most of the code examples do not run as is and need editing.
IMHO, this is a beta version book, and was rushed out with great content but very little editing or review.
The high frequency of errors (in both the prose and the code, but mostly the code) makes it hard to focus on the content.
There's far too much unnecessary detail and repetition.
Simple code samples are followed by line-by-line explanations of what they're doing. This is sometimes useful, such as when introducing a DSL or a new bit of syntax, but much of the time, it's excessive. One time, there was a whole 2-sentence paragraph to state that a variable was being assigned!
Every time a tool or plugin is introduced that requires new packages, there are detailed instructions about how to install said packages, including commands to use with various package managers (yum, aptitude, etc) and on various types of systems. This includes generic dependencies that aren't specific to puppet, such as mysql, ruby, erlang, and rabbitmq. I don't think it's helpful to include that information here. These dependencies all have their own documentation with installation instructions. The average reader has probably installed many of these before. "Install mysql and start the server" is an instruction that most system administrators presumably already know, or can figure out, how to follow. Even if a reader hasn't heard of package managers, they'll have caught on after the first example or two; there's no need to cover it every time. (Also, shouldn't we be installing many of these using puppet?)
I'm giving two stars instead of one (and I bothered to read the whole book) because the content, presentation notwithstanding, is useful. I'd been using Puppet for around 6 months before reading this, and there were plenty of ideas that I found helpful and plan to use. The examples were well selected (though poorly executed, as described above): significant new concepts often had two or three examples that progressed from trivial to realistically complex.
Some of the content is outdated (such as coverage of the ruby DSL for writing manifests, which unfortunately is no longer supported). If you read this book, be sure to pair it with the online documentation.
The Kindle format was ok, not great. The formatting was pretty readable (aside from awkward line breaks in the code unless my text was tiny, but I don't think that can really be helped). I glanced at a paper copy once and saw that this book really doesn't have sidebars, so it doesn't suffer from confusing formatting caused by attempting to inline those with the text (as some technical books do). I did find one code error specific to the Kindle version -- the cucumber feature code is missing any interpolated variables (ie, "<hostname>.example.com.yaml" came out as simply ".example.com.yaml").
Do yourself a favor and start here, you can just read the first 2-3 chapters to get a decent grasp of the correct way to proceed. Don't just muddle through with the online docs and no real idea of how to structure your code and modules like I did.
Only deficiency that I see is that the high availability docs do not fully support Puppet Enterprise but that probably reflects the state of the product when the book was written. Still a worthwhile book if you are using Puppet Enterprise like we are.
The coverage of puppet types and other details is lacking: the list of those covered is miniscule compared to those that weren't. For example, among the types that were not covered are: augeas, schedule, router, resources, tidy, vlan, zfs, zone, zpool ...
There is also no coverage of virtual resources, parameterized classes, custom mount points, and other topics. Metaparameters are only briefly discussed, and a URL given for a complete list - the complete list of metaparameters should have been discussed in the book. An entire book could have been made which would cover puppet in all its complexity; instead, this book covers a broad amount of topics while covering only puppet basics.
Managing puppet with puppet is covered, while not discussing using puppet to bootstrap itself. Using puppet for system installs is not covered. In particular, it is never discussed why puppet needs to make sure it is installed when it is in fact running at the time.
There is no preface, which might have answered some of the implied questions in this review: Who is this book written for? Why are these topics covered? Why is puppet not covered completely?
There is a glaring mistake in the index (which suggests that the index was manually created): "running Dashboard" comes after "Red Hat" and before "regular expressions". In this day and age, indexes should be automatically generated in alphabetical order from the text.