In this comic, you'll get a introduction to configuration management and how it can help improve your server infrastructure reliability over time.
Imagine you have to make a puppy house for your new puppy. This could work well for one puppy, but what if you get a new puppy ever week? No matter how good you are at making puppy houses, that won't scale well. Maintenance is also a problem.
Configuration Management allows you to streamline your infrastructure setup by defining a number of standard procedures for new servers. In the context of servers, configuration management tools will automate these procedures based on provisioning scripts.
By using configuration management, you'll assure that no matter who builds your puppy houses, they'll always look the same.
Some of the benefits of using configuration management include:
- Turning your infrastructure into code, and being able to version control it
- Ability to quickly recover from critical errors by spinning up new servers with the exact same configuration
- Sharing the same environment with coworkers and between different servers (testing, staging, production)
There are many configuration management tools in the market. Some popular choices include:
For a more detailed overview of configuration management for beginners, you can have a look at this series: Getting Started with Configuration Management.