This document discusses configuration management and provides examples of using Puppet and Chef for configuration management. It defines configuration management as managing the configuration of systems from hardware to applications. It explains that configuration management allows automating repetitive system administration tasks in a scheduled, consistent, auditable, and repeatable way. The document compares Puppet and Chef and provides examples of configuration scripts for each tool. It demos how to use Puppet and Chef to configure a system.