Puppet Node Configuration
To install the puppet client on nodes you are adding to Foreman, you can use the version distributed with the OS, or you could use the version distributed by Puppetlabs. The version distributed by Puppetlabs is preferred, the process is outlined below for apt and yum.
apt
Install the agent
To add the repository for your distribution, install the release package with the codename for your distribution using the 4 commands below (Check https://apt.puppetlabs.com/ for versions):
sudo apt -y install ca-certificates
wget https://apt.puppetlabs.com/puppet-release-<codename>.deb
sudo dpkg -i puppet-release-<codename>.deb
sudo apt update
Run the following command:
sudo apt install puppet-agent
yum
Install the agent
To add the repository for your distribution, install the release package with the codename for your distribution using the command below (Check https://apt.puppetlabs.com/ for versions):
sudo rpm -ivh http://yum.puppetlabs.com/puppet-release-el-9.noarch.rpm
Run the following command:
sudo yum install puppet-agent
Configure the Puppet node
The following is needed when using the puppet version distributed with your OS or the version from Puppetlabs.
Enter the following 4 commands replacing foreman.getbunraku.com with the DNS name used or Public IPv4 DNS address of the Bunraku server:
sudo puppet config set server foreman.getbunraku.com --section main
sudo puppet config set certname $(facter hostname| tr '[:upper:]' '[:lower:]') --section agent
sudo puppet config set waitforcert 60 --section agent
sudo puppet ssl bootstrap
Sign the certificate on Foreman
This can be done in one of two ways: via CLI on Foreman or via the GUI.
CLI
Ssh to the Foreman server and run this command, replacing <client hostname>
with the name of your puppet node.
sudo puppetserver ca sign --certname <client hostname>
Foreman GUI
Log into your Foreman server and navigate to Infrastructure > Smart Proxies > Select the Smart Proxy running Puppet CA > Puppet CA > Certificates