Comparison of open-source configuration management software: Difference between revisions
Content deleted Content added
Jerryobject (talk | contribs) →Basic properties: Small WP:COPYEDITs WP:EoS: WP:TERSE, clarify. MOS:FIRSTABBReviation clarify, define before WP:ABBR in parentheses. WP:BADEMPHASIS MOS:QUOTEMARKS > WP:ITALICs or <code>s. WP:LINKs: needless WP:PIPEs > WP:NOPIPEs, update-standardizes, adds. Avoidable WP:SLASH > comma. |
m Replaced 6 bare URLs by {{Cite web}} |
||
(24 intermediate revisions by 16 users not shown) | |||
Line 12:
"Verify mode" (also called [[dry run (testing)|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 [[Daemon (computing)|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 <code>Agent-less
<div class="overflowbugx" style="overflow:auto; width:99%;">
Line 37:
| {{yes}}<ref>{{cite web|url=http://www.ansible.com/products/awx-project/faq|title=AWX Project FAQ - Ansible.com|author=Red Hat, Inc.|work=ansible.com}}</ref>
| style="text-align:left;"| 2012-03-08
| style="text-align:left;"|
|-
! {{rh}} | [[Bcfg2]]
Line 92:
| {{yes}}<ref name="CFEngine Enterprise">{{cite web |url=https://cfengine.com/product/ |title=CFEngine Enterprise Mission Portal|publisher=Northern.tech AS.}}</ref>
| style="text-align:left;"|1993
| style="text-align:left;"|
2025-01-07 2025- |-
! {{rh}} | Consfigurator
| [[Scheme (programming language)|Scheme]] ([[Steel Bank Common Lisp|SBCL]])
| [[GNU General Public License#Version 3|GPLv3+]]<ref>{{cite web | title=Consfigurator | url=https://spwhitton.name/tech/code/consfigurator/ }}</ref>
| {{yes}}{{efn|name="Key Pair"}}
| {{yes}}{{efn|name="Secure Shell"}}
Line 104 ⟶ 106:
| {{no}}
|
|
|-
! {{rh}} | [[Guix]]
| [[Scheme (programming language)|Scheme]] ([[GNU Guile|Guile]])<ref>{{Cite web | title=GNU Guix Reference Manual | url=https://guix.gnu.org/en/manual/en/guix.html#System-Configuration | archive-url=https://web.archive.org/web/20210612235408/https://guix.gnu.org/en/manual/en/guix.html | access-date=2025-08-30 | archive-date=2021-06-12}}</ref><ref>{{Cite web | title=GNU Guix Reference Manual | url=https://guix.gnu.org/en/manual/en/guix.html#Invoking-guix-deploy | archive-url=https://web.archive.org/web/20210612235408/https://guix.gnu.org/en/manual/en/guix.html | access-date=2025-08-30 | archive-date=2021-06-12}}</ref>
| [[GNU General Public License#Version 3|GPLv3+]]<ref>{{Cite web | title=gnu.scm - guix.git - Mirror of https://codeberg.org/guix/guix {{!}} GNU Guix and GNU Guix System | url=https://git.savannah.gnu.org/cgit/guix.git/tree/gnu.scm?h=v1.4.0#n8 | access-date=2025-08-30 | website=git.savannah.gnu.org}}</ref>
| {{yes}}{{efn|name="Key Pair"}}
| {{yes}}{{efn|name="Secure Shell"}}
Line 115 ⟶ 117:
| {{no}}<ref>It requires the guix daemon on the target Guix system.</ref>
|
|
|-
! {{rh}} | [[ISconf]]
Line 137 ⟶ 139:
| {{yes}}<ref>{{cite web |url=https://demo.jujucharms.com/trusty/juju-gui/ |title=Juju Gui |publisher=jujucharms.com |date=2015-06-15 |access-date=2015-06-21 |archive-url=https://web.archive.org/web/20150621233749/https://demo.jujucharms.com/trusty/juju-gui/ |archive-date=2015-06-21 |url-status=dead}}</ref>
| style="text-align:left;"|2010-09-17<ref>{{cite web|url=https://launchpad.net/juju/+series |title=timeline: pyjuju |publisher=Launchpad.net |access-date=2014-02-10}}</ref>
| style="text-align:left;"|
|-
! {{rh}} | Local ConFiGuration system ([[LCFG]])
Line 164 ⟶ 166:
| Perl, [[PHP]], [[C++]]
| GPL
| {{no}}<ref>Server authenticates to client, but client does not authenticate to server. See [
| {{yes}}{{efn|name="SSL"}}
|
Line 201 ⟶ 203:
| {{yes}}{{efn|name="Verify-Puppet"|Using the --noop option}}<ref>{{cite web |url=http://docs.puppetlabs.com/man/agent.html |title=puppet agent Man Page — Documentation — Puppet Labs |publisher=Docs.puppetlabs.com |access-date=2014-02-10 |archive-url=https://web.archive.org/web/20130707135331/http://docs.puppetlabs.com/man/agent.html |archive-date=2013-07-07 |url-status=dead}}</ref>
| {{no}}
| {{yes}}<ref>{{cite web|url=http://www.olindata.com/blog/2014/01/puppet-management-gui-comparison|title=Puppet Management GUI Comparison|work=olindata.com|access-date=2015-01-12|archive-url=https://web.archive.org/web/20150117063953/http://www.olindata.com/blog/2014/01/puppet-management-gui-comparison|archive-date=2015-01-17|url-status=
| style="text-align:left;"|2005-08-30<ref>{{cite web|url=http://puppetlabs.com/downloads/puppet/?C=M;O=A |title=Index of /puppet |publisher=Puppetlabs.com |access-date=2014-02-10}}</ref>
| style="text-align:left;"|2024-04 8.6.0, 7.30.0 (client),<ref>{{cite web |title=Puppet release notes |url=https://puppet.com/docs/puppet/latest/release_notes_puppet.html |access-date=2024-05-06}}</ref> 2024-04 8.6.0, 7.17.0 (server)<ref>{{cite web |title=Puppet Server: Release Notes |url=https://puppet.com/docs/puppetserver/latest/release_notes.html |access-date=2024-05-06}}</ref>
|-▼
! {{rh}} | Pyinfra
| [[Python (programming language)|Python]]
| [[MIT License]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| ▼
| style="text-align:left;"| 2016-08-10 0.1<ref>{{cite web|url=https://github.com/pyinfra-dev/pyinfra/releases/tag/v0.1 |title=pyinfra v0.1 |website=[[GitHub]] | access-date=2025-02-23}}</ref>
| style="text-align:left;"| 2025-01-30 3.2<ref>{{cite web |url=https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.2 |title=Pyinfra v3.2 |website=[[GitHub]] | access-date=2025-02-23}}</ref>
|-
! {{rh}} | [[Quattor]]
Line 212 ⟶ 225:
the original server." - from [http://isscvs.cern.ch:8180/cgi-bin/cvsweb.cgi/%7Echeckout%7E/elfms/quattor/documentation/installation-guide/pdf/quattor-install-guide_1_1.pdf?rev=HEAD&content-type=application/pdf&cvsroot=elfms Quattor Installation and User Guide: Version 1.1.x] {{Webarchive|url=https://web.archive.org/web/20130406095526/http://isscvs.cern.ch:8180/cgi-bin/cvsweb.cgi/%7Echeckout%7E/elfms/quattor/documentation/installation-guide/pdf/quattor-install-guide_1_1.pdf?rev=HEAD&content-type=application%2Fpdf&cvsroot=elfms |date=2013-04-06}}, page 70</ref>
| {{yes}}<ref>"[...] secure information transfer, since data are encrypted: this prevents eavesdroppers from obtaining information in transit over the network." - from [http://isscvs.cern.ch:8180/cgi-bin/cvsweb.cgi/%7Echeckout%7E/elfms/quattor/documentation/installation-guide/pdf/quattor-install-guide_1_1.pdf?rev=HEAD&content-type=application/pdf&cvsroot=elfms Quattor Installation and User Guide: Version 1.1.x] {{Webarchive|url=https://web.archive.org/web/20130406095526/http://isscvs.cern.ch:8180/cgi-bin/cvsweb.cgi/%7Echeckout%7E/elfms/quattor/documentation/installation-guide/pdf/quattor-install-guide_1_1.pdf?rev=HEAD&content-type=application%2Fpdf&cvsroot=elfms |date=2013-04-06}}, page 70</ref>
| {{partial}}<ref>{{Cite web |title=ncm-ncd — Quattor |url=https://quattor-documentation.readthedocs.io/latest/ncm-ncd/ncm-ncd.html#other-options |access-date=2025-02-25 |website=quattor-documentation.readthedocs.io}}</ref>
▲|
| {{no}}
▲|
|
| style="text-align:left;"|2005-04-01<ref>{{cite web |url=http://quattorsw.web.cern.ch/quattorsw/software/quattor/release/ |title=Index of /quattorsw/software/quattor/release |publisher=Quattorsw.web.cern.ch |access-date=2014-02-10 |archive-url=https://web.archive.org/web/20140318090836/http://quattorsw.web.cern.ch/quattorsw/software/quattor/release/ |archive-date=2014-03-18 |url-status=dead}}</ref>
| style="text-align:left;"|
|-
! {{rh}} | [[Radmind]]
Line 226 ⟶ 239:
| {{no}}
|
| style="text-align:left;"|2002-03-26<ref>{{cite web|url=
| style="text-align:left;"|2008-10-08 1.13.0<ref>{{cite web|url=
|-
! {{rh}} | [[Rex (software)|Rex]]
Line 286 ⟶ 299:
! {{rh}} | [[STAF]]
| [[C++]]
| [[Common Public License|CPL]]<ref>{{cite web|url=
| {{no}}{{efn|name="Network Trust"|Network Trust: Trusts the network, like rsh.}}{{efn|name="User-only Auth"|User-only Auth: User authenticates to server via password, but uses Network Trust to authenticate user to server, like telnet.}}
| {{partial}}<ref>There is a [
|
| {{no}}
|
| style="text-align:left;"|1998-02-16<ref>{{cite web|url=
| style="text-align:left;"|2012-12-16 3.4.16 <ref>{{cite web|url=
|-
! {{rh}} | Synctool<ref>[http://www.heiho.net/synctool/ Synctool] aims to be easy to understand and use. It is built in Python and uses SSH and Rsync.</ref>
Line 315 ⟶ 328:
| {{yes}}
| style="text-align:left;"| 2018-06<ref name="Uyuni: Forking Spacewalk with Salt and Containers">{{cite web|url=https://news.opensuse.org/2018/05/26/uyuni-forking-spacewalk-with-salt-and-containers/|title=Uyuni: Forking Spacewalk with Salt and Containers|date=26 May 2018}}</ref>
| style="text-align:left;"|
|-
! style="width:12em" |
Line 353 ⟶ 366:
| {{yes}}
| {{yes}}
| {{partial}} {{efn|yes for managed machine; no for managing machine}}
| {{yes}}<ref>{{Citation | url = http://docs.ansible.com/intro_installation.html#control-machine-requirements | title = Installation: Control Machine Requirements|access-date=May 12, 2015}} Can manage any machine with Python 2.4 or later and sshd. Control machine can be any non-Windows machine with Python 2.6 or 2.7 installed. This includes Red Hat, Debian, CentOS, OS X, any of the BSDs, and so on.</ref>
|-
Line 400 ⟶ 413:
| {{partial}}<ref name="consfigurator-portability"></ref>
|
| {{yes}}<ref name="consfigurator-portability">{{Cite web | title=Introduction — Consfigurator 1.5.3 documentation | url=https://spwhitton.name/doc/consfigurator/introduction.html#portability-and-stability | access-date=2025-08-30 | website=spwhitton.name}}</ref>
|
|
Line 485 ⟶ 498:
| {{yes}}<ref>{{Citation | url = https://puppet.com/blog/puppet-windows-top-questions-2019/ | title = Puppet on Windows: top questions for 2019|access-date=2019-01-15}}</ref>
| {{yes}}
|-
! {{rh}} | Pyinfra
|
| {{yes}}
|
| {{yes}}
| {{yes}}
|
| {{partial}}<ref>{{Citation | url = https://github.com/pyinfra-dev/pyinfra-windows | title = Pyinfra WinRM connector|access-date=2025-02-23}}</ref>
|
|-
! {{rh}} | [[Quattor]]
Line 491 ⟶ 514:
| {{no}}
| {{yes}}
| {{partial}}<ref>{{cite web|url=
| {{yes}}
| {{no}}
Line 561 ⟶ 584:
| {{yes}}{{efn|11.00+ (PA-RISC 32, IA-64)}}
| {{yes}}{{efn|(x86-32, x86-64, IA-64, PPC 64, zSeries 32/64)}}
| {{yes}}<ref>[
| {{yes}}{{efn|2.6+ (Sparc 32); 10+ (x86-32, x86-64)}}
| {{yes}}{{efn|95, 98, Me, NT4, 2000, XP, 2003, Vista (x86-32), 7 (x86-32), 7 (x86-64); 2003, Vista (x86-64); 2004 (IA-64)}}
Line 620 ⟶ 643:
;[[Guix]]
:Guix integrates many things in the same tool (a distribution, package manager, configuration management tool, container environment, etc). To remotely manage systems, it needs the target machines to already run Guix<ref>{{Cite web | title=GNU Guix Reference Manual | url=https://guix.gnu.org/en/manual/en/guix.html#index-machine_002dssh_002dconfiguration | archive-url=https://web.archive.org/web/20210612235408/https://guix.gnu.org/en/manual/en/guix.html | access-date=2025-08-30 | archive-date=2021-06-12}}</ref> or it can also alternatively deploy configurations inside Digital Ocean Droplet.<ref>{{Cite web | title=GNU Guix Reference Manual | url=https://guix.gnu.org/en/manual/en/guix.html#index-digital_002docean_002dconfiguration | archive-url=https://web.archive.org/web/20210612235408/https://guix.gnu.org/en/manual/en/guix.html | access-date=2025-08-30 | archive-date=2021-06-12}}</ref>
;[[ISconf]]
Line 639 ⟶ 662:
;[[Puppet (software)|Puppet]]
:Puppet consists of a custom declarative language to describe system configuration, distributed using the client–server paradigm (using [[XML-RPC]] protocol in older versions, with a recent switch to [[Representational State Transfer|REST]]), and a library to realize the configuration. The resource abstraction layer enables administrators to describe the configuration in high-level terms, such as users, services and packages. Puppet will then ensure the server's state matches the description. There was brief support in Puppet for using a pure Ruby DSL as an alternative configuration language starting at version 2.6.0. However this feature was deprecated beginning with version 3.1.<ref name="upguard.com"/><ref name="alansharp-paul"/><ref name = "Ruby DSL">{{cite web|url=https://puppetlabs.com/blog/ruby-dsl/|title=Puppet & Ruby DSL - Puppet Labs|work=Puppet Labs}}</ref><ref name = "Ruby DSL is Deprecated">{{cite web|url=http://docs.puppetlabs.com/puppet/3/reference/whats_new.html#ruby-dsl-is-deprecated|title=Puppet 3.0 — 3.4 Release Notes|work=puppetlabs.com|access-date=2013-05-23|archive-url=https://web.archive.org/web/20130513170449/http://docs.puppetlabs.com/puppet/3/reference/whats_new.html#ruby-dsl-is-deprecated|archive-date=2013-05-13|url-status=dead}}</ref>
;Pyinfra
:Pyinfra is an agentless server configuration management tool created in Python. Its execution speed is up to 10 times faster than Ansible.<ref>{{cite web|url=https://docs.pyinfra.com/en/3.x/performance.html#performance|title=Performance|access-date=2025-02-23}}</ref> Pyinfra is also excellent for system integration, as it can control SSH connections, Docker, Terraform, Ansible, etc. using a mechanism called a connector. Pyinfra can be run ad hoc or through the API.<ref>{{cite web|url=https://pyinfra.com/|title=Pyinfra|access-date=2025-02-23}}</ref>
;[[Quattor]]
Line 656 ⟶ 682:
;[[Spacewalk (software)|Spacewalk]]
:Spacewalk is an open source Linux and Solaris systems management
;[[Software Testing Automation Framework|STAF]]
:The Software Testing Automation Framework (STAF) enables users to create cross-platform, distributed software test environments. STAF removes the tedium of building an automation infrastructure, thus enabling users to focus on building their automation
;Synctool
|