Misplaced Pages

Puppet (software): Difference between revisions

Article snapshot taken from[REDACTED] with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.
Browse history interactively← Previous editContent deleted Content addedVisualWikitext
Revision as of 18:35, 23 May 2012 editAjaxfiore (talk | contribs)2,934 editsm added spanish← Previous edit Latest revision as of 21:07, 3 January 2025 edit undoPtrnext (talk | contribs)Extended confirmed users12,876 edits top: PE and VC firms are not the sameTags: Mobile edit Mobile app edit Android app edit App section source 
(257 intermediate revisions by more than 100 users not shown)
Line 1: Line 1:
{{Short description|Open source configuration management software}}
{{Infobox software {{Infobox software
|name = Puppet | name = Puppet
|logo = | logo = Puppet transparent logo.svg
|screenshot = | screenshot =
|caption = | caption = Puppet manually invoked on a client
|collapsible = | collapsible =
|author = ] | author =
|developer = | developer = ]
|released = 2005 | released = {{release date and age|2005}}
|latest release version = 2.7.14 | latest release version = {{wikidata|property|P348}}
|latest release date = 02-May-2012 | latest release date = {{Start date and age|{{wikidata|qualifier|P348|P577}}|df=yes}}
| programming language = ] & ] from 4.0,<ref>{{cite web|url=https://puppet.com/blog/evolving-puppet-for-next-10-years |title=Evolving Puppet for the Next 10 Years |publisher=Luke Kanies |date=2014-09-23 |access-date=2017-05-26}}</ref> ]
|latest preview version = 3.0.0rc1
| operating system = ], ], ]
|latest preview date = 17-May-2012
|frequently updated = | platform =
| size =
|programming language = ]
| language =
|operating system = ], ], ]
| genre = {{ubl|]|]}}
|platform =
| license = Open Source Puppet: ] for >2.7.0, ] for prior versions. <br>Puppet Enterprise: proprietary<ref>{{Cite web |url=https://puppet.app.box.com/v/2018-master-license-agreement |title=Puppet Master License Agreement |access-date=2019-02-07 |archive-date=2019-08-04 |archive-url=https://web.archive.org/web/20190804062636/https://puppet.app.box.com/v/2018-master-license-agreement |url-status=dead }}</ref>
|size =
|language = | website = {{URL|https://puppet.com/}}
|status =
|genre = ]
|license = ] for >2.7.0; ] for prior versions.
|website = http://www.puppetlabs.com/
}} }}
'''Puppet''' is an ] ] tool. It is written in ] and released under the ] until version 2.7.0 and the ] 2.0 license after that.<ref name="puppetfaq">{{cite web |url= http://docs.puppetlabs.com/guides/faq.html |title= Puppet Frequently Asked Questions |publisher= Puppet Labs |accessdate=March 10, 2010}}</ref> Puppet and Puppet Labs was founded by Luke Kanies in 2005.


'''Puppet''' is a ] tool developed by Puppet Inc.,<ref name="TechCrunch">{{cite web |last=Rao |first=Leena |date=29 November 2011 |title=Cisco, Google Ventures, VMware Put $8.5M In Data Center Automation Startup Puppet Labs |url=https://techcrunch.com/2011/11/29/cisco-google-ventures-vmware-put-8-5m-in-data-center-automation-startup-puppet-labs/ |publisher=TechCrunch}}</ref> which is owned by ], which is owned in turn by ]s. Puppet is used to manage stages of the ] lifecycle.<ref name="linuxpromagazine">{{cite web|last=Graner|first=Amber|title=Puppet Labs Announces Puppet Enterprise|url=http://www.linuxpromagazine.com/Online/News/Puppet-Labs-Announces-Puppet-Enterprise}}</ref>
==Purpose==
Puppet is a tool designed to manage the configuration of ] and ] systems declaratively. The user describes system resources and their state, either using Puppet's declarative language or a Ruby DSL (]). 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 uses an ]; its free-software version was released under version 2 of the ] (GPL) until version 2.7.0,<ref>{{cite web |url= http://docs.puppetlabs.com/guides/faq.html |title= Puppet Frequently Asked Questions |publisher= Puppet Labs |access-date= 10 March 2010 |archive-url= https://web.archive.org/web/20160320040505/https://docs.puppetlabs.com/guides/faq.html |archive-date= 20 March 2016 |url-status= dead }}</ref> and later releases use the ], while Puppet Enterprise uses a ] license.
==Puppet language==
Puppet consists of a custom ] 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 ] (using a ]), 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).


