Puppet (software)

Open source configuration management software


title: "Puppet (software)" type: doc version: 1 created: 2026-02-28 author: "Wikipedia contributors" status: active scope: public tags: ["companies-based-in-portland,-oregon", "american-companies-established-in-2005", "privately-held-companies-based-in-oregon", "software-companies-of-the-united-states", "2005-establishments-in-oregon", "software-companies-established-in-2005", "2005-software", "orchestration-software", "configuration-management", "cross-platform-free-software", "free-software-programmed-in-ruby", "software-using-the-apache-license", "virtualization-software-for-linux"] description: "Open source configuration management software" topic_path: "technology/operating-systems" source: "https://en.wikipedia.org/wiki/Puppet_(software)" license: "CC BY-SA 4.0" wikipedia_page_id: 0 wikipedia_revision_id: 0

::summary Open source configuration management software ::

::data[format=table title="Infobox software"]

FieldValue
namePuppet
logoPerforce-Puppet-Logo.svg
captionPuppet manually invoked on a client
developerPerforce
released
latest release version
latest release date
programming languageClojure from 4.0, Ruby
operating systemLinux, Unix-like, Microsoft Windows
genre
licenseOpen Source Puppet: Apache for 2.7.0, GPL for prior versions.
Puppet Enterprise: proprietary
website
::

| name = Puppet | logo = Perforce-Puppet-Logo.svg | screenshot = | caption = Puppet manually invoked on a client | collapsible = | author = | developer = Perforce | released = | latest release version = | latest release date = | programming language = Clojure from 4.0, Ruby | operating system = Linux, Unix-like, Microsoft Windows | platform = | size = | language = | genre = | license = Open Source Puppet: Apache for 2.7.0, GPL for prior versions. Puppet Enterprise: proprietary | website =

Puppet is a software configuration management tool used to manage stages of the IT infrastructure lifecycle.

Puppet uses an open-core model; its free-software version was released under version 2 of the GNU General Public License (GPL) until version 2.7.0, and later releases use the Apache License, while Puppet Enterprise uses a proprietary license. Puppet and Puppet Enterprise operate on multiple Unix-like systems (including Linux, Solaris, BSD, Mac OS X, AIX, HP-UX) and has Microsoft Windows support. Puppet itself is written in Ruby. Facter, Puppet’s cross-platform system profiling library, is also written in Ruby. Puppet Server and Puppet DB are written in Clojure.

It is developed by Puppet Inc., which is owned by Perforce, which is owned in turn by private equity firms.

Design

Puppet consists of a custom declarative language to describe system configuration.

Puppet is model-driven, requiring limited programming knowledge to use.

Puppet is designed to manage the configuration of Unix-like and Microsoft Windows systems declaratively.

Architecture

::figure[src="https://upload.wikimedia.org/wikipedia/commons/3/34/140228puppetrunExampleManuallyInvokedPackageUpdate.png" caption="Puppet manually invoked on a client"] ::

Puppet follows client-server architecture. The client is known as an agent and the server is known as the master. For testing and simple configuration, it can also be used as a stand-alone application run from the command line.

Puppet Server is installed on one or more servers, and Puppet Agent is installed on all the machines to be managed. Puppet Agents communicate with the server and fetch configuration instructions. The Agent then applies the configuration on the system and sends a status report to the server.

Puppet resource syntax:

::code[lang=puppet] type { 'title': attribute => value } ::

Example resource representing a Unix user:

::code[lang=puppet] user { 'harry': ensure => present, uid => '1000', shell => '/bin/bash', home => '/home/harry' } ::

Company

| name = Puppet, Inc | logo = Puppet transparent logo.svg | type = Private | industry = Computer software | key_people = Luke Kanies (Founder), Yvonne Wassenaar (CEO), Andrew Shafer | products = Puppet, Puppet Enterprise, and Puppet Forge | foundation = | location = Portland, Oregon, U.S. | owner = Perforce | homepage =

::figure[src="https://upload.wikimedia.org/wikipedia/commons/a/aa/LukeKaniesPuppetEnterprise2.jpg" caption="Puppet Founder Luke Kanies"] ::

Puppet Inc., is a subsidiary of Perforce based in Portland, Oregon, USA.

