Configuring a Puppet Server lab
This all started from a failed attempt to follow PluralSight’s Puppet sysadmin course using Apache and Passenger. Ran into dependency issues which Ben Piper provided solutions for on his github page but beyond that continued to run into issues with the lab environment. I was more interested in getting a test environment up and running so I could start rapid prototyping our Puppet workflow, not infrastructure as that is already in place.
Anyways, i’ll be using CentOS 7 minimal bare installs and go through the very minimum configuration to get the following up and running.
- Puppet Master
- DNS Server
- Wiki Server
Pre-Puppet Configuration Tasks (All Servers)
sudo vi /etc/sysconfig/network-scripts/name-of-youractiveinterface
Find and replace
Restart network service
sudo systemctl restart network
Confirm you are getting network connectivity.
Add dns entries
Add all hosts to /etc/hosts on each server if you do not have a dns server configured.
sudo yum update -y
NTP and date/time configuration.
sudo yum -y install ntp sudo timedatectl set-timezone "America/Chicago" sudo systemctl start ntpd
. Configure host names and dns entries as we do not have a primary dns server(yet).
- On both: Configure SELinux
- On both: Configure firewalld settings.
- Add puppet repos
On the master:
sudo rpm -ivh https://yum.puppetlabs.com/puppetlabs-release-pc1-el-7.noarch.rpm sudo yum -y install puppetserver
Configure memory allocation for puppet master:
Find and modify ->
Start and enable Puppet Server
sudo systemctl start puppetserver sudo systemctl enable puppetserver
sudo rpm -ivh https://yum.puppetlabs.com/puppetlabs-release-pc1-el-7.noarch.rpm sudo yum -y install puppet-agent sudo /opt/puppetlabs/bin/puppet resource service puppet ensure=running enable=true
Cert Signing From the Agents:
sudo /opt/puppetlabs/bin/puppet agent -t server="puppet01.test.local"
From the Master:
sudo /opt/puppetlabs/bin/puppet cert list sudo /opt/puppetlabs/bin/puppet cert sign wiki01.test.local