Add Foreman to an existing Puppet master

Greetings:

I only recently learned about The Foreman and I'd like to deploy it on a
64-bit Ubuntu 12.04 LTS workstation to provision/manage a bunch of VPSs. I
have an existing master-agent Puppet deployment. In the Foreman 1.2
Installation Manual, the following is mentioned in a couple of places:

The Foreman installer uses Puppet to install Foreman. This guide assumes
> that you've already installed Puppet (without a master)…

Unless there's a huge benefit to allowing the Foreman installer to
overwrite my current puppetmaster configs, I'd like to keep my existing
Puppet master. In perusing through the manual, I then came across 3.2.2
Installer Options
, which suggests that 'all with the world' will be grand
and wonderful again, if I simply copy & edit the answers file found at
/usr/share/foreman-installer/foreman_installer/answers.yaml.

I continued reading and then came across the following: "Other examples are
given in /usr/share/foreman-installer/README.md." Being the obedient-fellow
that I am, I went ahead and read the README file; because, at this point,
my biggest question is this:

If, in the answers.yaml file, I set the puppet and puppetmastervariables to
> false, do I need to go back once the Foreman install is finished and
> patch The Foreman to my existing puppetmaster that I am stubbornly hanging
> on to?

In the README file, I came across the following:

Extras

··· ------

If you just want to include the relavant bits to run on your puppet master

you may

include foreman::params, foreman::config::enc, foreman::config::reports

What exactly does “If you just want to include the relavant bits to run on
your puppet master you may…” mean? Are those parameters what those with
an existing Puppet master need to include? If so… where/when? Before the
running The Foreman Installer? In the answers.yaml file?

Thanks!

-Pablo

Hi Pablo,

Answers inline.

> Greetings:
>
> I only recently learned about The Foreman and I'd like to deploy it on a
> 64-bit Ubuntu 12.04 LTS workstation to provision/manage a bunch of VPSs. I
> have an existing master-agent Puppet deployment. In the Foreman 1.2
> Installation Manual, the following is mentioned in a couple of places:
>
> The Foreman installer uses Puppet to install Foreman. This guide assumes
>> that you've already installed Puppet (without a master)…
>
>
> Unless there's a huge benefit to allowing the Foreman installer to
> overwrite my current puppetmaster configs, I'd like to keep my existing
> Puppet master. In perusing through the manual, I then came across 3.2.2
> Installer Options
, which suggests that 'all with the world' will be
> grand and wonderful again, if I simply copy & edit the answers file found
> at /usr/share/foreman-installer/foreman_installer/answers.yaml.
>

The major win with an all-in-one install is all of the integration between
systems, that's true. However, you do have some options you've found for
yourself, and some I will detail in a moment :wink:

I continued reading and then came across the following: "Other examples are
> given in /usr/share/foreman-installer/README.md." Being the
> obedient-fellow that I am, I went ahead and read the README file; because,
> at this point, my biggest question is this:
>
> If, in the answers.yaml file, I set the puppet and puppetmastervariables to
>> false, do I need to go back once the Foreman install is finished and
>> patch The Foreman to my existing puppetmaster that I am stubbornly hanging
>> on to?
>
>
>
Yes, but the required work is documented in the manual.

> In the README file, I came across the following:
>
> Extras
>
> ------
>
> If you just want to include the relavant bits to run on your puppet master
>> you may
>
> include foreman::params, foreman::config::enc, foreman::config::reports
>
>
> What exactly does "If you just want to include the relavant bits to run on
> your puppet master you may…" mean? Are those parameters what those with
> an existing Puppet master need to include? If so… where/when? Before the
> running The Foreman Installer? In the answers.yaml file?
>

The specific things a puppetmaster needs are an appropriately configured
smart-proxy, ENC, report processor, sudo rules, and a small tweak to the
puppet.conf. For the most part this is documented, and there's always our
superb IRC channel if you get stuck.

You have a few options. You can indeed just run the installer with
puppet(master): false and then do the final bits of integration by hand.
However, if the intention is to have Foreman on the same server as the
Puppetmaster (the ability to split them is the main argument for the
separate entries in the installer) then I would suggest a separate course.
Since the installer is pure puppet, you can leave everything set to true,
but run it with "–noop --show_diff -v" which will, of course, show you all
the proposed changes, including what it would like to do to puppet.conf and
so on. You can use that to work out what steps you may need to do manually,
or if looks sane, just remove the noop.

Finally, one of my favourite approaches is to test out the install, with
everything set to true, on a VM. You'll then have a reference system to
compare to when you try to do the manual configuration steps later on.

Hopefully there's a path in there that's suitable for you. Do drop in on
IRC if you get stuck.
Greg

··· On 7 August 2013 07:01, Pablo Carranza wrote: