Article Series: Configuration Management Tools
Snowflake servers are quickly becoming a thing of the past. The advent of datacenters with hundreds, thousands or tens of thousands of nodes made manual system administration an impossible task. Infrastructure as code, self-healing infrastructure, cloud computing, the virtualization of everything is the new normal.
Configuration management is the foundation that makes modern infrastructure possible. Tools that enable configuration management are required in the toolbox of any operations team, and many development teams as well. Although all the tools aim to solve the same basic set of problems, they adhere to different visions and exhibit different characteristics. The issue is how to choose the tool that best fits each organization's scenarios.
The goal of this series is to introduce some of the configuration tools on the market, the principles behind each one and what makes them stand out from each other.
A virtual panel with users of configuration management tools discusses their experiences, lessons learned and the reasoning that lead them to choose their configuration management tool.
Michael DeHaan, creator of Ansible, introduces the general-purpose IT automation system. He describes the tool’s guiding principles: simplicity, ease of use and maximum security. The philosophy behind its community is also discussed, including the importance of Ansible’s plugin-based model. Michael uses a simple but common scenario to demonstrate Ansible
In this article, Eelco Dolstra gives a short introduction to NixOS, a Linux distribution, and to Nix, the package manager on which NixOS is based.
These provide a declarative approach to configuration management with many advantages to users, such as strong reproducibility and atomic upgrades and rollbacks.
Joseph Hall, SaltStack senior engineer, introduces the the remote execution and configuration management system and its guiding goals. Joseph uses a simple LAMP scenario to demonstrate SaltStack.
Configuration management tools are a hot topic on the DevOps community and IT organizations in general. InfoQ editor Joao Miranda reached out to users of each of the major tools (Ansible, CFEngine, Chef, Puppet and SaltStack) to ask them about their experiences. Why did they choose a given tool? How was the tool introduced in the organization? These are some of the questions they answered.
"Taste Test", by Matt Jaynes, is a book that uses a simple scenario to compare Ansible, SaltStack, Chef and Puppet. On the recently released 2nd edition it adds new chapters on Docker, the communities around the tools, and how they fare on security. InfoQ editor Joao Miranda talked with Matt to know more about his thoughts on the tools and his approach to configuration management when consulting.
Joao Miranda started his career in 2000, at the height of the dot-com bubble. That enlightening experience led him to the conclusion that agile practices are the best way to respond to the business needs of almost all organizations.
Since then he has been a vocal advocate, helping his organization adopt agile methods and engineering practices, such as continuous integration and automated deployments.
He is currently responsible for the application lifecycle managements tools team within his organization, with a special focus on DevOps and continuous delivery.
Ben Linders May 28, 2015