Declare state, enforce continuously, test first
Day 1
Manifests, Modules & Puppet DSL
- Puppet architecture: Puppet Server, Puppet agent, catalog compilation — the declarative enforcement loop
- Puppet DSL: Resources, classes, defined types, variables, conditionals — writing readable manifests
- Core resource types: package, service, file, exec, user, group — the resources you'll use every day
- Facter: System facts and custom facts for dynamic configuration based on node data
- Hiera: Data separation from code — hierarchies, YAML backends, Hiera 5 with environment-level data
- Writing modules: Manifests, templates (EPP/ERB), files, data — structuring a reusable Puppet module
- Puppet Forge: Consuming community modules with Puppetfile/r10k
- Node classification: site.pp, roles, profiles pattern — assigning configuration to nodes
Day 2
Testing, Environments & Puppet Enterprise
- Testing Puppet code: rspec-puppet unit tests, acceptance tests with Puppet Litmus
- r10k: Environment management with control repositories — branching strategy for Puppet code
- Code deployment workflows: Feature branches, production promotion — safe Puppet code delivery
- Puppet Enterprise Console: Node management, reporting, task execution — the management UI
- Puppet Tasks (Bolt): Ad-hoc remote execution without an agent — when convergence isn't needed
- RBAC in Puppet Enterprise: User groups, permissions, token auth — enterprise access control
- PuppetDB: Inventory queries, exported resources, fact storage — querying your infrastructure data
What your team walks away with
Puppet practitioners who can write, test, and manage Puppet code across environments using the roles-and-profiles pattern and Puppet Enterprise.
- Write modular Puppet manifests using the roles-and-profiles pattern
- Separate configuration data from code with Hiera hierarchies
- Test Puppet code with rspec-puppet before deploying to nodes
- Manage environments and code deployment with r10k and a control repository
Book the Puppet training
Available standalone or combined with the Chef or Ansible training for a configuration management comparison.
Get in touch