One of the advantages of cloud environments is the ability to quickly stand up and tear down an instance as needed: That's great for deploying web-scale apps, adding and removing resources as needed. It's also a great way to evaluate a new application without having to run it on one of your own servers: Just spin up a cloud node, evaluate at your leisure, then tear it down.
We've published a new downloadable guide that shows you how to do just that with Puppet Enterprise on an Amazon EC2 instance. Following the guide, you'll be able to get a Puppet Enterprise master and agent up and running on EC2, then use your new master to configure and manage up to 10 nodes — on-premise or also in the cloud with your new master — for free.
If you're the type who likes to see a demo before trying something out, we've also produced three new videos that step you through the process of using AWS to install a puppet master and agent, then deploy a web application to your new agent node.
If you don't like PDFs and just want to dig in, here you go:
Getting Set Up
Choose an AMI
You can use AMIs for any supported Puppet Enterprise platform, but we recommend you use those identified as base installations or “minimal profile.” That minimizes the chance of preinstalled packages and services conflicting with Puppet Enterprise.
You can find a list of supported platforms here:
If you don't have a preferred platform, we can recommend this CentOS 6 AMI, which installs the bare minimum to run on EC2, with no conflicting services running. If you prefer the Debian family, Ubuntu's 12.04 LTS AMI also provides an installation minimal enough to work well with Puppet Enterprise.
Step 1. Create an Amazon EC2 Instance
We recommend a Standard Large (m1.large) instance for best performance.
Step 2. Configure Your EC2 Instance
Configure a security group to ensure these ports are open on your new EC2 instance:
- 443 — HTTPS
- 8140 — Puppet Enterprise
- 61613 — the Puppet Enterprise orchestration engine (MCollective)
Important: During installation, you’ll also need to know how to reach your new puppet master from the public Internet, so take note of your instance’s public address. It will look like this:
Step 3. Download Puppet Enterprise for Your Preferred Platform
Visit info.puppetlabs.com/download-pe.html to download Puppet Enterprise for your EC2 instance. If you don’t see a version of Puppet Enterprise for the platform you’d like to evaluate, use the *nix download.
Note that Puppet Enterprise does not support Microsoft Windows as a puppet master, but does support managing Windows agent nodes.
Once you’ve completed your download, upload Puppet Enterprise to your EC2 instance.
Step 4. Install Puppet Enterprise
Log in to your EC2 instance and find the archive you uploaded in the previous step. See the Puppet Labs documentation site for instructions for the Puppet Enterprise installer, including how to unpack and run it.
While running the installer, install the Puppet Master role and make sure to note this one exception:
When you’re prompted for the Puppet Master’s DNS aliases, append the master’s public DNS name (which you were asked to record when you set up your instance in step 2) to the list of aliases when you see this prompt:
￼The puppet master’s certificate can contain DNS aliases; agent nodes will only trust the
master if they reach it at its certname or one of these official aliases. Puppet master’s
DNS aliases (comma-separated list)? [Default: ip-10-217-xx-xx,puppet,puppet.us-west-2.
Once you’ve answered that prompt, complete the installer following the documentation from the section “Puppet Master Questions.”
Step 5. Visit Your Puppet Enterprise Console
Once the installer has finished, you can visit your new Puppet Enterprise console by going to the SSL version of your instance’s public address, e.g.
Beyond the Puppet Master
If you’d like to configure puppet agents on EC2, you can repeat steps one through five to create and configure a new instance. On step four, choose the Puppet Agent role. When prompted for your master’s hostname, make sure to use its public DNS name.
Dig In With Our Quick Start Guide
Once you have your puppet master and an agent node configured, you’ll be ready for our Quick Start guide, which steps you through a small, proof-of- concept deployment and common Puppet Enterprise tasks.
Find it here: http://docs.puppetlabs.com/pe/latest/quick_start.html
Watch the Videos
1. Install a Puppet Enterprise Master
2. Install a Puppet Enterprise Agent
3. Deploy a Web Application
- Read about Puppet Enterprise and cloud management
- Once you've evaluated Puppet Enterpise on EC2, learn how to use it to inventory your infrastructure.
- Get some inspiration for how to use your new puppet master by reviewing all the cloud automation presentations from PuppetConf 2013.