Creating the Central Foreman Node
A central Foreman node provides a web interface and configuration control of other servers used for provisioning, configuration and operations. These other severs include DNS, DHCP, TFTP and Puppet services that interface with the central Foreman node using a "Smart Proxy" client.
Installation on Debian 7 Wheezy
Foreman is installed through a Puppet module with Puppet operating in stand-alone mode. This is a suitable approach for bootstrapping a Puppet Master that will run alongside Foreman. I also install puppet using Puppet Labs repository.
Enable Puppet Repository
Install puppet from apt.puppetlabs.com repository. For Debian 7, the commands are:
1 2 |
wget http://apt.puppetlabs.com/puppetlabs-release-wheezy.deb dpkg -i puppetlabs-release-wheezy.deb |
Install Puppet Agent
1 2 3 |
aptitude update aptitude install puppet puppet agent --version |
The version of Puppet I obtain is 3.3.2.
Foreman Repository
1 2 |
echo "deb http://deb.theforeman.org/ wheezy 1.3" > /etc/apt/sources.list.d/foreman.list wget -q http://deb.theforeman.org/foreman.asc -O - | apt-key add - |
Install Foreman
We will use the Foreman installer to install Foreman and Puppet together on the same host.
1 2 |
aptitude update aptitude install foreman-installer |
The installer is now used to install Foreman and Puppet Master. It uses the Puppet Agent in standalone mode to download and configure the packages.
1 |
foreman-installer |
Successful Exit
This is what a successful install should look like.
Gotchas
List of issues I encountered
Case
Hostnames should be lowercase. The Foreman puppet modules fail on certificate generation when the certificate name is lowercase, but the modules check for the existence using the capitalized hostname. In general, hostnames should always be lowercase. I made a mistake in quickly naming a virtual server to use for this setup.
Continue ... Next Article
Be the first to comment. Leave a comment