Puppet Labs releases extensible API

Tool update allows direct interactivity with core Puppet functions for greater systems management flexibility

In the six years since it launched, systems management vendor Puppet Labs has earned kudos as an open source company to watch, been heralded as a thought leader on the need to bring together IT development and operations teams, and grabbed a spot in the data centers of prominent companies such as Apple, Disney, eBay and Twitter.

That's all good news for Puppet Labs CEO Luke Kanies, who created Puppet with the stated goal of enabling companies to build a much better operation.

"We're building tools that people can use to move operations from being the cost centers that people see them as today to enabling strategic change in the organization," Kanies says.

This is especially important now, he adds, as companies move from physical to virtual infrastructure, and then into the cloud. "If they don't have the technology infrastructure to help, then that move becomes either impossible or fantastically expensive," he says.

ANALYSIS: Who gets blame for Amazon outage?

Kanies explains Puppet, the latest release of which is available for download today, as "a tool that allows you to explain in very simple configuration language how you want your infrastructure to look -- what it means to be a database server, or a Web server or an application server and which hosts you want running each of those servers -- and then builds each of those machines in the way you configured them."

Puppet also stands out for its ability to let IT operations teams build what Kanies calls "aspects," or configuration bits shareable between different server types.

"You might have a production Web server running on Solaris in your Atlanta data center on a DMZ that has a lot of the same configuration aspects as a development Web server running on Linux, but they wouldn't be exactly the same," he says. "Puppet makes it easy to combine the bits you want on your hosts but not have a huge amount of cost to maintain those differences."

The new release, Puppet 2.7.0, lets users further capitalize on this flexibility and modularity, Kanies says. It does so through availability of Faces, a new set of extensible tools and application programming interfaces for interacting with Puppet and its core components.

With Faces, Puppet exposes command-line functionality to the user, creating a ready-made connection to Puppet's core data components and enabling creation of more services. For example, a company could use Faces to create a new set of cloud capabilities -- setting up a server on Amazon's Elastic Compute Cloud (EC2) with a simple command such as "puppet ec2 create."

"With Faces," Kanies says, "we've built a lot more 'hackability' and extensibility around the product and so we'll see people doing things we didn't expect or plan on them doing."

Learn more about this topic

11 open source companies to watch

Dev and ops, a marriage made in heaven?

Who gets blame for Amazon outage?

Join the Network World communities on Facebook and LinkedIn to comment on topics that are top of mind.

Copyright © 2011 IDG Communications, Inc.