How to integrate vRealize Automation with the Puppet Plugin 2.0

The Puppet Plugin 2.0 for vRealize Automation is here so let’s put it to good use by integrating it with vRealize Automation Blueprints!

Pre-Reqs:

 

  • Puppet Plugin Installed and Configured. See my guide here
  • A Puppet master server running Puppet Enterprise 2016.4 or newer, or open source Puppet 4.6.2 or newer
  • vRealize Orchestrator 7 or newer
  • vRealize Automation 7 or newer
  • The Puppet Starter Content Blueprints downloaded and installed in vRA from here
  • A quiet place where you will not be interrupted see my guide here

 

First we need to install some content on the Puppet Master

SSH to the Puppet Master and type the following to install git

yum -y install git

Now git clone the starter content

git clone https://github.com/puppetlabs/puppet-vro-starter_content.git

Change to the new directory

cd puppet-vro-starter_content

 Run the script to install content with the following

bash scripts/vra_nc_setup.sh

Run the puppet agent

puppet agent -t

Open the vRealize Orchestrator Client and update the Event Broker Workflows

  1. Change view to run
  2. Select the EventBroker Install PE agent workflow
  3. Click the pencil to edit

Click Not Set to select the Puppet Master we added earlier

Select the puppet master server

  1. Click Puppet Dropdown
  2. Select the puppet master
  3. Click Select
  4. Click Save and Close

Do the same as above for the EventBroker Purge PE agent node workflow

At this point you should already have uploaded the sample blueprints to vRealize Automation, if not download the Linux and/or Windows Blueprints and my guide for instructions to import using Cloud Client.

Go to the design tab and edit the sample blueprint

Select a RHEL/CENTOS 7 Template

  1. Click the Linux_vSphere machine
  2. Click the Build Information Tab
  3. Select the template

Enter the root password in the Custom Properties

  1. Click Properties
  2. Enter the password to login to the provisioned machine
  3. Click Ok
  4. Click Finish

Publish the blueprint

Create the event broker subscriptions

Click machine provisioning and click next

Enter the following

  1. Run based on conditions
  2. All of the following
  3. Data > Lifecycle state > Lifecycle stage name => Equals => (Constant) VMPSMasterWorkflow32.MachineProvisioned
  4. Data > Lifecycle state > State phase => Equals => (Constant) PRE
  5. Data > Blueprint name > Equals > PE Linux Webserver example
  6. Click next

Browse to the Event Broker Install PE agent workflow and click next

Enter the following and click finish

Publish the new subscription

Entitle the blueprint and fire off a new request

Check the vRO Client to verify the workflow ran

Notice I have a couple that failed, see my guide here to fix this issue.

Get the ip address of the newly provisioned server and open a web browser to it

Also notice it’s registered on the Puppet Master

Enjoy!
Remember, sharing is caring ->Tweet about this on Twitter0Share on Facebook0Share on LinkedIn9Share on Google+0Email this to someone

Leave a Reply

Your email address will not be published. Required fields are marked *

*