Puppetrun

Version 4 (Armand A. Verstappen, 08/05/2010 03:53 am)

1 1
h2. Overview
2 1
3 1
Foreman can execute puppetrun on selected hosts
4 1
currently foreman will execute puppetrun locally (e.g. from the machine which runs foreman), however it is planned to be able to select from which host  puppetrun will be executed.
5 1
6 1
7 1
h2. Requirements
8 1
9 1
Puppetrun binary needs to be installed (defaults to /usr/bin/puppetrun) and configured correctly - e.g.
10 1
11 1
h3. on your clients
12 1
13 1
in your puppet.conf make sure you have
14 1
<pre>
15 1
listen = true
16 1
</pre>
17 1
and in your namespaceauth.conf
18 1
19 1
<pre>
20 1
[puppetrunner]
21 1
    allow foreman.domain.com
22 1
</pre>
23 1
24 4 Armand A. Verstappen
NOTE: in puppet 2.6 and greater, you will also need in your /etc/puppet/auth.conf
25 4 Armand A. Verstappen
<pre>
26 4 Armand A. Verstappen
path /run
27 4 Armand A. Verstappen
method save
28 4 Armand A. Verstappen
allow foreman.domain.com
29 4 Armand A. Verstappen
</pre>
30 4 Armand A. Verstappen
31 1
additionally, if you are behind a firewall, you would need to open tcp port 8139 to the client.
32 1
33 1
h3. on your foreman server
34 1
35 1
in foreman configs/settings.yaml, make sure you have the following line:
36 2 Ohad Levy
<pre>
37 1
:puppetrun: true
38 2 Ohad Levy
</pre>
39 1
40 1
enable sudo (as puppetrun needs to be able to access your puppet certificates) - e.g:
41 1
<pre>
42 3 Ohad Levy
Defaults:foreman !requiretty
43 1
foreman_user ALL = NOPASSWD: /usr/bin/puppetrun
44 1
</pre>
45 1
46 1
h2. Usage
47 1
48 1
In your host list, you will see a new option "Run", just click on it :)