Planet Puppet

Your source of Puppet technical information

Tip of the Week 25 - The PSICK Developer Environment Setup - PDES

Anonymous, 0 minutes | Source: Example 42

Working on Puppet code with least possible effort requires a properly setup of a suitable workstation environment. Usually everybody starts playing around with different sets of utilities and tools, learning the hard way about the best usable setup. This article will guide you to a setup, providing a proper basis for initially working with PSICK, Puppet or Ruby in general. Puppet Development is based on Ruby. The first thing we need is a Puppet recommended Ruby version. As version can change from release to release, therefor we need some flexibility on Ruby versions being available. Puppet provides a website with ...

[ Read More ]

Ransomware and patch management: be prepared for the next malware outbreak

Jeff Schmied, 1 day, 22 hours | Source: Puppet Labs

Patch management remains critical in the battle against malware; automation is key.

[ Read More ]

Where to store Puppet files and templates

rnelson0, 3 days, 17 hours | Source: RNELSON0

I haven’t written a blog post in a while because I’ve been bogged down in work and life and not had much time in the lab. To make sure I don’t get too out of practice, I’m going to try writing some shorter tips and tricks articles. Let me know what you think. A few […]

[ Read More ]

puppet snmp module 3.8.1

Michael Arnold, 4 days, 10 hours | Source: The Razor's Edge

Recently, I have delivered several long-awaited releases of my Net-SNMP to the Puppet Forge. Included are numerous fixes from community members: Change so that service_config_perms parameter, network, and community can be arrays. (Jordan Wesolowski) Add OpenBSD to the supported operating systems, similar to FreeBSD support. (Sebastian Reitenbach) Update README.markdown. (Rémy Garrigue) Create Parameters for template […]

[ Read More ]

Puppet wins VMware Partner Innovation award

Jeremy Adams, 4 days, 23 hours | Source: Puppet Labs

VMware named Puppet as a regional winner of its prestigious Partner Innovation award, partly because of our plug-in for VMware vRealize Automation.

[ Read More ]

Introduction to pluginsync

Nathanael Cole, 5 days, 22 hours | Source: Puppet Labs

Puppet's pluginsync ensures that all nodes have the most current version of your plugins before an agent run.

[ Read More ]

Tip of the Week 25 - Control Repo documentation

Anonymous, 6 days, 13 hours | Source: Example 42

The current method to manage documentation in Puppet code is based on puppet strings. We can install it as a gem: puppet resource package puppet-strings provider=puppet_gem and then, from within the main directory of a module we can generate the module documentation just by running: puppet strings Puppet strings uses Yard, a Ruby Documentation Tool that parses comments with defined @tags in the code and creates documentation based on them. For example,we can document a class by adding lines as the following at the beginning of its manifest: # @summary This class manages the general hardening of a system ...

[ Read More ]

How Puppet helps with security and audit

Bill Weiss, 1 week, 1 day | Source: Puppet Labs

Learn how to make a secure baseline with Puppet, including user management and firewalling, and get audit logs of configuration drift, too.

[ Read More ]

Tip of the Week 24 - Puppet 5

Anonymous, 1 week, 6 days | Source: Example 42

Puppet 5 was scheduled to be released somewhere near May 2017. The release was postponed due to some CVE on existing supported Puppet versions. So we expect Puppet 5 to be available quite soon. Therefore it will be soon time to work on Puppet 5 updates. Most important is to mention that Puppet 5 does not require any Puppet code changes. It is still recommended to update to latest Puppet 4 version prior upgrading to Puppet 5. The packages layout and directory structure has not changed. Agent and Master still install into /opt/puppetlabs. Hardware requirements are also identical to ...

[ Read More ]

Tip of the Week 23 - Puppet reports and metrics

Anonymous, 2 weeks, 6 days | Source: Example 42

Any Puppet infrastructure must be monitored and needs log checking. For monitoring we can re-use existing solutions like cacti, checkmk, icinga, monit, munin, nagios, sensu, zabbix see also Wikipedia. Every puppet agent has locally stored important information for your puppet infrastructure. Most of these informations are stored inside the statedir. puppet agent --configprint statedir /opt/puppetlabs/puppet/cache/state tree /opt/puppetlabs/puppet/cache/state /opt/puppetlabs/puppet/cache/state |- classes.txt |- graphs |- last_run_report.yaml |- last_run_summary.yaml |- resources.txt |- state.yaml \- transactionstore.yaml One wants to check not only for running puppet agent, but also for proper catalog retrieval. This ...

[ Read More ]

Testing multiple Puppet versions with TravicCI (and allowing failures)

