This is the introduction to my Puppet on vRealize series, which will show you how to achieve the 100% mark of automating things using the leading enterprise technologies for self-service IaaS and XaaS, vRealize Automation and Orchestrator, as well as the best choice when it comes to configuration management: Puppet.

NOTE: by now a new version of the vRatpack Puppet Package for vRealize Orchestrator has been releases that comes with many changes. Read the post about it for more information.

Puppet is one of those tools which are stone-age-old (AD 2005) but still feel like they’re brand new. VMware made a huge invest in PuppetLabs a while back and thus it’s no wonder that there are more and more tools popping up to support VMware and EMC. Also Puppet is continuously expending it’s Infrastructure As Code universe and is becoming more and more interesting for anyone who wants to understand how tomorrow’s data center will be managed.

So how does this fit into the VMware universe? In the beginning of this year Justin Jones from VMware gave a good introduction to the Puppet plug-in for vRealize Orchestrator. You can find the slides at Slideshare. However: nobody ever explained how this theory of all those parts working together would actually look like in practice.

In this series I’ll show you by example how to combine the power of the vRealize product family, namely vRealize Orchestrator and vRealize Automation, with the power of Puppet to take the Anything-As-A-Service (XaaS) concept one step further to the application layer. For that case I created the vRatpack Puppet package that comes with all the stuff I missed in the official Puppet plug-in workflow package. You’ll need a working Puppet master server and, assuming you’d like to do the self-service part as well, a vRealize Automation setup with at least the advanced edition licensed (required for ASD). The final result I choose is a classical, monolith LAMP stack and it will look as shown in Fig. 1 when finished.

Fig 1. Resulting Puppet integration in vRealize Automation.

You may of course use the created workflows for any kind of Puppet configuration. E.g. you might want to create a user account or any other system configuration at request time and it’s also fairly simple to create classes for automated application deployment on Windows guest systems using Puppet and Chocolatey.


The series will be split up in 3 parts, which will show you:

Part 1 - Bootstrapping

How to automate deployment of Puppet agents using vRealize Orchestrator.

Part 2 - Developing

How to create your first Puppet module leveraging the Puppet plug-in for vRealize Orchestrator.

Part 3 - Customizing

Pack all things together in vRealize Automation and allow users to customize their applications at request time.

Can’t wait? Yes, me too. So here’s the first part already!