Open Source Projects

The Puppet ecosystem includes more than 40 open source projects that are used with Open Source Puppet and Puppet Enterprise. Each project adds a capability that IT teams rely on for automating infrastructure management.

Sysadmins and developers who rely on Open Source Puppet choose the components they need to do their jobs from the open source projects associated with Puppet, plus more than 3,100 pre-built modules available on the Puppet Forge. IT organizations using Puppet Enterprise have all the open source projects available to them, fully integrated for all their management needs, security-hardened and tuned for performance.

Some of the most commonly used open source projects in the Puppet ecosystem are:

Puppet Enterprise and Open Source Puppet

Open Source Puppet

Discover the value of Puppet Enterprise.

Find out more

Open Source Puppet

The earliest version of Puppet – the most widely used open source IT management system – was created in 2005 by Luke Kanies, founder of Puppet Labs, to easily automate repetitive and error-prone system administration tasks. Puppet's easy-to-read declarative language allows you to state how your systems should be configured to do their jobs – a very different approach from procedural languages that require you to describe the step-by-step process for configuring systems. With Open Source Puppet, you can set up systems quickly and move on to the rest of your work, knowing Puppet will enforce the system states you’ve defined.

More about Open Source Puppet

› Open Source Puppet overview
› Download Open Source Puppet
› Puppet technical documentation


Facter gathers basic facts about nodes (systems) such as hardware details, network settings, OS type and version, and more. These facts are made available as variables in your Puppet manifests.

  • Easy to include specific facts and other custom facts.
  • Use facts provided by Facter to inform conditional expressions in Puppet.


MCollective is a framework for building server orchestration or parallel job-execution systems. It is used to automate execution of administrative tasks on clusters of servers.

  • Works with PuppetDB, or do real-time discovery across your network.
  • Uses publish/subscribe middleware to communicate with many hosts at once, saving time.


PuppetDB collects and stores data generated by Puppet so you have a huge inventory of metadata about every node in your infrastructure.

  • Searchable database of every resource managed on any node.
  • Get the most recent facts, catalog and event reports for every node.