The company's virtualization platform on the host, with the puppet management, but a single puppet has a big bottleneck problem ~ puppetmaster default is the use of Ruby's own Web server Webrick, it is too simple, Unable to meet puppet client hundreds of concurrent performance is bad.
Ruby is an analytic language, and the performance is certainly not very good; so we can't rewrite it in high performance language, but we can do it in some places to optimize performance.
My idea is that the combination of reverse proxy, puppetmaster capacity can be increased by at least several times, equivalent to a large extent, to optimize the puppet processing capacity.
Personal Summary, Puppet is very suitable for each service configuration ~ but not suitable for file transmission, such as you want to send an environment installation package, so that the client installation, which is very egg pain ~
Version of Puppet
Version of Ruby
Version of the system
Version of Nginx
First step
Yum Install-y Rubygem-mongrel
Second Step
Vim/etc/sysconfig/puppetmaster
Add the following content
puppetmaster_ports= (8141 8142 8143 8144 8145)
puppetmaster_extra_opts= "--servertype=mongrel--ssl_client_header=http_x_ssl_subject"