System administrators are responsible for the maintenance and operation of a computer system and network. This is a major task with a huge number of decisions to be made regarding the configuration of the system.
Configuration Management is a term that may not be familiar to many Linux users. But for system administrators the concept will be well known. In a nutshell, Configuration Management software enables administrators to automatically manage the entire configuration of one or multiple computers. An IT team’s main responsibility is to maintain, secure, and operate an organization’s systems and networks. This, in itself, carries a huge responsibility. IT teams that maintain technology infrastructure, deploy applications, and provisioning environments with many manual tasks are inefficient. In modern environments, services are rarely deployed in isolation. Simple applications may need several services to run – such as a web server and a database. Deploying more complex systems, many services may need installing, configuring, and linked together.
Why is this type of software important? By having tools that automate the configuration and software infrastructure, an organization’s server administration costs are reduced. Furthermore, this type of software enables a large complicated infrastructure to be supported with fewer system administrators. There are also efficiency improvements made by helping to reduce the amount of repetitive tasks performed by the administrator. Moreover, configuration management software help organizations to be able to scale up their computer infrastructure more easily and to instill flexibility in server configuration.
Configuration Management tools work by changing the state of the system. The goal is to get a system from whatever state it is in, into the desired state. The state of a system is mostly described by all the configuration files in the file system, and by the programs and processes that are running. Configuration management software are the tools of choice for many system administrators and DevOps professionals.
The software featured in this article are declarative configuration management system. Here the system administrator decides what state the system is to be in, and a runtime pushes the system into that state.
Here’s our verdict captured in a legendary LinuxLinks-style ratings chart..

Click the links in the table below to learn more about each configuration management tool.
| Configuration Management | |
|---|---|
| Ansible | Software provisioning, configuration management, and application deployment |
| Salt | Python-based configuration management software and remote execution engine |
| Chef | Automate IT Infrastructure for Hardened, Consistent Configuration |
| Puppet | Centralized configuration management for networks |
| CFEngine | IT infrastructure automation and Continuous Operations framework |
| Juju | Simple, secure devops tooling |
| pyinfra | Automates infrastructure super fast at massive scale. |
| Rudder | Continuous configuration for effective compliance |
| Quattor | Complex set of tools for automated machine management |
| cdist | Configuration management tool that uses the Bourne Shell for scripting |
| ZooKeeper | Centralized service for maintaining configuration information |
| Rex | Friendly automation framework |
| Bcfg2 | Produce a consistent, reproducible, and verifiable description |
This article has been revamped in line with our recent announcement.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Know a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |

