Understanding configuration management
In later chapters, we will learn more about using configuration-management tools with Vagrant for provisioning. While talking about Vagrant provisioning, this will be a good introduction to configuration management.
Configuration-management tools include Chef, Ansible, and Salt. We will be focusing on these three tools. Configuration management is essentially another word for provisioning and is used to set a machine to a desired state – this could be installing software or configuring certain settings.
Configuration-management tools often have a special file type or syntax that is used. We will be focusing on the following software:
- Ansible (uses playbooks)
- Chef (uses cookbooks)
- Docker (uses images)
- Puppet (uses manifests)
- Salt (uses states)
Configuration management is often used when a more powerful and flexible option is needed in your development and deployment process. A benefit of using configuration-management tools is the separation of concerns. Essentially...