Puppet Best Practices: Design Patterns For Main... -

Puppet Best Practices: Design Patterns for Maintainable Code

A good module follows the : it should do one thing and do it well. Puppet Best Practices - The Swiss Bay Puppet Best Practices: Design Patterns for Main...

Use Hiera to provide defaults and overrides based on facts like environment or OS. Puppet Best Practices: Design Patterns for Maintainable Code

Never hardcode configuration values like IP addresses or package versions directly into your manifests. Use Hiera to keep your code "clean" and your data flexible. Use Hiera to keep your code "clean" and your data flexible

These are the high-level descriptions of a machine's function (e.g., role::app_server ). A node should ideally have only one role . 2. Separation of Code and Data (Hiera)

These are the building blocks (e.g., puppetlabs-apache ). They handle the "how" but shouldn't contain business-specific data.

This is the "gold standard" for Puppet abstraction. It separates your technology-specific code from your business logic, making your codebase modular and readable.