By Bill Ward | January 1, 2018
This is the first in a series of posts where I will walk through Puppet’s latest release. We will begin with installation then move on to expoloring some of the latest release’s coolest features that are sure to make configuration management cool again.
This is going to be a simple monolithic install of Puppet Enterprise to keep things simple. We don’t need to pay for anything because anything under 10 nodes and it’s free. For this tutorial I am configuring two virtual machines: 1 puppet enterprise server and 1 puppet agent node. The server has 4G of memory and 4 vCPU’s assigned with 40GB of disk allocated. The agent is a simple 1GB of memory, 1 vCPU, and 10GB of disk space. I will be using Ubuntu Server 16.04.3 as my OS but you can use CentOS/RHEL if you prefer.
You will also need to download the installation packages for Puppet Enterprise. Simply go to the Puppet Enterprise Download page and enter your email if you are not already registered with Puppet. Then click on the package for your OS. Make sure you know were you downloaded your tarbal to because you will need to SCP/FTP the package to your server. I won’t cover that process because it varies on whether the system you downloaded the package to is Windows/Linux.
Update your OS
# apt update && upgrade -y # reboot
Now we are ready to get started installing Puppet Enterprise.
Puppet Enterprise Installation
Since this is a monolithic install we will be doing a web-based installation to make things easy. First, lets import the Puppet public key since all the packages from Puppet are signed.
# wget -O - https://downloads.puppetlabs.com/puppet-gpg-signing-key.pub | gpg --import
Now we need to get the package you downloaded from PuppetLabs over to your server using SCP/FTP. After that is done, make a directory in tmp called puppet. Move the tarbal to the new directory and untar it.
# mkdir /tmp/puppet # mv /home/user/puppet-enterprise-2017.3.2-ubuntu-16.04-amd64.tar.gz /tmp/puppet # tar -xzvf puppet-enterprise-2017.3.2-ubuntu-16.04-amd64.tar.gz
Next, run the installer scipt.
# cd puppet-enterprise-2017.3.2-ubuntu-16.04-amd64 # ./puppet-enterprise-installer
Hit Enter to select the first option, which is to use the web-based installation.
============================================================= Puppet Enterprise Installer ============================================================= Puppet Enterprise offers two different methods of installation.  Guided install Recommended for beginners. This method will install and configure a temporary webserver to walk you through the various configuration options. NOTE: This method requires you to be able to access port 3000 on this machine from your desktop web browser.  Text-mode Recommended for advanced users. This method will open your EDITOR (vi) with a PE config file (pe.conf) for you to edit before you proceed with installation. The pe.conf file is a HOCON formatted file that declares parameters and values needed to install and configure PE. We recommend that you review it carefully before proceeding. ============================================================= How to proceed? :
After a few seconds the script will tell you to open your browser and give you a URL to browse to.
## Go to https://puppet.admintome.local:3000 in your browser to continue installation. ## Be sure to use 'https://' and that port 3000 is reachable through the firewall.
Open this URL in your browser and this will begin the web-based installation.
Web-based Puppet Enterprise Installation
Now let’s get Puppet Enterprise installed. Click on the Let’s get started! button.
Make sure that Install on this server. is selected. The first box is the Puppet master FQDN which is going to be the FQDN of this server. The second box is a comma separated list of DNS aliases that puppet agents will use for trusting the puppet server certificates. Here is what I used for my server, your will be different:
Next, make sure that Install PostgreSQL on the Puppet master host for me. is selected. Then enter the Console admin user password. Lastly, click on Continue.
Next your will see a summary screen where it will ask you to confirm the installation plan. Click Continue.
Puppet will verify all the settings. You will get a few warnings:
Since we are not installing in a production environment we can safelty ignore these and click on Deploy now. Relax for a bit while Puppet does it’s thing and installs. Once it is done, you will see a Start using Puppet Enterprise button. Go ahead and click it.
You will be directed to the Puppet Console. Login with the username admin and the password that you entered during installation. If you have used the Puppet Enterprise console before you might notice that it looks a little different now. Puppet has added some very cool features to it, but we won’t get into that until a later post. For now you have a basic Puppet Enterprise installation. In the next post we will install the agent node and connect it to our Puppet Enterprise Server.
I hope you enjoyed this post. If it was helpful or if it was way off then please comment and let me know.