summaryrefslogtreecommitdiff
path: root/README
blob: b72a4ad1d5b979e0d30ac5ef893fda435c2b3c54 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
Puppet-Module for configuring Puppet itself, both the master and the clients
============================================================================

Use a seperate local module called "site-puppet", where you place your customized 
files, under:
 site-puppet/files/master/fileserver.conf
 site-puppet/files/master/puppet.conf

Usage
=====

The module currently looks for values on different variables to adjust
configuration of the master.

Run puppet by cron:
-------------------

By default puppet runs as its own daemon. However, you might want to run puppet
by cron. To do this, you have to include `puppet::cron` instead of `puppet`. If
you include puppet::cron then by default puppet will run twice an hour, spread
amongst the half an hour depending on the host's fqdn. If you wish to change
that interval, you can tweak $puppet_crontime (NOTE: this variable only operates
on the minute cron field).

Clientbucket cleanup:
---------------------

The individual node client buckets aren't cleaned up automatically, unless you
specify $puppet_cleanup_clientbucket = 'X', where X is the number of days you
want to keep clientbucket files for.


Puppetmaster Mode:
------------------

If you want to run the puppetmaster in a non-webrick based
mode, you can set $puppetmaster_mode either to:

* passenger, run puppetmaster as a passenger application, you will need the
  passenger module to take advantage of this

* cluster, run puppetmaster as a mongrel based cluster, you will need the
  nginx and mongrel modules to take advantage of this

In both cases you have to setup the appropriate frontends (apache vhost
configuration/nginx vhost configuration) on your own.

Munin
-----

If you are using munin, and have the puppet munin module installed, you can set
the variable $use_munin = true to have graphs setup for you. The graphs that
will be setup track memory usage by the running puppetmasters; track the average
compile time of clients; and if you are using postgresql/mysql then a graph to
monitor resource counts.

Reports cleanup:
---------------

By default we clean up reports older than 30 days. If you want to change
that, you can set $puppetmaster_cleanup_reports to one of the following
values:

* 'X', where X is the amount of days you want to keep reports for
* false, to disable reports cleanup

Check last run:
---------------

We can check on the last run state of certain clients, to check whether
they still check in. You can do that by setting the following variables:

$puppetmaster_lastruncheck_cron

* any cron time: '20 10,22 * * *' to run the script at a certain time
  by cron. Default: 40 10 * * *
* false: to disable check for last run

You will need the cron module to take advantage of this functionality. 

Stored configs:
---------------

If you want to use storedconfigs on your puppetmaster, then you will want to
also be using the mysql module, and then you will need to "include
puppet::puppetmaster::storeconfigs".

Example:
--------

in your site.pp, i.e. :

    $puppet_crontime = "0,12 * * * *"
    include puppet::cron
    
    $puppetmaster_mode = 'passenger'
    include puppet::puppetmaster
    
    $puppet_storeconfig_password="..."
    include puppet::puppetmaster::storeconfigs