Puppet is an open-source admin engine that uses a network of master and client nodes to help you perform administrative tasks remotely. The Puppet agent app, used to create client nodes, is available on Linux, Unix, Windows, and macOS.
In this tutorial, we will go over the steps you need to take to install Puppet Agent on macOS.
- A system running macOS Catalina
- A user with admin-level privileges
- Access to the terminal window
Installing Puppet on macOS
Running Puppet involves installing a Puppet Server that acts as the master node and deploying a Puppet Agent that acts as the client node.
Official Puppet Server packages support Linux distributions only. Users can build and install Puppet Server on any OS from source, but running it that way is not recommended for a production server.
In the steps below, we install and configure the Puppet Server on Ubuntu and then set up the Puppet Agent on macOS.
STEP 1: Install Puppet Server
Perform a complete installation of Puppet on a Linux system. This system serves as the master node in your Puppet network.
Follow the steps outlined in our article to install Puppet on Ubuntu.
STEP 2: Network Configuration Setup
Puppet uses hostnames to set up communication between the master and client nodes. Set up a unique hostname for each node (both on master and client machines):
1. In the terminal, open the hosts file by using:
sudo nano /etc/hosts
2. Add the following lines at the end of the hosts file:
[puppet master ip] puppetmaster puppet [puppet client ip] puppetclient
[puppet master ip]is the IP address of the master node.
[puppet client ip]is the IP address of the client node running macOS.
Ctrl + X to close the file, and then type
Y and press
Enter to save the changes you made.
STEP 3: Download Puppet Agent for macOS
1. Browse to the Puppet Agent download page.
Puppet Agent packages for macOS use the following naming convention:
puppet-agent-[package version].osx[OS version].dmg
[package version]details the version of Puppet Agent.
[OS version]details the supported version of macOS.
2. Find and download the desired Puppet Agent package.
Note: At the time of writing this article, Puppet supports macOS 10.12 (Sierra), 10.13 (High Sierra), 10.14 (Mojave), and 10.15 (Catalina).
STEP 4: Install Puppet Agent
The Puppet Agent can be installed on macOS Homebrew or via terminal.
Option 1: Installing with Homebrew
1. If you don’t already have Homebrew, install it using:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
If you already have a copy of Homebrew, update it with:
2. With the latest version of Homebrew, install the Puppet Agent with:
brew cask install puppetlabs/puppet/puppet-agent
Option 2: Installing in the Terminal
1. Mount the Puppet Agent package by using:
sudo hdiutil mount [dmg file path]
[dmg file path]is the file path for the package download location.
2. After mounting the package, an output line appears ending with
[version] is the version of the Puppet Agent you are installing. Change the directory to this point with:
3. Install the package using:
sudo installer -pkg puppet-agent-installer.pkg -target /
4. Verify the installation with:
After following this tutorial, you should have a copy of Puppet Agent set up on your macOS system.
Find out more about Puppet and how it stacks up against other IaC tools in our Ansible vs Terraform vs Puppet comparison article.