In 2005, Puppet was founded by former CEO Luke Kanies. On Jan. 29, 2019 Yvonne Wassenaar replaced Sanjay Mirchandani as CEO. Wassenaar previously worked at Airware, New Relic and VMware. In February 2011 Puppet released its first commercial product, Puppet Enterprise, built on its open-source base, with some extra commercial components. Puppet purchased the infrastructure automation firm Distelli in September 2017. Puppet rebranded Distelli's VM Dashboard (a continuous integration / continuous delivery product) as Puppet Pipelines for Applications, and K8s Dashboard as Puppet Pipelines for Containers. The products were made generally available in October, 2017. In May 2018, Puppet released Puppet Discovery, a tool to discover and manipulate resources in hybrid networks. In June 2018, Puppet raised an additional $42 million for a total of $150 million in funding. The round was led by Cisco and included Kleiner Perkins, True Ventures, EDBI, and VMware. Puppet's partners include VMware, Amazon Web Services, Cisco, OpenStack, Microsoft Azure, Eucalyptus, and Zenoss.

In April 2022, it was announced Puppet had been acquired by the Minneapolis-headquartered software developer, Perforce. The company subsequently laid off 15% of Puppet's workforce in Portland.

Controversy

Following acquisition by Perforce in 2022, subsequent policy changes implemented by Perforce in early 2025 significantly altered the accessibility and distribution of Puppet software which prompted frustration within the open-source community.

Perforce announced that future Puppet binaries and packages would be published to a private repository with access granted to community contributors under an End-user license agreement (EULA) and usage beyond 25 nodes would require a commercial license. Although the core Puppet codebase remains licensed under the Apache 2.0 license, the frequency of public commits and updates was reduced. The open-source community criticized these changes, viewing them as a departure from Puppet’s original open-source principles.

Concerns were raised about diminished transparency and the prioritization of commercial interests over community collaboration. In response, members of the community initiated a fork of the project, called OpenVox, with the aim of preserving and continuing the open-source development of Puppet. The new fork also sought to avoid legal complications, as Perforce retained control over the Puppet trademark which restricted its use by third parties.

References

References

  1. (2014-09-23). "Evolving Puppet for the Next 10 Years". Luke Kanies.
  2. "Puppet Master License Agreement".
  3. Graner, Amber. "Puppet Labs Announces Puppet Enterprise".
  4. "Puppet Frequently Asked Questions". Puppet Labs.
  5. "Docs: PE 2.0 - Installing - System Requirements". Puppet.
  6. "Puppet system requirements". Puppet.
  7. (2014-09-23). "Evolving Puppet for the Next 10 Years". Luke Kanies.
  8. Rao, Leena. (29 November 2011). "Cisco, Google Ventures, VMware Put $8.5M In Data Center Automation Startup Puppet Labs". TechCrunch.
  9. "Deploying Apache Tomcat Applications With Puppet". tomcatexpert.com.
  10. "Overview of Puppet's architecture — Documentation — Puppet".
  11. (9 December 2013). "Pro Puppet". Apress.
  12. "Company Overview of Puppet Labs, Inc". Bloomberg Businessweek.
  13. "Puppet Enterprise". Puppet.
  14. Kerner, Sean Michael. (2 February 2011). "Puppet Goes After Enterprise System Management". Enterprise Networking Planet.
  15. "Welcome to the Puppet family, Distelli!".
  16. "Pipelines for Applications user's guide - Pipelines for Applications enterprise {{!}} Puppet".
  17. "Pipelines for Containers user's guide - Pipelines for Containers enterprise {{!}} Puppet".
  18. "Introducing Puppet Pipelines™ and Puppet® Container Registry".
  19. "Announcing Puppet Discovery™ general availability: 8 May".
  20. (27 June 2018). "Puppet raises $42M led by Cisco as its DevOps automation platform passes 40,000 businesses".
  21. Rao, Leena. (29 November 2011). "Cisco, Google Ventures, VMware Put $8.5M in Data Center Automation Startup Puppet Labs". TechCrunch.
  22. (11 April 2022). "Perforce Software acquires Puppet".
  23. (August 8, 2022). "Perforce Software starts layoffs at Portland's Puppet". The Business Journals: Portland Inno.
  24. Anderson, Tim. (2024-12-18). "Community plans to fork Puppet, unhappy with Perforce changes to open-source project • DEVCLASS".
  25. Read, Mafields 4-Min. (2025-07-22). "Puppet to OpenVox Transition".
  26. Bridgwater, Adrian. (2024-12-21). "Perforce Forks Puppet, Community Considers Muppet".
  27. (2024-12-18). "Puppet Community Townhall Recap".

::callout[type=info title="Wikipedia Source"] This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page. ::

companies-based-in-portland,-oregonamerican-companies-established-in-2005privately-held-companies-based-in-oregonsoftware-companies-of-the-united-states2005-establishments-in-oregonsoftware-companies-established-in-20052005-softwareorchestration-softwareconfiguration-managementcross-platform-free-softwarefree-software-programmed-in-rubysoftware-using-the-apache-licensevirtualization-software-for-linux