Quantcast
Channel: Planet Ubuntu
Viewing all articles
Browse latest Browse all 17727

David Tomaschik: Deploying Puppet

$
0
0

At work, we're in the process of deploying Puppet as a configuration management tool.  Since we've just begun, I'm obviously no expert on Puppet, but I thought I would share what I've learned so far.

Start Small

Puppet is an incredibly powerful tool.  So powerful that it can seem overwhelming to convert your entire environment to Puppet in one fell swoop.  We'll be doing a phased rollout, beginning by producing our "base configuration" -- where we set up our LDAP authentication, firewall rules, tighten down SSH, mount NFS mounts, set up logging to our central log server, and other tasks that are performed on every host we bring up.  While much of it is incorporated into our VMWare templates, we still do our bare metal systems by hand.  Even more significantly, if we make a change to our baseline, we can immediately deploy it to all hosts.  (After testing, of course.)

Use Environments

You can have agents pretend to be in one environment or the other.  This will allow us to move one or two hosts over to a new configuration early for testing purposes.  In fact, some of them might permanently be in a development environment just to anticipate breakage early.  (Assuming we properly prevent people from making changes to production directly...)

Play with it

I learn better by doing than by reading.  Just start doing things with Puppet.  "What if..." and "How do I..." questions are amazing learning tools.

Be Prepared for a Learning Curve

At first, the puppet configuration terminology can be a bit confusing for someone new to it.  "Manifests? Modules? Classes? How is 'file' different from 'File'?" are all concepts you'll have to get past.  The learning curve is steep, but only for a little bit, and the documentation is great.

Get a Good Book

I looked at a number of books that covered Puppet, and found a couple of Apress titles that fit the bill.  Pro Puppet by James Turnbull and Jeffrey McCune. James is the VP of Technology at Puppet Labs, so you won't find any better authority on what Puppet can do. Another good book, also written by James (and others) is Pro Linux System Administration (Expert's Voice in Open Source). This one approaches more than just Puppet and talks about a variety of system administration tasks and tools.

No matter how you go about it, you won't be disappointed to choose Puppet for configuration management. Once you get started, the syntax becomes very natural and very understandable. Good luck and have fun!


Viewing all articles
Browse latest Browse all 17727

Trending Articles