Puppet and Puppet Enterprise operate on multiple ] systems (including ], ], ], ], ], ]) and has ] support.<ref>{{cite web|title=Docs: PE 2.0 - Installing - System Requirements|url=http://docs.puppet.com/pe/2.0/install_system_requirements.html|publisher=Puppet}}</ref><ref>{{cite web|title=Puppet system requirements|url=https://puppet.com/docs/puppet/5.5/system_requirements.html|publisher=Puppet}}</ref> Puppet itself is written in ]. Facter, Puppet’s cross-platform system profiling library, is written in ]. Puppet Server and Puppet DB are written in ].<ref>{{cite web|url=https://puppet.com/blog/evolving-puppet-for-next-10-years |title=Evolving Puppet for the Next 10 Years |publisher=Luke Kanies |date=2014-09-23 |access-date=2017-05-26}}</ref>
==Platform support==
Built to be ], it works on ] distributions, including ] (and clones such as ] and ]), ], ], ], ], and ], as well as multiple Unix systems (], ], ], ], ]), and has ] support.<ref></ref><ref></ref>


== Design ==
It is a ] that requires limited programming knowledge to use.<ref></ref>


Puppet consists of a custom ] to describe system configuration.
==Users==

Puppet is used by ],<ref>http://blog.wikimedia.org/2011/09/19/ever-wondered-how-the-wikimedia-servers-are-configured/</ref> ], ], ], ], ], ], ], ], ], ], ], and ], among others. <ref></ref>
Puppet is ], requiring limited programming knowledge to use.<ref>{{cite web |title=Deploying Apache Tomcat Applications With Puppet |url=http://www.tomcatexpert.com/blog/2010/04/29/deploying-tomcat-applications-puppet |access-date=23 January 2015 |work=tomcatexpert.com}}</ref>

Puppet is designed to manage the configuration of ] and ] systems ].

=== Architecture ===
]
Puppet follows ] 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.<ref>{{Cite web|url=https://docs.puppet.com/puppet/4.6/reference/architecture.html|title=Overview of Puppet's architecture — Documentation — Puppet|website=docs.puppet.com|access-date=2016-09-14|archive-url=https://web.archive.org/web/20161001232528/https://docs.puppet.com/puppet/4.6/reference/architecture.html|archive-date=2016-10-01|url-status=dead}}</ref><ref name=":0">{{Cite book|title=Pro Puppet|last=Krum, Hevelingen, Kero, Turnbull, McCune|date=9 December 2013|publisher=Apress|isbn=978-1430260400}}</ref>

Puppet resource syntax:

<syntaxhighlight lang="puppet">
type { 'title':
attribute => value
}
</syntaxhighlight>

Example resource representing a ] ]:

<syntaxhighlight lang="puppet">
user { 'harry':
ensure => present,
uid => '1000',
shell => '/bin/bash',
home => '/home/harry'
}
</syntaxhighlight>

== Vendor and Perforce Acquisition ==
{{ infobox company
| name = Puppet, Inc
| logo = Puppet transparent logo.svg
| type = ]<ref name="Bloomberg Businessweek">{{cite web|url=http://investing.businessweek.com/research/stocks/private/snapshot.asp?privcapId=60472355|archive-url=https://web.archive.org/web/20121026064624/http://investing.businessweek.com/research/stocks/private/snapshot.asp?privcapId=60472355|url-status=dead|archive-date=October 26, 2012|title=Company Overview of Puppet Labs, Inc|publisher=Bloomberg Businessweek}}</ref>
| industry = ]<ref name="Bloomberg Businessweek"/>
| key_people = Luke Kanies <small>(Founder)</small>, Yvonne Wassenaar <small>(CEO)</small>, Andrew Shafer
| products = Puppet, Puppet Enterprise, and Puppet Forge<ref name="Puppet">{{cite web|title=Puppet Enterprise|url=https://puppet.com/products/puppet-enterprise|publisher=Puppet}}</ref>
| foundation = {{start date and age|2005}}{{cn|date=August 2021}}
| location = ], U.S.
| homepage = {{URL|https://puppet.com}}
}}

]

Puppet's vendor, Puppet Inc., is a privately held ] (IT) automation software company based in ], ].

In 2005, Puppet was founded by former CEO Luke Kanies.{{cn|date=August 2021}} On Jan. 29, 2019 Yvonne Wassenaar replaced Sanjay Mirchandani as CEO. Wassenaar previously worked at ], ] and ]. In February 2011 Puppet released its first commercial product, Puppet Enterprise, built on its ] base, with some extra commercial components.<ref name="enterprisenetworkingplanet">{{cite web|last=Kerner|first=Sean Michael|title=Puppet Goes After Enterprise System Management|date=2 February 2011|url=http://www.enterprisenetworkingplanet.com/news/article.php/3923256/Puppet-Goes-After-Enterprise-System-Management.htm|publisher=Enterprise Networking Planet}}</ref> Puppet purchased the infrastructure automation firm Distelli in September 2017.<ref>{{Cite web|url=https://puppet.com/blog/welcome-distelli-to-puppet-family|title=Welcome to the Puppet family, Distelli!}}</ref> Puppet rebranded Distelli's VM Dashboard (a ] / ] product) as Puppet Pipelines for Applications,<ref>{{Cite web |url=https://puppet.com/docs/pipelines-for-apps/enterprise/index.html |title=Pipelines for Applications user's guide - Pipelines for Applications enterprise {{!}} Puppet |access-date=2018-07-07 |archive-url=https://web.archive.org/web/20180707125307/https://puppet.com/docs/pipelines-for-apps/enterprise/index.html |archive-date=2018-07-07 |url-status=dead }}</ref> and K8s Dashboard as Puppet Pipelines for ].<ref>{{Cite web |url=https://puppet.com/docs/pipelines-for-containers/enterprise/index.html |title=Pipelines for Containers user's guide - Pipelines for Containers enterprise {{!}} Puppet |access-date=2018-07-07 |archive-url=https://web.archive.org/web/20180707125200/https://puppet.com/docs/pipelines-for-containers/enterprise/index.html |archive-date=2018-07-07 |url-status=dead }}</ref> The products were made generally available in October, 2017.<ref>{{Cite web|url=https://puppet.com/blog/introducing-puppet-pipelines-and-puppet-container-registry|title = Introducing Puppet Pipelines™ and Puppet® Container Registry}}</ref> In May 2018, Puppet released Puppet Discovery, a tool to discover and manipulate resources in hybrid networks.<ref>{{Cite web|url=https://puppet.com/blog/announcing-puppet-discovery-general-availability|title=Announcing Puppet Discovery™ general availability: 8 May}}</ref> In June 2018, Puppet raised an additional $42 million for a total of $150 million in funding. The round was led by ] and included ], True Ventures, EDBI, and ].<ref>{{Cite web|url=https://techcrunch.com/2018/06/27/puppet-raises-42m-led-by-cisco-as-its-devops-automation-platform-passes-40000-businesses/|title=Puppet raises $42M led by Cisco as its DevOps automation platform passes 40,000 businesses|website=TechCrunch|date=27 June 2018 |language=en-US|access-date=2019-03-22}}</ref> Puppet's partners include ], ], ], ], ], ], and Zenoss.<ref>{{cite web|last=Rao|first=Leena|title=Cisco, Google Ventures, VMware Put $8.5M in Data Center Automation Startup Puppet Labs|date=29 November 2011 |url=https://techcrunch.com/2011/11/29/cisco-google-ventures-vmware-put-8-5m-in-data-center-automation-startup-puppet-labs/|publisher=TechCrunch}}</ref>

In April 2022, it was announced Puppet had been acquired by the ]-headquartered software developer, ].<ref>{{Cite web |title=Perforce Software acquires Puppet |url=https://techcrunch.com/2022/04/11/perforce-adds-infrastructure-automation-tooling-with-puppet-acquisition/ |access-date=2022-04-11 |website=TechCrunch |date=11 April 2022 |language=en-US}}</ref> The company subsequently laid off 15% of Puppet's workforce in Portland.<ref>{{cite news |last1=Spencer |first1=Malia |title=Perforce Software starts layoffs at Portland's Puppet |url=https://www.bizjournals.com/portland/inno/stories/news/2022/08/08/perforce-puppet-layoffs-15-percent.html?ana=RSS&s=article_search |work=The Business Journals: Portland Inno |date=August 8, 2022}}</ref>


== See also == == See also ==
{{Portal|Free software}} {{Portal|Free and open-source software}}

* ]
* ]
* ]


