Puppet

Each Morpheus Puppet integration ties to a specific Puppet Master and makes it easy to install the Puppet Agent onto target Instances and Servers. Once integrated, we can trigger the agent installation by creating Puppet Agent Install Tasks through Morpheus automation or at provision time when spinning up instances in Clouds associated with a Puppet integration.

Add Puppet Integration

  1. Navigate to Administration > Integrations

  2. Click + NEW INEGRATION

  3. Select Integration type “Puppet”

  4. Populate the following fields

  • Name: A friendly name for this Puppet integration in Morpheus

  • Enabled: When marked, this Puppet integration will be available to users at provision time and when creating Tasks

  • Puppet Master (Hostname): The resolvable DNS name to the Puppet Master, communicating on port 443 by default

  • Allow Immediate Execution: Yes or No (See additional details below)

  1. Click SAVE CHANGES

../../_images/new_puppet_integration.png

Allow Immediate Execution

When adding or editing a Puppet integration, users have the option to “Allow Immediate Execution”. Using this feature will connect to the Puppet Master after the Puppet Agent is installed and force configuration application immediately. This is an optional convenience feature, if it’s not used, the Puppet Master will still apply configuration to the node on its own schedule. Using this feature requires supplying SSH credentials. If you do not wish to provide SSH credentials to Morpheus select “No” to opt out of this feature and they do not need to be provided.

Associating a Puppet Integration with a Cloud

By associating a Puppet Integration with a Cloud, users are able to automatically install the Puppet Agent, select a Puppet environment, and supply a Puppet Node Name at provision time. The integration association is made when adding or editing a Cloud integration in Morpheus.

  1. Navigate to Infrastructure > Clouds

  2. Identify the Cloud to associate with Puppet and edit it by clicking on the pencil icon at the right end of the row

  3. In the EDIT CLOUD modal, expand the Advanced Options section

  4. In the CONFIG MANAGEMENT dropdown, choose the Puppet integration

  5. Save changes to the Cloud integration

Creating Puppet Agent Install Tasks

Puppet Agent Install Tasks automate the process of installing the Puppet Agent, selecting the Puppet environment, and supplying the Puppet Node Name. We can run this Task on-demand as needed for individual Instances or servers or add them to workflows to build a Puppet Agent installation step into larger automation suites.

  1. Navigate to Provisioning > Automation

  2. Select the Tasks tab

  3. Click + ADD

  4. From the “Type” field, select Puppet Agent Install

  5. Complete the fields as needed to target a specific Puppet Master and to identify Puppet environment and node names

  6. Save changes

../../_images/puppet_task.png

Installing Puppet Agent at Provision Time

With a Puppet integration associated with a Cloud (as described above), users can opt to install the Puppet Agent at provision time. When provisioning into an associated Cloud, a new “Puppet” section will appear on the CONFIGURE tab of the provisioning wizard. Here users can select a specific Puppet Master, select the Puppet environment, and select a Puppet node name. During provisioning, the Puppet Agent will be automatically installed and configured for the selected Master.