Planet Puppet

Your source of Puppet technical information

Get your best success with Puppet — work with a Puppet TAM

Stephanie Stouck, 1 day, 2 hours | Source: Puppet Labs

Puppet technical account managers (TAMs) use their Puppet expertise, business and advisory skills to enable your success with Puppet solutions.

[ Read More ]

Tip of the Week 13 - Environment caches

Anonymous, 1 day, 13 hours | Source: Example 42

Usually a Puppet Server as a monolithic installation can handle up to 4000 nodes. In larger environments one can easily scale this by adding compile servers placed behind a load balancer. But prior you throw additional hardware on your load issue, Puppet server allows you for some scaling. One of the ways to prevent scaling issues is to make use of Puppet environment cache. When activating the environment cache, the Puppet master process compiles catalogs for a node once only and keeps the generated catalog in memory. This also has an impact on available RAM on the Puppet master as ...

[ Read More ]

Preventative maintenance for PuppetDB: node-purge-ttl

Nick Walker, 5 days | Source: Puppet Labs

Prevent a slowdown in PuppetDB performance by enabling node-purge-ttl.

[ Read More ]

Tip of the Week 12 - Roles, profiles and tools

Anonymous, 1 week, 1 day | Source: Example 42

Roles and profiles is an established pattern that for years has helped Puppet architects in the organization of their code base. A role, and only a role, is typically assigned to a node, describing its business functionality (blog webserver, api backend, relay mail server…) and includes one or more profiles. A profile is basically a wrapper class which may use a component module (like the ones for apache or mysql or whatever we find on the Modules Forge) and adds site specific resources: the things we need to configure servers in the way we want. Over the years I found ...

[ Read More ]

Introducing the Puppet Technology Alliance Partner Program

Matt Girdharry, 1 week, 5 days | Source: Puppet Labs

TAPP is how Puppet collaborates with tech partners to achieve useful integrations for our customers, furthering their DevOps & automation work.

[ Read More ]

Improved data management capabilities with Puppet Enterprise 2017.1

Lindsey Smith, 1 week, 6 days | Source: Puppet Labs

Puppet Enterprise 2017.1 includes the new Hiera 5, which allows you to separate data from config code for cleaner, more maintainable Puppet code.

[ Read More ]

Connecting Puppetboard to Puppet Enterprise

rnelson0, 2 weeks, 1 day | 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 ]

Tip of the Week 11 - Using a second mount point for files

Anonymous, 2 weeks, 1 day | Source: Example 42

Credentials with a certain level of security should never be stored in plain text on a Puppet server. How about items that shpuld be managed by another team (e.g. Security and Compliance) but the team insists that these data may not be part of the standard Puppet environments? In this case one can make use of a second file mountpoint. Using a second mount point within Puppet code follows the already well known pattern for delivering static configuration files using file resource type and source property: class my_certs { file { '/etc/ssl/certs/my_company_ca.pem': ensure => file, source => ...

[ Read More ]

What goes in a Puppet Role or Profile?

rnelson0, 2 weeks, 6 days | 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 ]

Tip of the Week 10 - Server side noop mode

Anonymous, 3 weeks, 1 day | Source: Example 42

Puppet has a well known command option that allow us to make dry runs, with clients fetching the catalog from the Master and showing what it would have changed if it were applied for real. From the command line on the client this can be done with a command like: puppet agent -t --noop There are situations, anyway , where it would be preferable to activate nood directly from the server, forcing noop mode on one or more clients or sets of resources. This is possible thanks to the trlinkin-noop module, which provides a function, called noop() which automatically add the ...

[ Read More ]

Migrating my home lab from Puppet OpenSource to Puppet Enterprise

rnelson0, 3 weeks, 1 day | Source: RNELSON0

I have been using Puppet Enterprise at work and Puppet OpenSource at home for a few years now. There’s a lot to love about both products, but since work uses PE and new features tend to land there first, I have been thinking about trying PE at home as well. I don’t have a large […]

[ Read More ]

Metaparameters in mgmt

purpleidea, 3 weeks, 5 days | 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, 1 month, 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, 1 month, 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 ]

Making the Puppet vRealize Automation plugin work with vRealize Orchestrator

rnelson0, 1 month, 4 weeks | Source: RNELSON0

I’m pretty excited about this post! I’ve been building up Puppet for vSphere Admins for a few years now but the final integration aspects between Puppet and vSphere/vCenter were always a little clunky and difficult to maintain without specific dedication to those integration components. Thanks to Puppet and VMware, that’s changed now. Puppet announced version […]

[ Read More ]

Choria Playbooks – Data Sources

R.I. Pienaar, 2 months | Source: R.I.Pienaar -

About a month ago I blogged about Choria Playbooks – a way to write series of actions like MCollective, Shell, Slack, Web Hooks and others – contained within a YAML script with inputs, node sets and more.

Since then I added quite a few tweaks, features and docs, it’s well worth a visit to to check it out.

Today I want to blog about a major new integration I did into them and a major step towards version 1 for Choria.


In the context of a playbook or even a script calling out to other system there’s ...

[ Read More ]

Ten minute hacks: Process pause & resume

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

I’m old school and still rocking an old X220 laptop because I didn’t like the new ones. My battery life isn’t as great as I’d like it to be, but it gets worse when some “webapp” (which I’d much rather have as a native GTK+ app) causes Firefox to rev my CPU with their websocket (hi gmail!) poller.

This seems to happen most often on planes or when I’m disconnected from the internet. Since it’s difficult to know which tab is the offending one, and since I might want to keep that tabs ...

[ Read More ]

Choria Playbooks

R.I. Pienaar, 3 months | Source: R.I.Pienaar -

Today I am very pleased to release something I’ve been thinking about for years and actively working on since August.

After many POCs and thrown away attempts at this over the years I am finally releasing a Playbook system that lets you run work flows on your MCollective network – it can integrate with a near endless set of remote services in addition to your MCollective to create a multi service playbook system.

This is a early release with only a few integrations but I think it’s already useful and I’m looking for feedback and integrations to build ...

[ Read More ]

An update on my Choria project

R.I. Pienaar, 3 months, 2 weeks | Source: R.I.Pienaar -

Some time ago I mentioned that I am working on improving the MCollective Deployment story.

I started a project called Choria that aimed to massively improve the deployment UX and yield a secure and stable MCollective setup for those using Puppet 4.

The aim is to make installation quick and secure, towards that it seems a common end to end install from scratch by someone new to project using a clustered NATS setup can take less than a hour, this is a huge improvement.

Further I’ve had really good user feedback, especially around NATS. One user reports 2000 nodes ...

[ Read More ]

Send/Recv in mgmt

purpleidea, 3 months, 3 weeks | 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 ]