Dean Wilson (, 3 weeks, 2 days | Source: Dean Wilson@UnixDaemon

When it comes to running automated tests of my public Puppet code TravisCI has long been my favourite solution. It’s essentially a zero infrastructure, second pair of eyes, on all my changes. It also doesn’t have any of my local environment oddities and so provides a more realistic view of how my changes will impact users. I’ve had two Puppet testing scenarios pop up recently that were actually the same technical issue once you start exploring them, running tests against the Puppet version I use and support, and others I’m not so worried about.

This use ...

[ Read More ]

Announcing multi_epp - Puppet function

Dean Wilson (, 3 weeks, 4 days | Source: Dean Wilson@UnixDaemon

As part of refreshing my old puppet modules I’ve started to convert some of my Puppet templates from the older ERB format to the newer, and hopefully safer, Embedded Puppet (EPP).

While it’s been a simple conversion in most cases, I did quickly find myself lacking the ability to select a template based on a hierarchy of facts, which I’ve previously used multitemplate to address. So I wrote a Puppet 4 version of multitemplate that wraps the native EPP function, adds matching lookup logic and then imaginatively called it multi_epp. You can see an example of it ...

[ Read More ]

Declarative vs. Imperative paradigms

purpleidea, 1 month, 2 weeks | Source: The Technical Blog of James

Recently, while operating two different remote-controlled appliances, I realized that it was high time for a discussion about declarative and imperative paradigms. Let’s start by looking at the two remotes:


Two different “remotes”. The one on the left operates a television, and the one on the right controls a central heating and cooling system.

At first glance you will notice that one of these remotes is dark, and the other is light. You might also notice that my photography skills are terrible. Neither of these facts is very important to the discussion at hand. Is there anything interesting that ...

[ Read More ]

Talk about Choria and NATS

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

Recently I was given the opportunity by the folk to talk about Choria and NATS on one of their community events. The recording of the talk as well as the slide deck can be found below.

Thanks again for having me team!

[ Read More ]

vRealize Orchestrator Workflows for Puppet Enterprise

rnelson0, 2 months, 2 weeks | Source: RNELSON0

Over the past three years, my Puppet for vSphere Admins series has meandered through a number of topics, mostly involved on the Puppet side and somewhat light on the vSphere side. That changed a bit with my article Make the Puppet vRealize Automation plugin work with vRealize Orchestrator, describing how to use the plugin’s built-in […]

[ Read More ]

Connecting Puppetboard to Puppet Enterprise

rnelson0, 3 months, 2 weeks | Source: RNELSON0

Last week, I moved the home lab to Puppet Enterprise. One of the things I love about PE is the Console. However, I am a member of Vox Pupuli and we develop Puppetboard (the app AND the module) so it is convenient for me to use it and tie it into PE as well. Though […]

[ Read More ]

What goes in a Puppet Role or Profile?

rnelson0, 3 months, 2 weeks | Source: RNELSON0

The Roles and Profiles pattern by Craig Dunn is a very common pattern used by Puppet practitioners. I’ve written about it before. One of the most common questions I see is, what goes into a Role or Profile class? Craig’s article provides some guidelines, specifically these two:   A role includes one or more profiles […]

[ Read More ]

Metaparameters in mgmt

purpleidea, 3 months, 3 weeks | Source: The Technical Blog of James

In mgmt we have meta parameters. They are similar in concept to what you might be familiar with from other tools, except that they are more clearly defined (in a single struct) and vastly more powerful.

In mgmt, a meta parameter is a parameter which is codified entirely in the engine, and which can be used by any resource. In contrast with Puppet, require/before are considered meta parameters, whereas in mgmt, the equivalent is a graph edge, which is not a meta parameter. [1]


As of this writing we have seven different kinds of meta parameters:

[ Read More ]

Choria Update

R.I. Pienaar, 4 months, 1 week | Source: R.I.Pienaar -

Recently at Config Management Camp I’ve had many discussions about Orchestration, Playbooks and Choria, I thought it’s time for another update on it’s status.

I am nearing version 1.0.0, there are a few things to deal with but it’s getting close. Foremost I wanted to get the project it’s own space on all the various locations like GitHub, Forge, etc.

Inevitably this means getting a logo, it’s been a bit of a slog but after working through loads of feedback on Twitter and offers for assistance from various companies I decided to ...

[ Read More ]

Red Hat Summit 2017 S102320: Button Push Deployments With Integrated Red Hat Open Management

laurent, 4 months, 3 weeks | Source: Laurent Domb Blog

My 2017 redhat summit talk Button Push Deployments With Integrated Red Hat Open Management got accepted. I have the big honor of sharing the talk not just with my last years co presenter Michael Dahlgren but also with Red Hat EMEA’S configuration management extraordinaire Maxim Burgerhout.

As we combine our talks you can expect an awesome mixture of different demos and showcases around Red Hat Open Management.

[ Read More ]