Planet Puppet

Your source of Puppet technical information

Send/Recv in mgmt

purpleidea, 5 hours, 16 minutes | Source: The Technical Blog of James

I previously published “A revisionist history of configuration management“. I meant for that to be the intro to this article, but it ended up being long enough that it deserved a separate post. I will explain Send/Recv in this article, but first a few clarifications to the aforementioned article.


I mentioned that my “revisionist history” was inaccurate, but I failed to mention that it was also not exhaustive! Many things were left out either because they were proprietary, niche, not well-known, of obscure design or simply for brevity. My apologies if you were involved with Bcfg2, Bosh, Heat ...

[ Read More ]

What's new in modules for November 2016

Craig Gomes, 17 hours, 35 minutes | Source: Puppet Labs

New releases & updates on the Puppet Forge for November 2016, including Chocolatey, Vox Pupuli and more.

[ Read More ]

A revisionist history of configuration management

purpleidea, 6 days, 12 hours | Source: The Technical Blog of James

I’ve got a brand new core feature in mgmt called send/recv which I plan to show you shortly, but first I’d like to start with some background.


This is my historical perspective and interpretation about the last twenty years in configuration management. It’s likely inaccurate and slightly revisionist, but it should be correct enough to tell the design story that I want to share.

Sometime after people started to realize that writing bash scripts wasn’t a safe, scalable, or reusable way to automate systems, CFEngine burst onto the scene with the first real solution ...

[ Read More ]

Keep Puppet Enterprise operating at peak performance

Stephanie Stouck, 6 days, 16 hours | Source: Puppet Labs

Our Puppet Health Check and Puppet Code Review services make sure your Puppet systems & code are set up for peak performance.

[ Read More ]

Every company must behave like a software company — including yours

Aliza Earnshaw, 6 days, 17 hours | Source: Puppet Labs

You've heard DevOps will help succeed with digital transformation. But what should you actually do? This guide offers you detailed instructions.

[ Read More ]

Discovering Puppet with Learning Puppet VM

Melinda Kiss, 1 week | Source: OlinData

When I joined to Olindata as a junior MySQL DBA I only had a vague idea about how Puppet, this open-source configuration management tool works in reality. I never really worked with a system like that, so I have been asked if I can learn it with Puppet Learning VM, which you can download from the following link here. This post is about how to set it up and what challenges you might encounter in this journey.

First of all let’s see the necessary tools/programs/requirements to set up Puppet Learning VM on your computer.

  • A computer with ...

[ Read More ]

Puppet at tech events: finishing 2016 strong & starting 2017 right

Claire Papas, 1 week, 2 days | Source: Puppet Labs

Our lineup of Puppet events from November 2016 to January 2017. Find tradeshows, talks, Puppet Camps & DevOps workshops around the globe.

[ Read More ]

Installing Jenkins and RVM

rnelson0, 1 week, 3 days | Source: RNELSON0

Update: Contrary to the module readme as of 12/1/2016, this WILL result in a VM running Jenkins 2, rather than version 1. It’s time to get started installing Jenkins for use with Puppet. I’ll be installing this in my home lab on a vm called jenkins (so inventive, I know) as an all-in-one server for […]

[ Read More ]

Getting started with Jenkins and Puppet

rnelson0, 1 week, 4 days | Source: RNELSON0

If you’ve followed my blog, you’ve seen that I enjoy using Travis CI to run my puppet rspec tests on the controlrepo or against component modules. When you create a PR, Travis starts a build and adds some links to the PR notes to the builds. When it’s complete, the PR is updated to let […]

[ Read More ]

How we configure services: ibox types

admin, 2 weeks, 5 days | Source: Immerda Techblog

As previously mentioned we are using the ibox project as a way to refactor, modernize and share our automation setup with other interested folks. As we are looking back to around 10 years of automating our services using puppet, there might one or the other place where it’s time to do such a refactor. So this whole project is a slow but steady process to make our plans happen: That we – internally, but also others – are able to replicate parts of our infrastructure on a local environment to easily renew, improve, debug or extend it.

Since our last posting ...

[ Read More ]

PuppetConf 2016 – External Data in Puppet 4

R.I. Pienaar, 4 weeks, 1 day | Source: R.I.Pienaar -

I recently gave a talk at PuppetConf in San Diego covering the new Lookup feature in Puppet 4, you can see the video below.

The slides for this talk can be seen below:

[ Read More ]

Puppet Tech Debt: Moving Rspec Tests

rnelson0, 1 month | Source: RNELSON0

