Planet Puppet

Your source of Puppet technical information

Tip of the Week 47 - HowTo DevOps

Anonymous, 14 hours, 41 minutes | Source: Example 42

How DevOps started In the past times system administrators mostly managed their infrastructure in a manual pattern: provisioning systems using CDROMs or USB sticks or - if you were already lucky to have larger infrastructure - you might have used a provisioning system like FAI or Cobbler. Afterwards people logged into the system using SSH and configured them according to some documentation or tickets or they had some shell or perl scripts which did the initial configuration. When developers changed from waterfall to agile methods, system administrators were facing new issues: they needed to build systems faster as developers were pushing out ...

[ Read More ]

Announcing Puppet Enterprise in AWS OpsWorks

AJ Johnson, 3 days, 19 hours | Source: Puppet Labs

New AWS OpsWorks for Puppet Enterprise is a fully managed service to help you accelerate your migration to the cloud.

[ Read More ]

Puppet CEO Sanjay Mirchandani talks about the journey to automation

Arik Hesseldahl, 4 days, 22 hours | Source: Puppet Labs

See what Sanjay has to say about how established companies can take one siloed success with automation and make it pervasive in this Q&A.

[ Read More ]

Managing multiple puppet modules with modulesync

Dean Wilson (, 6 days | Source: Dean Wilson@UnixDaemon

With the exception of children, puppies and medical compliance frameworks managing one of something is normally much easier than managing a lot of them. If you have a lot of puppet modules, and you’ll eventually always have a lot of puppet modules, you’ll get bitten by this and find yourself spending as much time managing supporting functionality as the puppet code itself.

Luckily you’re not the first person to have a horde of puppet modules that share a lot of common scaffolding. The fine people at Vox Pupuli had the same issue and maintain an excellent tool ...

[ Read More ]

Tip of the Week 46 - Checking config files before applying them

Anonymous, 1 week | Source: Example 42

Lately I’ve rediscovered an option of Puppet’s file resource that can be incredibly useful and, surprisingly, doesn’t seem to be widely used. Since Puppet 4.6 the file resource type has the validate_cmd attribute, which allows to run a command to check the syntax of a file before actually applying it to the system. For example we can write: file { '/etc/nginx/nginx.conf': content => 'This can be wrong', validate_cmd => 'nginx -t -c %', } to make Puppet run the specified validate_cmd on the file we are trying to provide, which is referenced by the % sign (can ...

[ Read More ]

How Diligent ditched monolithic releases

Arik Hesseldahl, 1 week, 2 days | Source: Puppet Labs

Read about Diligent’s journey to embracing continuous delivery and DevOps practices — and how they went from four releases a year to 50.

[ Read More ]

Upgrading Puppet Enterprise from 2016.4 to 2017.3

rnelson0, 1 week, 3 days | Source: RNELSON0

Over the past year, there have been some pretty big improvements to Puppet. I am still running PE 2016.4.2 and the current version is 2017.3.2, so there’s lot of changes in there. Most of the changes are backwards-compatible, so an upgrade from last November’s version is not quite as bad as it sounds, and I […]

[ Read More ]

Announcing Puppet’s new office in Tokyo / 東京(日本)新オフィスのご案内

Darryl McKinnon, 1 week, 5 days | Source: Puppet Labs

Today we’re pleased to announce the opening of our eighth office in Tokyo and the formation of Puppet K.K. so we can better serve current and future Puppet users in Japan.

[ Read More ]

Tip of the Week 45 - Save the dates

Anonymous, 2 weeks | Source: Example 42

Are you interested to learn and discuss about Puppet? We will be at the following events, let’s meet there! November 9th - Puppet User Group Berlin Hosted by Visual Meta GmbH, Alexanderstraße 3, 10178 Berlin. This time we will demo bolt and tasks and plans. Please register using meetup or Xing. January 22nd to 26th - Puppet Roadshow One day demos on PSICK, GitLab integration, Puppet Enterprise and all new development. Location is yet to be defined, Stay tuned for updates. At the other days we are travelling around Germany, visiting customers. Please give us a note, if you like to ...

[ Read More ]

Tip of the Week 44 - Puppet Code Development IDE

Anonymous, 3 weeks | Source: Example 42

How do you develop Puppet code? Which tools do you use? What tools should you use? In the early days I was mostly using vim for any kind of code development. Basically this have been shell scripts, some ugly Perl code and rarely fixing some PHP code. But: I have never been a developer. When Puppet came into place I continued using vim also for Puppet code development. While writing code and learning new principles, I learned that pure vim is not really very helpful. Luckily there are extensions one can use like puppet-vim. Genereally you will never want to ...

[ Read More ]

Copyleft is Dead. Long live Copyleft!

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

As you may have noticed, we recently re-licensed mgmt from the AGPL (Affero General Public License) to the regular GPL. This is a post explaining the decision and which hopefully includes some insights at the intersection of technology and legal issues.


I am not a lawyer, and these are not necessarily the opinions of my employer. I think I’m knowledgeable in this area, but I’m happy to be corrected in the comments. I’m friends with a number of lawyers, and they like to include disclaimer sections, so I’ll include this so that I blend in ...

[ Read More ]

Retrospec - the Task Generator

Anonymous, 1 month, 1 week | Source: Logical thoughts exposed

Puppet introduced Bolt at Puppetconf 2017 this year and so far I like what I see. Simple, easy to use remote task execution without a huge requirement of any one language. Best of all puppet modules can start adding one off bolt tasks to help with the administrative duties of various applications. Bolt makes it really easy to get started but adds some required scaffolding to create a properly defined task, namely the metadata file.

One of the use cases of retrospec puppet is to build out this scaffolding for you with the many generators it has. So starting with ...

[ Read More ]

The Choria Emulator

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

In my previous posts I discussed what goes into load testing a Choria network, what connections are made, subscriptions are made etc.

From this it’s obvious the things we should be able to emulate are:

  • Connections to NATS
  • Subscriptions – which implies number of agents and sub collectives
  • Message payload sizes

To make it realistically affordable to emulate many more machines that I have I made an emulator that can start numbers of Choria daemons on a single node.

I’ve been slowly rewriting MCollective daemon side in Go which means I already had all the networking and connectors available ...

[ Read More ]

Puppet 5 Beginner's Guide (third edition)

John Arundel, 1 month, 2 weeks | Source: Bitfield Consulting

Order your copy now on (

A new book on Puppet for the cloud-native era

A new edition of the bestselling Puppet Beginner’s Guide is now available, covering all the latest features of Puppet 5. Learn Puppet from scratch, from installation to managing complex infrastructures, including chapters on managing Amazon AWS cloud resources and Docker containers with Puppet. Every code example is available right now online in a special GitHub repo just for this book. There is also a complete, working Puppet infrastructure for you to download, adapt, and use on your own servers.

Praise ...

[ Read More ]

Load testing Choria

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


Many of you probably know I am working on a project called Choria that modernize MCollective which will eventually supersede MCollective (more on this later).

Given that Choria is heading down a path of being a rewrite in Go I am also taking the opportunity to look into much larger scale problems to meet some client needs.

In this and the following posts I’ll write about work I am doing to load test and validate Choria to 100s of thousands of nodes and what tooling I created to do that.


Choria builds around the NATS middleware which ...

[ Read More ]

puppet network module 3.10.0

Michael Arnold, 3 months, 3 weeks | Source: The Razor's Edge

Today, I have released a large update to my Red Hat network Puppet module to the Puppet Forge.  Numerous pull requests were merged including: Added support for promiscuous interfaces. (Elyse Salberg) Added a parameter to disable restart of network service on change. (Evgeni Golov) Added support for netmask and broadcast parameters in alias range. (Nick […]

[ Read More ]

strict_variables and the RazorsEdge Puppet Modules

Michael Arnold, 3 months, 3 weeks | Source: The Razor's Edge

Over the past month I have been adding much needed support for running Puppet with strict_variables = true to all of the RazorsEdge Puppet modules. Thanks to coreone, I finally had a solution that did not require tearing out the legacy global variable support. As much as I think that continued inclusion of global variable […]

[ Read More ]

Converting and Formatting Data Like a Pro With Puppet 4.5.0

Henrik Lindberg (, 4 months, 2 weeks | Source: Puppet on the Edge

Before Puppet 4

Before Puppet 4.0.0 there was basically only the data types; String, Boolean, Array, Hash, and Undef. Most notably missing were numeric types (Numeric, Integer, and Float). In Puppet 4.0.0 those and many other types were defined and implemented in a proper type system. This was all good, but a few practical problems were not solved; namely data conversion. In Puppet 4.5.0 there is a new feature that will greatly help with this task. But first lets look at the state of what is available in prior versions.

Converting String to Number ...

[ Read More ]

Managing SSH server security with Puppet

rnelson0, 4 months, 2 weeks | Source: RNELSON0

Edit: In an earlier edition, I credited the wrong newsletter as the source. My apologies to R.I.Pienaar! In this past week’s DevCo Newsletter, I saw the Rebex SSH Check, which reminded me that I’ve locked down the SSH server security configuration at work, but not at home. Sounds like a good opportunity to blog about […]

[ Read More ]

Puppet 5 has arrived!

rnelson0, 4 months, 3 weeks | Source: RNELSON0

If you missed the news this past week, the Puppet 5 Platform was released! Read the announcement and the release notes for some great details. Congratulations to everyone at Puppet for getting this new release out the door. I’m looking forward to diving in with it as soon as a Puppet Enterprise release is out, […]

[ Read More ]