Meet the puppet master

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

Lucy Carey
puppet-labs.12

A recent report has revealed that job postings on Indeed.com 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 Indeed.com, 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 Indeed.com 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.

 

 


Author
Comments
comments powered by Disqus