Foreman installer
Version 13 (Greg Sutcliffe, 05/07/2012 07:44 pm)
| 1 | 4 | Ohad Levy | {{toc}} |
|---|---|---|---|
| 2 | 4 | Ohad Levy | |
| 3 | 3 | Ohad Levy | h1. Puppet modules for managing Foreman |
| 4 | 1 | ||
| 5 | 5 | Ohad Levy | The installer can be used in multiple ways: |
| 6 | 5 | Ohad Levy | * Installs Foreman as a standalone application or using apache passenger. |
| 7 | 5 | Ohad Levy | * Installs Foreman Proxy |
| 8 | 5 | Ohad Levy | * May install an example puppet master setup using passenger as well, including the tweaks required for foreman. |
| 9 | 1 | ||
| 10 | 7 | Ohad Levy | h2. Installation |
| 11 | 1 | ||
| 12 | 12 | Greg Sutcliffe | h3. A note on older puppet versions |
| 13 | 12 | Greg Sutcliffe | |
| 14 | 12 | Greg Sutcliffe | The "master" branches are being updated with parameterized classes. If you are running a version of Puppet which doesn't support this (0.25.x or lower) then you should check out the "oldstable" versions of the modules. We will try to fix bugs in either branch, so bug reports are appreciated in either case. Currently, "oldstable" branches exist for: |
| 15 | 13 | Greg Sutcliffe | * puppet-foreman_proxy (master not parameterized yet, but contains references to experimental DHCP/DNS modules) |
| 16 | 13 | Greg Sutcliffe | * puppet-puppet (master parameterized for both agent and server, see README for details) |
| 17 | 12 | Greg Sutcliffe | |
| 18 | 7 | Ohad Levy | h3. Using GIT |
| 19 | 1 | ||
| 20 | 12 | Greg Sutcliffe | <pre> |
| 21 | 12 | Greg Sutcliffe | git clone --recursive git://github.com/theforeman/foreman-installer.git (for the latest installer) |
| 22 | 12 | Greg Sutcliffe | git clone --recursive git://github.com/theforeman/foreman-installer.git -b oldstable (for puppet 0.25.x or lower) |
| 23 | 12 | Greg Sutcliffe | </pre> |
| 24 | 7 | Ohad Levy | |
| 25 | 7 | Ohad Levy | h3. Direct download |
| 26 | 7 | Ohad Levy | |
| 27 | 7 | Ohad Levy | Since we are no longer using one repository for all sources, a single tarball is no longer provided. |
| 28 | 7 | Ohad Levy | You can either follow the script below, or download the source code for each module on its own: |
| 29 | 7 | Ohad Levy | |
| 30 | 7 | Ohad Levy | http://github.com/theforeman/puppet-apache/tarball/master |
| 31 | 7 | Ohad Levy | http://github.com/theforeman/puppet-foreman/tarball/master |
| 32 | 1 | http://github.com/theforeman/puppet-foreman_proxy/tarball/master |
|
| 33 | 12 | Greg Sutcliffe | http://github.com/theforeman/puppet-git/tarball/master |
| 34 | 7 | Ohad Levy | http://github.com/theforeman/puppet-passenger/tarball/master |
| 35 | 7 | Ohad Levy | http://github.com/theforeman/puppet-puppet/tarball/master |
| 36 | 7 | Ohad Levy | http://github.com/theforeman/puppet-tftp/tarball/master |
| 37 | 1 | http://github.com/theforeman/puppet-xinetd/tarball/master |
|
| 38 | 12 | Greg Sutcliffe | |
| 39 | 12 | Greg Sutcliffe | Optional Modules: |
| 40 | 12 | Greg Sutcliffe | |
| 41 | 12 | Greg Sutcliffe | These provide support for the experimental DHCP/DNS auto configuration in the proxy. Use at your own risk (but send me bug reports :P) |
| 42 | 12 | Greg Sutcliffe | http://github.com/GregSutcliffe/puppet-dhcp/tarball/master |
| 43 | 12 | Greg Sutcliffe | http://github.com/GregSutcliffe/puppet-dns/tarball/master |
| 44 | 12 | Greg Sutcliffe | http://github.com/GregSutcliffe/concat/tarball/master (dependency) |
| 45 | 7 | Ohad Levy | |
| 46 | 1 | h2. Requirements |
|
| 47 | 3 | Ohad Levy | |
| 48 | 1 | if you are using RHEL, EPEL repo must be enabled http://fedoraproject.org/wiki/EPEL |
|
| 49 | 4 | Ohad Levy | |
| 50 | 3 | Ohad Levy | if you are using Debian (or Ubuntu), see the additional notes in README.debian |
| 51 | 1 | ||
| 52 | 11 | Lukas Zapletal | Make sure SELinux is disabled or permissive when running on Fedora/RHEL. |
| 53 | 11 | Lukas Zapletal | |
| 54 | 4 | Ohad Levy | h2. Setup/Configuration |
| 55 | 4 | Ohad Levy | |
| 56 | 1 | *Please review the variables under */manifests/params.pp* |
|
| 57 | 1 | ||
| 58 | 8 | Ohad Levy | h3. only Foreman |
| 59 | 1 | ||
| 60 | 1 | <pre> |
|
| 61 | 1 | echo include foreman | puppet --modulepath /path_to/extracted_tarball |
|
| 62 | 1 | </pre> |
|
| 63 | 3 | Ohad Levy | |
| 64 | 8 | Ohad Levy | h3. Both foreman and its proxy: |
| 65 | 3 | Ohad Levy | |
| 66 | 1 | <pre> |
|
| 67 | 1 | echo include foreman, foreman_proxy | puppet --modulepath /path_to/extracted_tarball |
|
| 68 | 3 | Ohad Levy | </pre> |
| 69 | 1 | ||
| 70 | 8 | Ohad Levy | h3. On your Puppet Master |
| 71 | 7 | Ohad Levy | |
| 72 | 3 | Ohad Levy | if you just want to include the relavant bits to run on your puppet master you may |
| 73 | 1 | ||
| 74 | 7 | Ohad Levy | <pre> |
| 75 | 1 | include foreman::params, foreman::config::enc, foreman::config::reports |
|
| 76 | 1 | </pre> |
|
| 77 | 3 | Ohad Levy | |
| 78 | 8 | Ohad Levy | h3. All in one box (Puppet, Foreman, Proxy) |
| 79 | 1 | ||
| 80 | 7 | Ohad Levy | if you want to install it all on one box |
| 81 | 7 | Ohad Levy | |
| 82 | 1 | <pre> |
|
| 83 | 3 | Ohad Levy | export MODULE_PATH="/etc/puppet/modules/common" |
| 84 | 3 | Ohad Levy | mkdir -p $MODULE_PATH |
| 85 | 10 | Greg Sutcliffe | for mod in apache foreman foreman_proxy git passenger puppet tftp xinetd; do |
| 86 | 7 | Ohad Levy | mkdir -p $MODULE_PATH/$mod |
| 87 | 7 | Ohad Levy | wget http://github.com/theforeman/puppet-$mod/tarball/master -O - | tar xzvf - -C $MODULE_PATH/$mod --strip-components=1 |
| 88 | 7 | Ohad Levy | done; |
| 89 | 3 | Ohad Levy | echo include puppet, puppet::server, foreman, foreman_proxy | puppet --modulepath $MODULE_PATH |
| 90 | 3 | Ohad Levy | </pre> |
