Published on 11 November 2015 by

In 2014, Puppet Labs announced a strategic relationship with Microsoft to integrate Puppet Enterprise with Microsoft Azure. To start with, we wanted to make is easy for joint customers to deploy virtual machines from the Azure Gallery, so we offered a free Puppet Enterprise trial in the Azure Gallery. That lets you quickly and easily deploy a preconfigured Puppet master image in Azure.

With the release of Puppet Enterprise 2015.3 later this year, we’re introducing a new module in the Puppet Forge specifically for managing Microsoft Azure with Puppet. With this new module, we allow you to manage virtual resources in Azure directly with Puppet. You can manage Azure virtual machines in both the Classic API and the Resource Management API.

The desired state of Azure VMs can be described in Puppet.

azure_vm_classic { 'virtual-machine-name':
  ensure           => present,
  image            =>         'b39f27a8b8c64d52b05eac6a62ebad85__Ubuntu-14_04_2-LTS-amd64-server-201    50706-en-us-30GB',
  location         => 'West US',
  user             => 'username',
  size             => 'Medium',
  private_key_file => '/path/to/private/key',
}

This provides you a simple way to model your virtual infrastructure as code. And like any code, it can be versioned using your favorite version control system. Changes can be proposed using pull requests or other code management workflows. The modifications you make can be reviewed, and tests can be written to enforce various constraints — all before your changes ever hit production.

Why Is this So Important?

Over time, the configuration of a host under manual management may drift. The wider that gap grows, the more often you’ll get unexpected issues and failed deployments. Configuration drift can happen within your Azure infrastructure, too. Puppet can ensure your infrastructure doesn't drift from your model by creating missing machines or modifying any machines that have drifted away from their desired state.

The Microsoft Azure module will be released later this year as part of Puppet Enterprise 2015.3. More details are coming soon. In the meantime, we’d love to hear about what other aspects of Azure you would like to see managed by Puppet —tell us in the comments section below.

Stephanie Stouck is a senior product marketing manager at Puppet Labs.

Learn More

Share via:
The content of this field is kept private and will not be shown publicly.

Restricted HTML

  • Allowed HTML tags: <a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • Lines and paragraphs break automatically.
  • Web page addresses and email addresses turn into links automatically.