Puppet offers an automatic way to inspect, deliver, operate and future-proof software, regardless where it runs. It’s a very comprehensive tool with core configuration management capabilities and functionality out-of-the-box.
The software allows system administrators to centrally manage every important aspect of a system using a cross-platform specification language that manages all the separate elements normally aggregated in different files, like users, cron jobs, and hosts, along with obviously discrete elements like packages, services, and files.
Puppet’s simple declarative specification language provides powerful classing abilities for drawing out the similarities between hosts while allowing them to be as specific as necessary, and it handles dependency and prerequisite relationships between objects clearly and explicitly. As the language is declarative, you only need to detail the desired end state(s) of the system and Puppet sorts out the rest.
The primary design goal of Puppet is that it has an expressive enough language backed by a powerful enough library that you can write your own server automation applications in just a few lines of code.
Puppet consists of:
- A puppet-agent “All-in-One” package that installs Puppet, Ruby, Facter, Hiera, and supporting code.
- A puppetserver package that installs Puppet Server.
- A puppetdb package that installs PuppetDB.
Key Features
- Custom declarative language to describe system configuration.
- Manages any type of machine including workstations.
- Helps reduce your overheads.
- Powerful, flexible and extensible.
- Puppet uses Facter, a system profiling library. It discovers and reports per-node facts, which are available in your Puppet manifests as variables.
- Reproduce any configuration on any number of additional systems.
- Built-in facilities known as classes.
- Huge collection of modules: reusable, sharable units of code that extend Puppet across your infrastructure by automating tasks including setting up a web server, mail server, database, and much more.
- Active user community.
Puppet comes in two versions, Puppet Enterprise and Open Source Puppet. In addition to providing functionalities of Open Source Puppet, Puppet Enterprise also provides GUI, API and command line tools for node management.
Website: www.puppet.com/community
Support: Documentation, GitHub Code Repository
Developer: Puppet Labs
License: Apache License v2.0
Facter is written in C++ while Puppet Server and Puppet DB are written in Clojure. Learn C++ with our recommended free books and free tutorials. Learn Clojure with our recommended free books and free tutorials.
Related Software
| 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 |
Read our verdict in the software roundup.
| Cloud Management Tools | |
|---|---|
| Puppet | Centralised configuration management for networks |
| Chef | Configuration management system written in Ruby |
| Libcloud | Unified interface to manage cloud services |
| Juju | Build entire environments in the cloud with only a few commands |
| Ganeti | Cluster virtual server management software tool |
| jclouds | Cloud agnostic library |
Read our verdict in the software roundup.
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. Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |

