Puppet Docs
Welcome to the Puppet documentation site.
An downloadable version of this guide may be found on our downloads page.
Getting Started
New users should begin here.
- An Introduction to Puppet
- Supported Platforms
- Installing Puppet – from packages, source, or gems
- Configuring Puppet – includes server setup & testing
- Frequently Asked Questions
Components
Learn more about major working parts of the Puppet system.
- puppetmasterd, puppetd, puppet, & ralsh – components of the system
- Security Infrastructure / Securing Puppet – how PKI works
Extended Knowledge
Once you’ve learned the basics, go here next.
- Puppet Language Tutorial – all the language details
- Puppet Modules – modules make it easy to organize and share content
- Puppet File Serving – Serving files with Puppet
- Style Guide – Puppet community conventions
- Best Practices – use Puppet effectively
- Tips & Tricks
- Troubleshooting
Puppet Dashboard (Web GUI)
Puppet from a graphical perspective.
Advanced Topics
Power user features.
- Templating – template out config files using ERB
- Virtual Resources
- Exported Resources – share data between hosts
- Environments – separate dev, stage, & production
- Reporting – learn what your nodes are up to
- External Nodes – specify what your machines do using external data sources
- Scaling Puppet – general tips & tricks
- Scaling With Passenger – for Puppet 0.24.6 and later
- Scaling With Mongrel – for older versions of Puppet
Resource Types
Documentation on what Puppet can manage out of the box.
- Types By Category – documentation on resources managed out of the box
- Alphabetical Listing
Extending Puppet
Adapt Puppet to your specific requirements through extensible code.
- Writing Custom Facts
- Writing Custom Types & Providers
- Complete Resource Example – more information on custom types & providers
- Provider Development – more about providers
- Writing Custom Functions
- Plugins In Modules – where to put plugins, how to sync to clients
- REST API – reference of api accessible resources
Development Information
Learn how to work with Puppet core.
- Running Puppet from Source – preview the leading edge
- Development Life Cycle – learn how to contribute code
Auto-generated Docs
In addition to the formatted and annotated documentation above, auto-generated documentation is available for current and previous Puppet versions. Here are links to the latest versions:
- Metaparameters – these are usable on all types
- Types – all default types
- Configuration – all configuration file settings
- Functions – all built in functions
- Report – available reports
Other Resources
Help Improve This Document
This document belongs to the community and is licensed under the Creative Commons. You can help improve it!
To contribute ideas, problems, or suggestions, simply use the Contribute link. If you would like to submit your own content, the process is easy. You can fork the project on github, make changes, and send us a pull request. See the README files in the project for more information.