http://reductivelabs.com/trac/puppet/
Put simply, Puppet is a system for automating system administration tasks. It's a language to define services, nodes, dependencies, and so on. Then it handles the "realisation" or "execution" of those definitions across multiple platforms, etc.