1 What configuration management is
Configuration management (CM) is the practice of defining, applying and maintaining the desired state of your systems — packages, services, files, users and settings — in a controlled, repeatable way. Instead of logging into each server and tweaking it by hand, you describe what the server should look like, and a tool brings every machine into line with that description.
The goal is consistency at scale. When you manage two servers, manual changes are merely tedious; when you manage two hundred, manual changes are unmanageable and error-prone. CM lets one definition govern many machines, so the tenth server is configured exactly like the first.
CM is a cornerstone of infrastructure as code: the configuration lives in text files, is stored in version control, is reviewed like software, and can be re-applied at any time to reproduce a known-good state.