Tuning
Before moving into horizontal scaling of services, we should optimize the workload we have. The best horizontal scaling is scaling you don't need to do. Don't build more puppet component nodes until you can't support your workload with a single large monolithic instance. Adding more resources to Puppet allows it to serve more agents. There is no hard and fast rule on how many agents can be served by a monolithic Puppet Master, even with additional compile masters. The size of Puppet catalogs differs for every organization and is the primary unknown variable for most organizations.
Note
If you just need some simple settings to get started, Puppet keeps a list of standard recommended settings for small monolithic masters and monolithic masters with additional compile masters at: https://puppet.com/docs/pe/latest/tuning_monolithic.html.
Puppetserver tuning
The Puppetserver generates catalogs for each of our agents, using the code placed in our environments and served via JRubies. We'll...