Puppet (software). Puppet is a software configuration management tool developed by Puppet Inc., which is owned by Perforce, which is owned in turn by private equity firms. Puppet is 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 written in C++. Puppet Server and Puppet DB are written in Clojure.

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 

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:

type { 'title':
  attribute => value
}

Example resource representing a Unix user:

user { 'harry':
  ensure => present,
  uid    => '1000',
  shell  => '/bin/bash',
  home   => '/home/harry'
}

Vendor and Perforce Acquisition 

Puppet's vendor, Puppet Inc., is a privately held information technology (IT) automation software company 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.

See also 

 Comparison of open-source configuration management software
 CFEngine

References

External links 

 

Companies based in Portland, Oregon
American companies established in 2005
Privately held companies based in Oregon
Information technology 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