Puppet
Connect Puppet to Cloudaware through TunHub using the Puppet endpoint URL and an API token.
- Audience: Cloudaware administrators, DevOps/platform engineers, and Puppet administrators
- Outcome: A Puppet API connection is configured and Puppet facts are available in the Cloudaware CMDB for reporting, automation, and governance
The Puppet integration requires TunHub. Configure a tunnel and a route to the Puppet API endpoint before adding the integration in Cloudaware.
Prerequisites
Before you begin, make sure you have:
- Access to a Cloudaware account and a user with Admin Console permissions to manage integrations.
- The Puppet API endpoint hostname and service port.
- A valid Puppet API token with access to the data Cloudaware needs to collect.
- A Breeze Agent host that can reach the Puppet API endpoint.
- A configured TunHub tunnel and a route to the Puppet API endpoint.
Configure TunHub Connectivity
- Follow the TunHub setup guide to configure a Breeze host and create a tunnel.
- In the TunHub integration, open the tunnel's three-dot menu and select Edit Tunnel & Routes.
- Click + ADD ROUTE and enter:
- Name: A descriptive route name, such as
puppet-api. - Remote Host: The Puppet API endpoint hostname or IP address reachable from the Breeze host.
- Remote Port: The service port used by the Puppet API endpoint.
- Name: A descriptive route name, such as
- Click Save and wait for the route status to turn green.
- Note the generated Destination Host and Destination Port. Use these values to construct the URL for the Puppet integration in Cloudaware, for example,
https://gw.tunhub.cloudaware.com:12345.
The example port is a placeholder. Use the destination port assigned to your route, which can differ from the Puppet endpoint's remote port.
Add a Puppet Integration to Cloudaware
- In Cloudaware, go to Admin Console.
- Find Puppet in DevOps integrations, then click + ADD.
- Fill out the form:
- Name: Enter a display name for the Puppet integration.
- URL: Enter the Puppet API URL exposed through TunHub, using the route's generated destination host and port.
- API Token: Enter the Puppet API token.
- Trust Certificate: Select this checkbox if required for the certificate presented by the Puppet endpoint through TunHub, such as when the certificate does not match the TunHub hostname or is self-signed.
- Click Save.
- Confirm that the integration status indicator is green.
Allow the initial collection cycle to complete after saving the integration.
Supported Objects
Cloudaware ingests the following Puppet objects:
| Puppet Object | CMDB Object API Name |
|---|---|
| Puppet DB Fact | CA10PDB__CaPuppetDbFact__c |
| Puppet DB Instance | CA10PDB__CaPuppetDbInstance__c |
| Puppet DB Node | CA10PDB__CaPuppetDbNode__c |
The Environment field on these objects identifies the associated Puppet environment for reference.
Troubleshooting
Connection Fails or Integration Shows Red Status
- Confirm that the TunHub tunnel and Puppet route are healthy.
- Verify that the Breeze host can resolve and reach the Puppet endpoint on the configured remote port.
- Check that the integration's URL uses the route's generated destination host and port.
- Confirm that firewalls allow the connections described in the TunHub prerequisites.
Authentication Fails
- Confirm that the API Token is valid and has not expired or been revoked.
- Verify that the token has access to the Puppet API endpoint and the data required for collection.
- If the token has been rotated, edit the Cloudaware integration and replace the stored API Token.
Certificate Error
- Check the certificate presented by the Puppet endpoint through the configured route.
- Confirm whether Trust Certificate needs to be selected for a self-signed certificate or a certificate hostname mismatch.
- Verify that the route points to the intended Puppet endpoint before enabling this option.
Still stuck? Contact Cloudaware Support at support@cloudaware.com with the integration name and a brief description of the issue. Do not include the API token.
Reconfigure or Remove the Integration
Update the Integration Details
- Go to Admin and select Puppet.
- Select the integration and open its three-dot menu, then click Edit.
- Update Name, URL, API Token, or Trust Certificate as needed.
- Click Save and confirm that the integration status indicator is green.
Remove the Integration from Cloudaware
- Go to Admin and select Puppet.
- Select the integration and open its three-dot menu, then click Delete.
- Confirm the deletion if prompted.