Automate All Things! Support for DevOps Tool Puppet Added to Windows Azure

| by Richard Seroter Follow 6 Followers on Dec 19, 2013. Estimated reading time: 2 minutes |

Want to do DevOps automation in a Microsoft world? Typically that meant using Microsoft-provided tools like PowerShell and System Center instead of the popular open source tools that have been slow to support the full Microsoft product stack. That’s beginning to change as developers and system administrators can now use tools like Puppet to provision and manage resources in Windows Azure.

Microsoft Open Technologies (MS Open Tech) – a subsidiary focused on investing in open source – released a Puppet module and command line interface that lets users of this DevOps tool interact with Windows Azure virtual machines, networks, and databases. This module also opens up the door for users to apply any of the 1800+ community-defined Puppet configurations to Windows Azure environments. Why did they build this? A blog post about this release provided some perspective.

MS Open Tech engineers have undertaken this work through our focus on enhancing interoperability across popular DevOps tools. DevOps focuses on the management of the intersection between software development and IT operations. It emphasizes collaboration and integration between the increasingly agile software development team (where rapid change is necessary), and the operations team who are required to provide maximum up time (where change may impact reliability). DevOps seeks to enable these two groups to communicate and collaborate more effectively. The contribution of a Puppet Module for Windows Azure is an important step in ensuring that users of Puppet are able to leverage their skills in a Windows Azure environment.

This Puppet module supports both Windows and Linux virtual machines, and the CLI includes operations for creating, deleting, retrieving, stopping, and starting a VM. CLI users can also create and configure Windows Azure virtual networks and create and configure Windows Azure SQL databases. Access to the nearly 1,900 community manifests means that users can apply a wide range of configurations to Windows Azure VMs, including manipulating the IIS webserver, interacting with the Windows registry, managing NGINX on Linux, and more.

To be sure, Puppet has supported Windows since the 2.7.6 release in 2011. The Puppet Master – which stores the model-driven manifests that express a system’s state – must run on a Linux server, but the servers and workstations that host the Puppet agent can be running either Linux or Windows. In Puppet’s Master/Agent mode, agents pull manifests from the Puppet Master and apply them in order to enforce the desired machine state. Puppet is available via open source, and also sells a more full-featured Enterprise version. Both versions support cloud VM provisioning in AWS and Google Compute Engine, and it’s possible to run Enterprise Puppet itself in a variety of clouds, including Windows Azure.

Chef – Puppet’s chief competitor – has offered Windows Azure integration for over a year. However, its plugin for Windows Azure focuses solely on creating and managing cloud VMs. Nonetheless, Microsoft’s customers now have the opportunity to use two of the most widely used DevOps automation tools against Windows servers and the Windows Azure cloud. Other DevOps tools are starting to turn their attention to Redmond’s flagship operating system as well. Vagrant is a tool used by developers and system administrators to quickly spin up consistent development environments. While users could run Vagrant on Windows machines, the virtual guests themselves only run Linux OSes. In the release notes for Vagrant 1.4, there is a passing mention that Vagrant 1.5 may introduce Windows guests, thus letting Microsoft-oriented developers take advantage of this popular tool and growing ecosystem.

Rate this Article

Adoption Stage

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread


Login to InfoQ to interact with what matters most to you.

Recover your password...


Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.


More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.


Stay up-to-date

Set up your notifications and don't miss out on content that matters to you