Puppet Enterprise adds data library to its IT automation software

Administrators can now write programs that draw operational data from a centralized repository

Puppet Labs has added a data library to the enterprise version of its open-source IT automation software, allowing administrators to more easily reuse operational data in their own scripts and programs.

"We know more about your infrastructure than anyone else," said Luke Kanies, Puppet Labs CEO, referring to the data the Puppet software collects. "We're [placing] the data itself in a data library, and giving the user access to do any analysis they want to do."

[ Keep up with software development issues and trends with InfoWorld's Fatal Exception blog. | Master the latest in Java development with our JavaWorld Enterprise Java newsletter. ]

Puppet Enterprise 2.5, released Wednesday, also includes for the first time agents that can monitor computers running Microsoft Windows. It also includes direct access to a repository of add-on modules.

Puppet is a configuration management tool, one that allows administrators to collect operational data and set configurations across multiple servers, using a simple declarative syntax. Companies such as Twitter, Dell, and Rackspace have used the software to manage their servers.

The new version of the software provides a set of APIs (application programming interfaces) that can be used by administrators and programmers to access operational data collected by Puppet. Of course, much of this data is also available in log files, but writing a script to parse each log file can be a cumbersome process, Kanies said. It would be much easier using an API, he argued.

"If you have 10 log files, then you have to write 10 parsers," Kanies said. This data can accumulate quickly in large organizations. One customer of Puppet's generates 750GB of data each day from tens of thousands of servers.

With the Puppet APIs, the data "is all structured, so you don't have to worry about parsing," Kanies said. All the data is also compiled in a central database. APIs can be accessed through the JSON (JavaScript Object Notation), a protocol familiar to many programmers. In addition to allowing users to create their own programs and scripts to draw data from the library, Puppet itself plans to use the APIs as well. "In the next year or two, you will see us build more applications using this data library," Kanies said.

Overall, the APIs will offer about 50 parameters about the machines Puppet oversees, including information such as the serial numbers of each machine, the type of processor and the amount of memory each machine has. Such data could be used in a wide variety of ways. One Puppet customer, for instance, cross-indexed all the machine serial numbers of its Dell servers against data from a Dell service that provides warranty information for all of its computers, allowing the organization to determine how many of its machines were still under warranty.

In addition to the APIs, Puppet Enterprise 2.5 has a number of other new features added since version 2.0 was released in November. The software now has official support for Windows clients. Until this time, Puppet had been primarily used to manage Unix and Linux servers, such as Red Hat Enterprise Linux and Oracle Solaris. "We've gotten a lot of requests for Windows," Kanies said. The installer sets up the agent on the Windows server and authenticates the server to the Puppet core program. The open-source version has offered a Windows agent for a while, but this is the first version to come with agents that can be installed on Windows servers.

This software is also the first version to come with a direct connection to a repository of plug-in Puppet modules, called Puppet Forge. This site offers a collection of modules written by Puppet engineers and third-party contributors that can ease routine administrative tasks, such as setting up a database or application server. The site now houses about 300 modules. The integration will allow users to more easily peruse, download and publish modules.

Puppet Enterprise can be downloaded and used at no cost for managing up to 10 nodes. Pricing starts at $2,450 for more nodes.

Joab Jackson covers enterprise software and general technology breaking news for The IDG News Service. Follow Joab on Twitter at @Joab_Jackson. Joab's e-mail address is Joab_Jackson@idg.com

Copyright © 2012 IDG Communications, Inc.

How to choose a low-code development platform