Configuration and change management are extremely important in keeping a production environment running smoothly with high uptime. Puppet does a fantastic job of distributing and enforcing configurations, while Subversion is good for keeping an audit trail of configuration changes. Putting the two together gives you a world-class solution that easily scales into the tens of thousands of servers.