Introducing the new device manager module for agentless automation
Puppet continues to increase its support of agentless network devices: devices that don’t need a Puppet agent installed on them in order to be managed. In this deployment model, the device is agentless and another Puppet agent acts as a proxy to request certificates, collect facts, retrieve and apply catalogs, and store reports on behalf of the device.
Originally, I wrote the
puppet_device module (in response to a Puppet Enterprise support request) to automate configuration of those proxy Puppet agents. Puppet has moved that module into its namespace, updated the documentation, added acceptance tests, and renamed it to
device_manager module manages the configuration required by the
puppet device command, installs libraries required by associated device modules, and provides additional resources for orchestrating and scheduling
puppet device runs on proxy Puppet agents.
What does this module do?
The original request was to orchestrate
puppet device runs on the proxy Puppet agent to trigger on-demand configuration of an F5 device. This was before Puppet Tasks was available, so the module allowed
puppet device to be triggered via a
In practice, the proxy Puppet agent becomes part of your PE infrastructure, and it’s configuration could (should!) be expressed as code and data using Puppet. Given that, the module also:
- Manages the configuration of device.conf
- Allows the storage of device configuration data in Hiera YAML (or encrypted via Hiera EYAML)
- Installs libraries required by associated device modules
- Allows orchestration of
puppet deviceruns via a
puppet deviceruns on the proxy agent via a cron or scheduled task
- Defines a fact on the proxy Puppet agent identifying the devices for which it is a proxy
How to use this module
Get up and running with
device_manager using the following steps:
- Install the
device_managermodule on your master
- Install the device module associated with your device on the master
- Declare resources to configure the proxy Puppet agent
- Declare resources to manage the device
You can find the device_manager module on the Forge. Check out its documentation, and start managing your network devices using some of the following device modules:
Tom Kishel is a senior support engineer at Puppet.