== References == == References ==

{{reflist}}
{{refs}}


== External links == == External links ==
{{Commonscat}}
*
*
*
* (ISBN 978-1590599780)
* (ISBN 978-1430230576)
* https://github.com/puppetlabs


* {{Official|www.puppet.com/}}


{{Ruby programming language}}

]
]
]
]
]
]
]
]
] ]
]
] ]
] ]
]

]
]
]
]
]
]

Latest revision as of 21:07, 3 January 2025

Open source configuration management software
Puppet
[REDACTED]
Developer(s)Puppet
Initial release2005; 20 years ago (2005)
Stable release8.5.1 / 4 March 2024; 10 months ago (4 March 2024)
Repository
Written inC++ & Clojure from 4.0, Ruby
Operating systemLinux, Unix-like, Microsoft Windows
Type
LicenseOpen Source Puppet: Apache for >2.7.0, GPL for prior versions.
Puppet Enterprise: proprietary
Websitepuppet.com

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 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:

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, Inc
[REDACTED]
Company typePrivate
IndustryComputer software
Founded2005; 20 years ago (2005)
HeadquartersPortland, Oregon, U.S.
Key peopleLuke Kanies (Founder), Yvonne Wassenaar (CEO), Andrew Shafer
ProductsPuppet, Puppet Enterprise, and Puppet Forge
Websitepuppet.com
Puppet Founder Luke Kanies

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

References

  1. "Evolving Puppet for the Next 10 Years". Luke Kanies. 2014-09-23. Retrieved 2017-05-26.
  2. "Puppet Master License Agreement". Archived from the original on 2019-08-04. Retrieved 2019-02-07.
  3. Rao, Leena (29 November 2011). "Cisco, Google Ventures, VMware Put $8.5M In Data Center Automation Startup Puppet Labs". TechCrunch.
  4. Graner, Amber. "Puppet Labs Announces Puppet Enterprise".
  5. "Puppet Frequently Asked Questions". Puppet Labs. Archived from the original on 20 March 2016. Retrieved 10 March 2010.
  6. "Docs: PE 2.0 - Installing - System Requirements". Puppet.
  7. "Puppet system requirements". Puppet.
  8. "Evolving Puppet for the Next 10 Years". Luke Kanies. 2014-09-23. Retrieved 2017-05-26.
  9. "Deploying Apache Tomcat Applications With Puppet". tomcatexpert.com. Retrieved 23 January 2015.
  10. "Overview of Puppet's architecture — Documentation — Puppet". docs.puppet.com. Archived from the original on 2016-10-01. Retrieved 2016-09-14.
  11. Krum, Hevelingen, Kero, Turnbull, McCune (9 December 2013). Pro Puppet. Apress. ISBN 978-1430260400.{{cite book}}: CS1 maint: multiple names: authors list (link)
  12. ^ "Company Overview of Puppet Labs, Inc". Bloomberg Businessweek. Archived from the original on October 26, 2012.
  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". Archived from the original on 2018-07-07. Retrieved 2018-07-07.
  17. "Pipelines for Containers user's guide - Pipelines for Containers enterprise | Puppet". Archived from the original on 2018-07-07. Retrieved 2018-07-07.
  18. "Introducing Puppet Pipelines™ and Puppet® Container Registry".
  19. "Announcing Puppet Discovery™ general availability: 8 May".
  20. "Puppet raises $42M led by Cisco as its DevOps automation platform passes 40,000 businesses". TechCrunch. 27 June 2018. Retrieved 2019-03-22.
  21. Rao, Leena (29 November 2011). "Cisco, Google Ventures, VMware Put $8.5M in Data Center Automation Startup Puppet Labs". TechCrunch.
  22. "Perforce Software acquires Puppet". TechCrunch. 11 April 2022. Retrieved 2022-04-11.
  23. Spencer, Malia (August 8, 2022). "Perforce Software starts layoffs at Portland's Puppet". The Business Journals: Portland Inno.

External links


Ruby programming language
Implementations
Active
Discontinued
[REDACTED]
IDE
Applications
Libraries and frameworks
Server software
People
Other
Categories:
Puppet (software): Difference between revisions Add topic