Meet the puppet master

What’s driving the rise in Puppet, and why should you care?

Lucy Carey

A recent report has revealed that job postings on with the keyword ‘Puppet’ have spiked 66% in the past year – we talk to Puppet Labs CTO Nigel Kersten for the full story.

In a recent job trends report by, it was revealed that job postings with the keyword ‘Puppet’ spiked 66% in the last year, topping Hadoop, PaaS, and social media – largely driven by the continued march of virtualization and cloud computing. We caught up with Puppet Labs CTO Nigel Kersten to find out more about the rise of the DevOps tool, and why you should consider having Puppet skills.

Jaxenter: First of all, just what is Puppet, and what makes it different?

Nigel: Puppet differs from traditional system management in that it allows the user to describe the state that a system should be in, rather than working out how it should get there.  Additionally, once this state has been described once, it’s easily applied to other systems, whether they be bare-metal, virtualized, cloud or even non-computer devices such as network switches.

The language that you use to describe state is very accessible and simple, so let’s have a look at an example now:

package { “openssh-server”: ensure => installed,}

See how there’s no mention of how the package will be installed? We simply describe the state we want, and Puppet works out how to get there.  It’s much more like a configuration file syntax than a full programming language, and doesn’t require formal training to adopt.

What is the benefit of having Puppet skills for sysadmins?

As a sysadmin, adopting an automation tool like Puppet enables you to provision services more quickly and to build more predictable and reliable infrastructure.  Not only that, but by virtue of using a simple text-based description of system state, you can manage your infrastructure as a software development lifecycle, and this can be truly revolutionary. There are decades and decades of wisdom and practices around software development that we can now adopt as sysadmins to make our lives easier and our function more useful at doing what the business needs. Version control, code review, testing frameworks, release engineering and regression testing — these are all tools that have a huge impact upon IT operations.

Once you’ve described some desired system state in Puppet, it becomes reusable, not just for the rest of your infrastructure, but for others if you so desire. You can bundle together Puppet code and publish it to the Puppet Forge, our public content repository, and then others can simply adopt your work with minimal effort.

Sysadmins have always shared solutions with each other in the form of prose and small tools, but Puppet allows experts to define best practices that can be directly adopted, both now and into the future.  As a veteran sysadmin, this allows you to be a true force multiplier for the more junior members of your team. Define best practice, put an appropriate abstraction around it, and it’s easily consumable by others.

Does the job trends report reflect Puppet’s growth in the past few years?

Puppet Labs was founded in 2005, and we launched our first commercial product in 2011. The graph shows Puppet job listings gaining momentum in 2009 and spiking from January 2010 and onwards, with great growth year-over-year. That growth maps to the fast-growing awareness of Puppet Labs technologies, and accelerating adoption by sysadmins and developers, too. It also points to the growing popularity of Puppet among larger enterprises, which are of course able to hire more people than smaller companies.

What are some of the biggest challenges sysadmins face in learning Puppet?

There’s a small mental shift required to move from thinking about “how do I achieve the state I want?” to “what is the state I want this system to be in?” As with any powerful tool, there’s some learning required to adopt it.

We help new users a lot in these areas with great documentation, self-guided training and instructor-led training. We also recently launched The Puppet Labs Workshop, which is a web-based collection of courses we offer to help folks develop basic proficiency in our technologies.

For many sysadmins the biggest challenge can be to their own worldview. Puppet allows you to define infrastructure in a way that is highly visible to the organization and easily consumed by others. Your value to the company was never really in the fact that you knew how to install packages on a specific flavor of Linux, or how to compile Apache modules — it was in delivering services that your company needs. Puppet makes this apparent, and if you didn’t realize it, it can come as quite a shock.

What are the biggest challenges virtualization and cloud computing pose for sysadmins, and how does Puppet help conquer them?

Before virtualization and cloud computing there was a natural bottleneck around provisioning new services as it simply took a certain amount of time to procure new hardware and provision it.  You can manage to survive without automation in that world because there isn’t as much pressure on you.

Cloud and virtualization changes this. Without automation, suddenly you’re the bottleneck. The rest of the company doesn’t have the luxury of waiting for you to manually provision service after service, and they certainly don’t have the luxury of dealing with the inconsistent environments that invariably result.

Puppet helps you encode your desired state, instantiate it at will and make use of the large selection of pre-written Puppet modules built by ourselves and the rest of the Puppet community. Once you’ve defined a configuration in this manner, you can scale as fast as your cloud provider can, and you are no longer the bottleneck.

To what do you attribute Puppet’s growth in the past year? What do you predict for the company in the next year?

This growth is due to several factors. Firstly, we have an absolutely awesome grassroots community who truly love our products and open-source projects. We’ve always prided ourselves on being sysadmins designing software for other sysadmins, and we’ve been much more fondly perceived than traditional heavyweight configuration management systems.  Our community does a phenomenal job of building content, evangelizing and explaining how transformative great IT automation can be.

Secondly, we’ve really seen a huge wave of adoption of cloud, virtualization and agile development methodologies in mainstream companies. The loose collection of practices we call DevOps has really hit the mainstream: It’s not just for those sexy webscale companies anymore. We run an annual State of DevOps Report, and this year we really saw a huge rise in big traditional companies reporting that they’ve been implementing these practices for a while. All of these changes create pressure on operations teams to deliver more, deliver more often, and deliver at a lower cost.



Inline Feedbacks
View all comments