Update index.md (#25403)

Hyperlink to Wikipedia source on line 9.
This commit is contained in:
William George Cook
2018-12-20 03:01:48 -08:00
committed by Manish Giri
parent 9a10046c2f
commit fcdf2af664

View File

@ -6,7 +6,7 @@ title: Puppet
Puppet is an open-source software configuration management tool. It includes its own declarative language to describe system configuration, it is written in C++ and Clojure.
Puppet is designed to manage the configuration of Unix-like and Microsoft Windows systems declaratively. The user describes system resources and their state, either using Puppet's declarative language or a Ruby DSL (domain-specific language). This information is stored in files called "Puppet manifests". Puppet discovers the system information via a utility called Facter, and compiles the Puppet manifests into a system-specific catalog containing resources and resource dependency, which are applied against the target systems. Any actions taken by Puppet are then reported.
Puppet consists of a custom declarative language to describe system configuration, which can be either applied directly on the system, or compiled into a catalog and distributed to the target system via clientserver paradigm (using a REST API), and the agent uses system specific providers to enforce the resource specified in the manifests. The resource abstraction layer enables administrators to describe the configuration in high-level terms, such as users, services and packages without the need to specify OS specific commands (such as rpm, yum, apt).
source: Wikipedia/Puppet
source: [Wikipedia/Puppet](https://en.wikipedia.org/wiki/Puppet_(software))
## What exactly does a configuration management tool do?
Say you have a web application served by two servers up and running, and then you need to update one configuration (for example you need to update Python), you can go to the first machine and make the update, then go to the next machine and do the same.