Documentation Start

Version 19 (James Turnbull, 06/27/2011 04:09 pm)

1 13 James Turnbull
# Puppet Wiki
2 1
3 1
## Introduction to Puppet
4 1
5 7 Forrest Davie
For information about learning Puppet and major components, see [docs.puppetlabs.com](http://docs.puppetlabs.com).
6 1
7 13 James Turnbull
Our docs site is also a community project like the Wiki, [learn how to contribute here](http://docs.puppetlabs.com/#help_improve_this_document).
8 1
9 1
## Configuration
10 1
11 6 Anonymous
Some additional articles on configurations that are not part of the docs site:
12 1
13 1
-   [[Puppet Templating]] with ERB
14 1
-   [[Using Tags]]
15 1
-   [[Using Multiple Environments]] describes how to be able to
16 1
    develop and test changed manifests without disturbing nodes running
17 1
    in production
18 1
-   [[Using Stored Configuration]] explains how to store
19 1
    configuration information in a database
20 1
-   [[Certificates And Security]]
21 1
-   [[Reports And Reporting]]
22 9 James Turnbull
-   [[LDAP_Nodes|LDAP Nodes]] explains how to store node information in LDAP
23 1
-   [[Puppet Scalability]] describes common issues and solutions
24 1
    related to scaling a puppet deployment.
25 1
    -   [[Using Mongrel]] -- Using Mongrel or Passenger to scale Puppet
26 1
        instead of the internal Webrick server
27 1
    -   [[Using Mongrel Pound]] -- Using Mongrel with the Pound web
28 1
        server
29 1
    -   [[Using Mongrel Nginx]] -- Using Mongrel with the Nginx web
30 1
        server
31 1
32 1
-   [[Using Passenger]] -- Using Passenger and Apache to scale
33 1
    Puppet
34 1
-   [[Using Unicorn]] -- Using Unicorn to scale Puppet
35 1
36 1
## Cookbook
37 1
38 1
The Cookbook is a repository of modules, 'recipes' as well as
39 1
Puppet and Facter configuration snippets for achieving common
40 1
tasks.
41 1
42 1
### Module documentation
43 1
44 1
-   [[Puppet Manifest Documentation]] - From Puppet 0.24.7 you can
45 1
    create automatic documentation for manifests and modules
46 1
47 1
### Module sets
48 1
49 1
You can find a number of collections of Puppet modules for a
50 1
variety of applications and operating systems on the [[Puppet
51 1
Modules]] page.
52 1
53 1
### Recipes
54 1
55 1
-   [[Recipe Requests]] - a wishlist
56 1
-   [[Puppet Recipes]]
57 1
-   [[Facter Recipes]]
58 1
59 1
## Extending Puppet
60 1
61 1
Puppet is also highly extensible. This section lists additional
62 1
information that can help you create new types, providers and
63 1
functions for Puppet. Also documented is the process for adding
64 1
custom facts for Facter.
65 1
66 12 Cristian Ciupitu
-   [Extending Puppet](http://docs.puppetlabs.com/#extending-puppet) -- Documentation site information on Providers, Types, Functions, etc
67 6 Anonymous
-   [API Documentation](http://puppetlabs.com/downloads/puppet/apidocs/)     -- API documentation
68 6 Anonymous
-   [[Dsl_Hints_And_Tips_Patterns|Recipes/Dsl Hints And Tips]]     -- Initial page on how to use Puppet types from plain old Ruby.
69 6 Anonymous
-   [[Development_Writing_Tests|Development/Writing Tests]] --     Writing RSpec tests for your Puppet contributions.
70 6 Anonymous
-   Puppet's [[Development_Development_Lifecycle|Development/Development Lifecycle]] process
71 5 Sami Haahtinen
72 1
## Related Applications
73 1
74 5 Sami Haahtinen
A number of applications that extend, support or supplement Puppet
75 1
have been developed. These include:
76 1
77 6 Anonymous
-   [Puppet Dashboard](http://www.puppetlabs.com/puppet/related-projects/dashboard/)
78 1
-   [PuppetShow](http://github.com/shadoi/puppetshow/) -- A
79 1
    Rails-application for viewing information about Puppet and
80 6 Anonymous
    configured hosts (legacy project)
81 1
-   [The Foreman](http://theforeman.org) -- A Rails-application for
82 1
    managing server lifecycle.  
83 1
    integrates with Puppet (external nodes, PuppetCA, inventory and
84 1
    reporting) and provides dynamicly generated with Kickstart /
85 1
    jumpstart and preseed handsfree.
86 1
-   [Viper](http://www.spinlocksolutions.com/viper/) -- A
87 1
    LDAP-based system for automated hosts installation, configuration
88 1
    and monitoring
89 1
-   [iClassify](https://wiki.hjksolutions.com/display/IC/Home) -- A
90 6 Anonymous
    node management tool for Puppet. (legacy project)
91 1
-   [PuppetView](http://www.devco.net/pubwiki/Puppet/PuppetView) --
92 1
    A light weight web-based Puppet log viewer written in PHP.
93 1
-   [Cft](http://cft.et.redhat.com/) -- A configuration file
94 1
    tracker that uses Puppet at its base.
95 1
-   [Augeas](http://augeas.net/) -- Augeas is a configuration
96 1
    editing tool.
97 1
-   [Carpet](http://www.agileweboperations.com/configuration-management-remixed-introducing-carpet/)
98 1
    -- Carpet is a combination of Puppet and Capistrano.
99 6 Anonymous
-   [Cobbler](http://fedorahosted.org/cobbler) -- An OS installer that can function as a Puppet external nodes source
100 1
101 1
## Additional Documentation
102 1
103 6 Anonymous
While the above links represent the standard, recommended documentation, there is additional information available for those who are interested.
104 1
105 1
Also available is
106 1
[Pulling Strings with Puppet](http://www.amazon.com/gp/product/1590599780?ie=UTF8&tag=puppet0e-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=1590599780)
107 1
- the first book on Puppet written by James Turnbull. Puppet is
108 1
also mentioned in Chapter 19 (together with provisioning and
109 1
bootstrapping) of
110 1
[Pro Linux System Administration](http://www.amazon.com/gp/product/1430219122?ie=UTF8&tag=puppet0e-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=1430219122)
111 1
by James Turnbull, Peter Lieverdink and Dennis Matotek.
112 1
113 1
-   [[Frequently Asked Questions]]
114 1
-   [[Branch Testing]] describes how to manage and test your
115 1
    configuration across multiple Puppet masters
116 1
-   [[Puppet Internals]] describes how manifests are processed and
117 1
    used
118 14 Nick Fagerlund
-   [[Archive of Superseded Workarounds]] -- How to deal with bugs in older versions of Puppet.
119 1
-   [[Transitioning From Cfengine]] -- Using the Cfengine module
120 1
-   [[Puppet With Launchd]] -- A tutorial for starting puppet with
121 1
    Apple's new launchd.
122 1
-   If you're considering contributing documentation, please take a
123 1
    look at the [[Documentation Standards]] .
124 18 James Turnbull
-   [[Puppet Mac OSX]] -- Describes recommendations when running
125 1
    Puppet on Mac OS X.
126 1
-   [[Puppet Solaris]] -- Describes installing and running Puppet
127 1
    on Solaris.
128 18 James Turnbull
-   [[Puppet Free BSD]] -- Tips for running Puppet on FreeBSD.
129 1
-   [[Puppet Gentoo]] -- Tips for running Puppet on Gentoo
130 1
-   [[Puppet Debian]] -- Tips for running Puppet on Debian
131 1
-   [[Puppet Presentations]] -- Presentations about Puppet
132 1
-   [[Infrastructure Design Guidelines]] -- Another suggested best
133 1
    practice guide to managing infrastructure with Puppet
134 1
-   [[Multiple Certificate Authorities]] -- How to setup multiple
135 1
    puppetmaster daemons with mutual trust.
136 1
-   [Puppet on Ubuntu Installation](http://www.howtoforge.com/installing_puppet_on_ubuntu)
137 1
    -- Walk through of how to get Puppet running on Ubuntu.
138 1
-   A
139 1
    [detailed example](http://people.redhat.com/dlutter/puppet-app.html)
140 1
    of using Puppet and how the way it modularizes configurations can
141 1
    be used for sharing 'system recipes'
142 1
-   [Puppet Tutorial](http://bitfieldconsulting.com/puppet-tutorial)
143 1
-   [Puppet Workshop](http://www.kanarip.com/courses/Configuration_Management_Using_Puppet/)
144 1
    -- A Puppet workshop designed to introduce new users to Puppet
145 1
-   [Scaling Puppet with distributed version control](http://bitfieldconsulting.com/scaling-puppet-with-distributed-version-control)
146 1
    -- Using Git (or another DVCS) to distribute manifests, removing
147 1
    the need for a Puppet server
148 10 Nan Liu
149 10 Nan Liu
## Puppet in Other Languages
150 10 Nan Liu
151 10 Nan Liu
Puppet documentation have been translated to other languages by the user community:
152 10 Nan Liu
153 10 Nan Liu
-   [Chinese http://puppet.wikidot.com/](http://puppet.wikidot.com/)
154 11 Nan Liu
-   [Japanese http://trac.mizzy.org/puppet/](http://trac.mizzy.org/puppet/)
155 15 Randall Hansen
156 15 Randall Hansen
## Puppet CLI Design, Experimentation & Notes
157 15 Randall Hansen
158 15 Randall Hansen
This should live in a better place eventually, but here'll do for now.
159 15 Randall Hansen
160 15 Randall Hansen
* [[Puppet CLI Design]]