This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)
|
This is a comparison of notable free and open-source configuration management software, suitable for tasks like server configuration, orchestration and infrastructure as code typically performed by a system administrator.
"Verify mode" (also called dry run) refers to having an ability to determine whether a node is conformant with a guarantee of not modifying it, and typically involves the exclusive use of an internal language supporting read-only mode for all potentially system-modifying operations. Mutual authentication (mutual auth) refers to the client verifying the server and vice versa.
Agent describes whether additional software daemons are required. Depending on the management software these agents are usually deployed on the target system or on one or many central controller servers. Although Agent-less = No is colored red and might seem to be a negative, instead, having an agent can be considered quite advantageous to many. Consider the impact if an agent-less tool loses connectivity to a node while making critical changes—leaving the node in an indeterminate state that compromises its (production?) function.
| Language | License | Mutual auth. | Encryption | Verify mode | Agent-less | Incl. GUI | First release | Latest stable release | |
|---|---|---|---|---|---|---|---|---|---|
| Ansible | Python | GPLv3+ | Yes | Yes | Yes | Yes | Yes | 2012-03-08 | 2026-06-18 2.18.18 |
| Bcfg2 | Python | BSD 2-clause | Yes | Yes | Yes | No | Yes | 2004-08-11 | 2015-06-11 1.3.6 |
| Capistrano | Ruby | MIT | Yes | Yes | No | 2005 | 2022-08-07 3.17.1 | ||
| cdist | Python | GPLv3+ | Yes | Yes | Yes | 2010 | 2021-08-24 6.9.8 | ||
| Chef | Ruby, Erlang | Apache 2.0 | Yes | Yes | Yes | No | Yes | 2009-01-15 0.5.0 | 2026-07-13 18.11.11 (client), 15.10.114 (server) |
| CFEngine | C | GPLv3 | Yes | Yes | Yes | No | Yes | 1993 |
2026-07-10 3.28.0, 2026-10-22 3.27.3, 2026-10-22 3.24.6 |
| Consfigurator | Common Lisp (SBCL) | GPLv3+ | Yes | Yes | No | 2024-07-26 1.4.2 | |||
| Guix | Scheme (Guile) | GPLv3+ | Yes | Yes | No | No | 2022-12-19 1.4.0 | ||
| ISconf | Python | GPL | Yes | No | 1998 | 2006-08-13 4.2.8.233 | |||
| Juju | Python, Go | AGPL | Yes | Yes | No | No | Yes | 2010-09-17 | 2025-06-09 3.6.7 |
| Local ConFiGuration system (LCFG) | Perl | GPL | Partial | Partial | No | No | No | 1994 | Weekly Releases |
| NOC Project | Python | BSD 2.0 | Yes | Yes | Yes | Yes | Yes | 2012-03-08 | 2015-05-20 15.05.1 |
| OCS Inventory NG with GLPI | Perl, PHP, C++ | GPL | No | Yes | No | 2003 | 2026-04-23 | ||
| Open pc server integration (Opsi) | Python, Java | GPL | No | Yes | No | 2004 | 2013-03-01 4.0.3 | ||
| PIKT | C | GPLv2+ | Yes | Yes | No | 1998 | 2007-09-10 1.19.0 | ||
| Puppet | Ruby, C++ & Clojure (server-side also Ruby before 4.0) | Apache since 2.7.0, GPL before then | Yes | Yes | Yes | No | Yes | 2005-08-30 | 2026-06 8.20.0 (client), 2024-04 8.9.9 (server) |
| Pyinfra | Python | MIT License | Yes | Yes | Yes | Yes | 2016-08-10 0.1 | 2025-01-30 3.2 | |
| Quattor | Perl, Python | Apache 2.0 | Yes | Yes | Partial | No | 2005-04-01 | 2026-04-07 26.2.0 | |
| Radmind | C | BSD | Yes | Yes | No | 2002-03-26 | 2008-10-08 1.13.0 | ||
| Rex | Perl | Apache | Yes | Yes | Yes | 2010-11-05 0.9.0 | 2025-07-05 1.16.1 | ||
| Rudder | C, Scala, Rust | GPLv3, Apache 2.0 | Yes | Yes | Yes | No | Yes | 2011-10-31 | 2026-07-09 9.1.3 |
| SmartFrog | Java | Apache 2.0 | Yes | Yes | No | 2004-02-11 | 2012-03-13 3.18.016 | ||
| Salt | Python | Apache 2.0 | Yes | Yes | Yes | Both | Yes | 2011-03-17 0.6.0 | 2026-07-01 v3008.-2 |
| Spacewalk | Java (C, Perl, Python, PL/SQL) | GPLv2 | Yes | Yes | No | 2008-06 | 2019-01-14 2.9 | ||
| STAF | C++ | CPL | No | Partial | No | 1998-02-16 | 2012-12-16 3.4.16 | ||
| Synctool | Python | GPLv2 | Yes | Yes | Yes | Yes | 2003 | 2019-08-11 6.3 | |
| Uyuni | Java, Python, PL/SQL (Perl) | GPLv2, Apache 2.0 | Yes | Yes | Yes | Both | Yes | 2018-06 | 2024-01-31-01 2024.01 |
| Language | License | Mutual auth | Encrypts | Verify mode | Agent-less | Have a GUI | First release | Latest stable release |
Note: This means platforms on which a recent version of the tool has actually been used successfully, not platforms where it should theoretically work since it is written in good portable C/C++ or an interpreted language. It should also be listed as a supported platform on the project's web site.
| AIX | *BSD | HP-UX | Linux | OS X | Solaris | Windows | Others | |
|---|---|---|---|---|---|---|---|---|
| Ansible | Yes | Yes | Yes | Yes | Yes | Yes | Partial | Yes |
| Bcfg2 | Partial | Yes | No | Yes | Partial | Yes | No | No |
| CFEngine | Yes | Yes | Yes | Yes | Yes | Yes | Yes (enterprise version only) | Yes |
| cdist | Yes | Yes | Yes | No | ||||
| Chef | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
| Consfigurator | Partial | Yes | No | |||||
| Guix | No | No | No | Partial | No | No | No | Partial |
| ISconf | Yes | Yes | Yes | Yes | Yes | Yes | No | No |
| Juju | Yes | Yes | ||||||
| Local ConFiGuration system (LCFG) | No | No | No | Partial | Partial | Partial | No | No |
| OCS Inventory NG | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No |
| Open pc server integration (Opsi) | No | No | No | Yes | No | No | Yes | No |
| PIKT | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes |
| Puppet | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
| Pyinfra | Yes | Yes | Yes | Partial | ||||
| Quattor | No | No | No | Yes | Partial | Yes | No | No |
| Radmind | Yes | Yes | No | Yes | Yes | Yes | Yes | No |
| Rex | Yes | Yes | Yes | Yes | Yes | No | ||
| Rudder | Yes | Partial | No | Yes | Partial | Partial | Yes | Yes |
| SmartFrog | No | No | Yes | Yes | Yes | Yes | Yes | No |
| Salt | Yes | Yes | Partial | Yes | Yes | Yes | Yes | Partial |
| Spacewalk | No | No | No | Yes | No | No | No | No |
| STAF | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
| Synctool | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes |
| Uyuni | No | No | No | Partial | No | No | No | No |
| AIX | *BSD | HP-UX | Linux | OS X | Solaris | Windows | Others |
Not all tools have the same goal and the same feature set. To help distinguish between all of these software packages, here is a short description of each one.
{{cite web}}: External link in |title= (help){{cite web}}: CS1 maint: deprecated archival service (link){{cite web}}: CS1 maint: deprecated archival service (link)