
- by x32x01 ||
Puppet is an open-source configuration management and automation tool that helps system administrators manage multiple machines at once - remotely and efficiently.
It works on a master–agent model, where the Puppet Server acts as the master node and the Puppet Agent acts as the client node.
Puppet supports Linux, Unix, macOS, and Windows, making it a powerful cross-platform solution for automating repetitive admin tasks.
Before you begin, make sure you have:
Step 1: Install Puppet Server on Linux
Because the Puppet Server officially supports Linux only, you’ll first need to install it on a Linux machine (like Ubuntu).
This machine will act as your master node.
Follow Puppet’s Ubuntu installation guide to complete the setup.
Step 2: Configure Network Communication
You’ll need both nodes (master and client) to communicate using hostnames.
Press Ctrl + X, then Y, and hit Enter to save your changes.
This ensures Puppet can resolve hostnames for both machines.
Step 3: Download Puppet Agent for macOS
Head to the official Puppet Agent download page.
Puppet Agent packages follow this format:
Example:
At the time of writing, supported macOS versions include:
Step 4: Install Puppet Agent on macOS
You can install Puppet Agent in two ways - either using Homebrew or manually via Terminal.
If everything is configured properly, you’ll see a version number (e.g., 7.15.0), confirming the agent is installed successfully.
And that’s it!
You’ve successfully installed and configured Puppet Agent on your macOS system.
With this setup, you can now:
It works on a master–agent model, where the Puppet Server acts as the master node and the Puppet Agent acts as the client node.
Puppet supports Linux, Unix, macOS, and Windows, making it a powerful cross-platform solution for automating repetitive admin tasks.
Prerequisites
Before you begin, make sure you have:- A Mac running macOS Catalina or newer
- Admin-level privileges
- Access to the Terminal
Step 1: Install Puppet Server on Linux
Because the Puppet Server officially supports Linux only, you’ll first need to install it on a Linux machine (like Ubuntu).This machine will act as your master node.

Step 2: Configure Network Communication
You’ll need both nodes (master and client) to communicate using hostnames.- Open the
/etc/hosts
file in Terminal:
sudo nano /etc/hosts
- Add your master and client IPs:
Code:
[puppet master ip] puppetmaster puppet
[puppet client ip] puppetclient
This ensures Puppet can resolve hostnames for both machines.
Step 3: Download Puppet Agent for macOS
Head to the official Puppet Agent download page.Puppet Agent packages follow this format:
Code:
puppet-agent-[version].osx[macOS_version].dmg

puppet-agent-7.15.0.osx10.15.dmg
At the time of writing, supported macOS versions include:
- 10.12 (Sierra)
- 10.13 (High Sierra)
- 10.14 (Mojave)
- 10.15 (Catalina)
Step 4: Install Puppet Agent on macOS
You can install Puppet Agent in two ways - either using Homebrew or manually via Terminal.
Option 1: Install via Homebrew
- Install Homebrew (if not already installed):
Code:/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
- Update it:
Code:brew update
- Install Puppet Agent:
Code:brew install --cask puppetlabs/puppet/puppet-agent
Option 2: Install via Terminal
- Mount the .dmg file:
Code:sudo hdiutil mount [dmg_file_path]
- Move into the mounted directory:
Code:cd /Volumes/puppet-agent-[version]
- Run the installer:
Code:sudo installer -pkg puppet-agent-installer.pkg -target /
- Verify the installation:
Code:/opt/puppetlabs/bin/puppet --version
Verification
If everything is configured properly, you’ll see a version number (e.g., 7.15.0), confirming the agent is installed successfully.
Conclusion
And that’s it! 
With this setup, you can now:
- Automate configurations from your Puppet master
- Remotely manage devices
- Save time on repetitive administrative tasks
Last edited: