Horizontal scaling
When a single monolithic master can no longer serve our environment, we split our master into distinct components: console, Puppetserver and PuppetDB. This allows us to serve more clients with a smaller footprint. In an ever growing environment, even this setup may not be able to cover your needs for all agents.
In this section, we'll be discussing the scaling of Puppetserver, PuppetDB and our certificate authority to serve more agents. With concepts of vertical tuning and horizontal scaling, we can serve a very large installation of nodes, up to the tens of thousands of individual servers on a single setup.
Puppetserver
Generally, the first component that is required to scale in any Puppet setup is the Puppetserver. The Puppetserver does the bulk of the work in Puppet, compiling catalogs to agents. In this section, we're going to explore some of the theory behind how many agents a Puppetserver can support, how to create new Puppetservers, and some load balancing strategies...