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 around your Puppet Masters. We'll be viewing this from the lens of open source and Enterprise.