Now that we have shaved the yak of generate-puppetfile, it’s time to move my rspec tests to the top of the controlrepo, as discussed on Thursday. To do so, we need to move not just the spec tests, but also the files Rakefile, .rspec, .rubocop.yml, and create a facsimile metadata.json, and of course, generate a […]

[ Read More ]

Release 0.10.0 of generate-puppetfile

rnelson0, 1 month | Source: RNELSON0

As I discussed on Thursday, I am looking to re-architect the layout of my controlrepo’s rspec tests. Of course, there were yaks to shave, first. To that end, I’ve released version 0.10.0 of generate-puppetfile (rubygem, github project) with the added ability to run generate-puppetfile --create-fixtures at the top of your controlrepo and generate a .fixtures.yml […]

[ Read More ]

Puppet Query Language

R.I. Pienaar, 1 month | Source: R.I.Pienaar -

For a few releases now PuppetDB had a new query language called Puppet Query Language or PQL for short. It’s quite interesting, I thought a quick post might make a few more people aware of it.


To use it you need a recent PuppetDB and as this is quite a new feature you really want the latest PuppetDB. There is nothing to enable when you install it the feature is already active. The feature is marked as experimental so some things will change as it moves to production.

PQL Queries look more or less like this:

nodes { certname ...

[ Read More ]

Puppet Enterprise – upgrading all agent nodes automatically

Robin Bowes, 1 month, 1 week | Source:

Picture the scene…

There's a new release of Puppet Enterprise. You download it, run the upgrade in your test environment, run your regression tests, and all looks good. You then upgrade your production master – all looks good. All that remains to be done is to upgrade the puppet agent on all client nodes – all 750 of them.

Now, you could ssh to each node individually and run the PE installer via curl|bash. You could even automate that with pssh, or similar. But there's got to be a better way, right?

This was the position I found myself ...

[ Read More ]

Camptocamp, new Rancher Labs partner

Raphaël Pinson, 1 month, 1 week | Source: Camptocamp Blog

Camptocamp is proud to be among the few companies selected to kickstart Rancher Labs' Partner Network.

Cet article Camptocamp, new Rancher Labs partner est apparu en premier sur Camptocamp.

[ Read More ]

Remote execution in mgmt

purpleidea, 2 months | Source: The Technical Blog of James

Bootstrapping a cluster from your laptop, or managing machines without needing to first setup a separate config management infrastructure are both very reasonable and fundamental asks. I was particularly inspired by Ansible‘s agent-less remote execution model, but never wanted to build a centralized orchestrator. I soon realized that I could have my ice cream and eat it too.

Prior knowledge

If you haven’t read the earlier articles about mgmt, then I recommend you start with those, and then come back here. The first and fourth are essential if you’re going to make sense of this article.

[ Read More ]

Removing 'magic numbers' and times from your Puppet manifests

Dean Wilson (, 2 months | Source: Dean Wilson@UnixDaemon

In a large Puppet code base you’ll eventually end up with a scattering of time based ‘magic numbers‘ such as cache expiry numbers, zone file ttls and recurring job schedules. You’ll typically find these dealt with in one of a few ways. The easiest is to ignore it and leave a hopefully guessable literal value (such as 3600). The other path often taken is the dreaded heavily linked and often missed comments that start off as 86400 # seconds in a day and over time become 3600 # seconds in a day.

The time_units puppet function is a proof of ...

[ Read More ]

Register hosts to Satellite6 via CloudForms and Ansible Tower part 3

laurent, 2 months, 1 week | Source: Laurent Domb Blog

In the first two parts of the blog series you’ve learned how you can create an inventory synchronizing Ansible Tower with CloudForms, create a Job Template in Ansible Tower and auto generate a service catalog item in CloudForms from the Job Template under the configuration management tab. You’ve also learned how you can create a new catalog and add the catalog item to it. Part 3 in the blog series is going to show you how you can create a custom button under the VM instances tab.

Step 1 Click on Automate

Step 2 Select VM ...

[ Read More ]

Register hosts to Satellite6 via CloudForms and Ansible Tower part 2

laurent, 2 months, 2 weeks | Source: Laurent Domb Blog

This post will show you how to add Ansible Tower as a provider in CloudForms, discover and create a catalog item out of a job template we’ve created and order the catalog item via self service portal.

If you followed part 1 you now have a fully functional Ansible Tower which we can add as a provider to Red Hat CloudForms.

Step 1 Login to CloudForms

Step 2 Go to Configuration -> Configuration Management

Step 3 Click on Configuration and add a new provider

Step 4 Fill in the following values (of course it needs to match your environment)
Now ...

[ Read More ]