New Release! 3rd Edition, September 2015
Smoke Signals vs Smart Phones
Configuration management (CM) tools like Puppet, Chef, SaltStack, and Ansible are so powerful that it's like moving from using smoke signals to communicate to having a smart phone.
That's one of the reasons you will pretty much never hear the companies behind these tools ever bash each other. More than competing with each other, they're competing with people still using rugs over a fire to communicate!
I mean seriously, you'd never let your baby send smoke signals to Grandma. But a smart phone? Go for it!
Just using any of these tools is a huge win. Having scripted, documented, replicatable servers can speed up your development and operations dramatically.
For example, at one of my consulting gigs we had a System Administrator installing all the software and configuration on the servers by hand!
I asked him how long it would take him to bring up a new application server and he said "Maybe 4 hours." Wow, that's a crazy long time to bring up a new server I thought.
Can you guess how long it actually took him to bring up the new app server? 2 weeks.
That's right. 2 whole weeks.
It went like this:
- He'd install stuff and be "done"
- QA would test it and it would break
- He would remember something he forgot
- QA would test it and it would break
- He would realize he misconfigured something
- QA would test it and it would break
And on and on for 2 weeks.
That was just for ONE server! They were about to launch a major application to millions of users with a huge marketing campaign and they would soon need to bring up at least another 20 servers in a few weeks.
So, we used Puppet and scripted the server.
Now how long did it take to bring up a new application server from scratch? Under 5 minutes.
In case you didn't do the math, that's over 4000 times faster!
Finally they could scale.
Also, magically, a ton of weird inconsistent bugs they were experiencing went away. Why? Because all the servers were consistent for the first time EVER.
How this book helps you
If you aren't yet using one of these tools, this book will help you quickly decide.
If you are using one of these tools already, but found it painful for any reason, this book will give you a good taste of what the other tools are like so you can decide which one to move to.
Either way, it could take weeks to properly try out the tools and come to a decision. This book saves you much of that time and effort so you can just see what they are each like and make a decision.
If you value your time, it's a great investment.
What readers are saying...
"Fantastic read! It was positively enlightening!
I had zero experience with CM tools, and this book was just the introduction I needed. I was happy to see you started with a shell script, because I was able to understand the goals of the project, and then see how truly limited shell scripts are as compared to CM tools.
The concision is really great too - straight to the point, and no dilly-dallying!"
"This book was exactly what I needed. A clear comparison of configuration management tools. It concisely covers the good, the bad, and the ugly of all 4 of these CM tools pointing out the pitfalls you might fall in with each. Matt's recommendations surprised me a bit, but he clearly explained the choices and saved me a ton of time. If you deal with system configuration at all, you want this book."
"Taste Test is a must have to anybody who would like to implement configuration management tools on their systems. I quickly found the information I needed to decide which tool corresponds to my needs. I'm going to start using one of them this week!"
"Damn, it does a marvelous job of letting you quickly try out the CM tools. I wish this had been around six months ago, it would have saved me at least 20 hours!"
The book started off at over 300 pages, but it has been heavily edited down to about 140 pages to give you a nice streamlined experience. More than half the development time went into removing less critical content and testing with over 30 reviewers so that it would be a tight and pleasant experience for you.
For each tool, I take you through a super simple project where we set up 2 servers, one that hosts a picture of a puppy and one that hosts a picture of a kitten. We set it up in such a way that I'm able to show you some of the key features of the tools. Sound trivial? Well, it really depends on which CM tool used...
I was very surprised at the results, and you might be too.
To see the exact project we use, here's a sample chapter where we first set up the project via shell commands: Shell Script Sample Chapter
Table of Contents:
- Shell Script
- Pre Tool Setup
- Tool: Ansible
- Tool: SaltStack
- Tool: Chef
- Tool: Puppet
- Bonus: Where Docker Fits In
- Bonus: CM Tool Security
- Bonus: CM Tool Communities
The book is not deeply technical, but you should have some development experience and be comfortable with the Linux command-line.
It's in PDF format with a linked Table of Contents for easy navigation as well as handy chapter links after each chapter.
For convenience, I also include a code package for all the commands used to set up and try out the CM tools. This is particularly helpful so you don't have to copy and paste from the PDF.
This book is *not* for you if:
- You are managing Windows servers (we focus on Linux)
- You already have a religious passion for a particular CM tool
This book *is* for you if:
- You're not religious about the software you use
- You care about having simple, solid, secure systems
There's no risk. I want you to be happy and if the book falls short for you, let me know in the first 30 days and I'll refund the full cost of the book right away.
Jump Start Package: $279
Includes: Book/Code package plus two 45 minute Jump Start sessions
(Limited Availability - often sells out - I only offer a few per month. If it is sold out when you try to purchase, email me to get on the waiting list)
This package is an investment in your systems and your sanity. Once you've decided on a tool to use, sometimes it's tough to get started migrating your systems over to a CM tool. This package aims to help you get over that hurdle.
After this purchase, you'll receive the book/code package immediately, then within a day I'll contact you and we'll set up a first call.
Our first call will be roughly 45 minutes and involves going over the details of your current systems and planning your first steps for the transition.
Our second call will be similar, but focused on any follow-up questions and on actually getting you started with the process.
I've completed dozens of production projects converting manual/shell-script managed systems over to simple organized CM tool managed systems. I've done this for big companies like Sony and CBS, as well as for many smaller companies. I can help get you up and running quickly so you'll have the confidence to start and complete the project successfully.
Book/Code Package: $47
Includes: Book plus scripts for setting up all the sample projects
- Chapter on how Docker fits into the picture
- Chapter on Comparative Security
- Chapter on Community Stats
- Step-by-step scripts for all sample projects
Small Team Package:
To share the book among the folks on your team (up to 10 people), get the small team license here for $280. If you need a license for more than 10, contact me for a volume discount.
During the checkout process, there's an option to pay with PayPal if you wish.
I'm Matt Jaynes and I've been consulting on development and operations projects since 1999.
Past clients include: Sony, CBS, Yahoo, Intuit, Scribd, Whole Foods Market, Showtime, Bravo, Mensa, University of Maryland, American Cancer Society, Brooks Brothers, and many smaller companies.
I've worked on 100's of live production systems over my career - both for small startups and billion dollar corporations. Across them all, the same basic principles apply: focus on simplicity, automation, and above all else: understandability.