Why this module - ghomem/legacy_puppet_infrastructure GitHub Wiki
The puppet_infrastructure module is a front end for many typical Linux infrastructure use cases. It allows you to build a reliable, low-cost, provider independent infrastructure based on Linux VMs or even physical servers.
We started working on this module because we needed, on one hand, to deal with different configurations that have in common being Linux and needing to be secure and, on the other hand, to deal with multiple instances of each system type.
The module solves problems like providing a baseline secure configuration, centralizing management of users, automating backups, commoditizing local SMTP with Postfix, commoditizing NGINX reverse proxy and static server configurations, managing firewalls and whitelists without causing disasters, among other things.
Some use cases are implemented directly in puppet_infrastructure resources whereas some others rely on Puppetforge modules. Sometimes features from the Puppetforge modules are exposed via wrapper classes that provide a simpler and more opinionated interface.
You should use this module if you want to build infrastructure that is reliable, reproducible, secure, cost-effective and long term supported and that allows for efficient troubleshooting using tools like netcat, netstat, tcpdump, top, btop and many more. No cloud-native solution will give you 12 years of stability like Ubuntu or RHEL.
The trade-off is learning the basics of Puppet.
Check the Feature list for more details.