This article has an unclear citation style.(November 2013) |
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" 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 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, in fact 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?) functionality.
Language | License | Mutual auth | Encrypts | Verify mode | Agent-less | Have a GUI | First release | Latest stable release | |
---|---|---|---|---|---|---|---|---|---|
Ansible | Python | GPLv3+ | Yes[1] | Yes[2] | Yes | Yes | Yes[3] | 2012-03-08 | 2020-03-05 2.9.6[4][5][6][7] |
Bcfg2 | Python | BSD 2-clause[8] | Yes[9] | Yes[10] | Yes[11] | No | Yes[12] | 2004-08-11[13] | 2015-06-11 1.3.6[13] |
Capistrano | Ruby | MIT License | Yes[2] | Yes[2] | No | 2005 | 2017-03-08 4.4.2 | ||
cdist | Python | GPLv3+ | Yes[1] | Yes[2] | Yes | 2010 | 2018-04-20 4.8.4[14] | ||
Chef | Ruby, Erlang | Apache 2.0 | Yes[15] | Yes[16] | Yes[17][18] | No | Yes | 2009-01-15 0.5.0 | 2019-01-28 14.10.9 (client),[19] 2018-02-13 12.17.33 (server)[20] |
CFEngine | C[21] | GPLv3[22] | Yes[1] | Yes[23] | Yes[24][25] | No | Yes[26] | 1993 | 2020-11-19 3.17.0,[27] 2021-06-08 3.15.4,[28] 2021-06-08 3.12.7[29] |
ISconf | Python | GPL[30] | Yes[31] | No[32] | 1998 | 2006-08-13 4.2.8.233 | |||
Juju | Python, Go[33] | Affero General Public License | Yes[1] | Yes[10] | No | No | Yes[34] | 2010-09-17[35] | 2021-04-28 2.9.0[36] |
Local ConFiGuration system (LCFG) | Perl | GPL | Partial[37] | Partial[38] | No | No | No | 1994 | Weekly Releases |
NOC | Python | BSD License 2.0 | Yes[1] | Yes[2] | Yes | Yes | Yes | 2012-03-08 | 2015-05-20 15.05.1[39] |
OCS Inventory NG with GLPI | Perl, PHP, C++ | GPL | No[40] | Yes[10] | No | 2003 | 2014-07-13[41] | ||
Open pc server integration (Opsi) | Python, Java | GPL | No | Yes[10] | No | 2004 | 2013-03-01 4.0.3 | ||
PIKT | C | GPLv2+[42] | Yes[43] | Yes[44] | No | 1998[45] | 2007-09-10 1.19.0 | ||
Puppet | Ruby, C++ & Clojure (server-side also Ruby before 4.0[46]) | Apache since 2.7.0, GPL before then | Yes[47] | Yes[10] | Yes[48][49] | No | Yes[50] | 2005-08-30[51] | 2020-06-03 6.16.0 (client),[52] 2020-06-03 6.12.0 (server)[53] |
Quattor | Perl, Python | Apache 2.0[54][55] | Yes[56] | Yes[57] | 2005-04-01[58] | 2018-07-3 18.6.0[59] | |||
Radmind | C | BSD[60] | Yes[61] | Yes[62] | No | 2002-03-26[63] | 2008-10-08 1.13.0[64] | ||
Rex | Perl | Apache | Yes[1] | Yes[2] | Yes | 2010-11-05 0.9.0[65] | 2017-12-03 1.6.0[66] | ||
Rudder | C, Scala and Rust | GPLv3 and Apache 2.0[67] | Yes[1] | Yes[10] | Yes[68][69] | No | Yes | 2011-10-31 | 2020-10-28 5.0.20[70] |
SmartFrog | Java | LGPL | Yes[71] | Yes[71] | No | 2004-02-11 | 2009-01-26 3.16.004[72][73] | ||
Salt[74] | Python[75] | Apache 2.0[76] | Yes[77] | Yes[77] | Yes | Both[78][79] | Yes[80][81] | 2011-03-17 0.6.0[82] | 2021-03-31 v3003[83] |
Spacewalk | Java (C, Perl, Python, PL/SQL) | GPLv2 | Yes | Yes | No | 2008-06[84] | 2019-01-14 2.9[85] | ||
STAF | C++ | CPL[86] | No[87][88] | Partial[89] | No | 1998-02-16[90] | 2012-12-16 3.4.16 [91] | ||
Synctool[92] | Python[93] | GPLv2[94] | Yes[95] | Yes[2] | Yes[96] | Yes[97] | 2003[98] | 2019-08-11 6.3[99] | |
Uyuni | Java, Python, PL/SQL (Perl) | GPLv2/Apache 2.0 | Yes | Yes | Yes | Both | Yes | 2018-06[100] | 2020-11-26 2020.11[101] |
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 | Yes (Need linux control machine) | Yes[102] |
Bcfg2 | Partial[103] | Yes[104] | No | Yes[105] | Partial[106] | Yes | No | No |
CFEngine | Yes | Yes[104] | Yes | Yes | Yes | Yes | Yes (Enterprise version only) | Yes[107] |
cdist | Yes | Yes | Yes | No | ||||
Chef | Yes[108] | Yes | Yes | Yes | Yes | Yes | Yes[109] | Yes |
ISconf | Yes | Yes | Yes | Yes | Yes | Yes | No | No |
Juju | Yes | Yes[110] | ||||||
Local ConFiGuration system (LCFG) | No | No | No | Partial[111] | Partial[112] | Partial[113] | 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[114] |
Puppet | Yes | Yes | Yes | Yes | Yes | Yes | Yes[115] | Yes |
Quattor | No | No | No | Yes | Partial[116] | Yes | No | No |
Radmind | Yes | Yes[104][117][118] | No | Yes | Yes | Yes | Yes | No |
Rex | Yes | Yes | Yes[119] | Yes | Yes[119] | No | ||
Rudder | Yes | Partial[120] | No | Yes | Partial[120] | Partial[121] | Yes | Yes[122] |
SmartFrog | No[123] | No[123] | Yes | Yes | Yes | Yes | Yes | No[123] |
Salt | Yes | Yes | Partial[124] | Yes[125] | Yes | Yes[126] | Yes | Partial[124] |
Spacewalk | No[127] | No | No | Yes[128] | No | No[129] | No | No |
STAF | Yes[130] | Yes[131] | Yes[132] | Yes[133] | Yes[134] | Yes[135] | Yes[136] | Yes[137] |
Synctool | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes[138] |
Uyuni | No | No | No | Yes | 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.
By: Wikipedia.org
Edited: 2021-06-18 14:12:56
Source: Wikipedia.org