Hi Toni, this is an interesting report -- can you please run a client against the server with profiling enabled and post the output from the master?
Instructions are here: http://docs.puppetlabs.com/pe/latest/trouble_puppet.html#improving-profiling-and-debugging-of-slow-catalog-compilations On Thursday, April 17, 2014 2:23:24 AM UTC-7, Antoine Cotten wrote: > > Dear Puppet Users community, I would like to report an issue I experience > since the first release of Puppet 3.5, and possibly get some input from > people who face the same problem (if any). > > > I run a Puppet environment in which all 48 nodes run CentOS 6.5. I have > been using config file-based environments so far without any trouble. When > Puppet 3.5.0 was officially released I decided to give give it a try, along > with the new Directory Environments feature. I disabled my old-style > environment config while making sure my directory tree was correctly set, > as described in the "Directory Environments" documentation > page<http://docs.puppetlabs.com/puppet/latest/reference/environments.html> > . > > The problem shows up immediately after I restart httpd: Passenger starts > spawning more and more processes which all consume 25% of my machine CPU, > reaching a load average of 10+ in less than a minute as soon as the first > node requests a catalog. This makes the master unusable, it takes between > 200 and 300sec to compile any catalog. > > > What I have tried: > > 1. Switching back from Passenger to WEBrick: same performance issue > 2. Disabling the puppet service on all nodes, and triggering *one*single > manual Puppet run on a random node: same > performance issue > 3. Disabling my external node classifier (Foreman): same performance > issue > 4. Upgrading to Puppet 3.5.1: same performance issue > 5. Switching back to config-based environments and re-enabling all > nodes: no issue, my master behaves normally and the load-average > remains under 0.25 constantly > > As you might have noticed, this is definitely not a sizing issue. My > master has 2GB of RAM and 2 allocated vCPU, but the Puppet master rack > process starts consuming all resources as soon as I re-enable Directory > Environments. > > When I want to use Directory Environments, the only thing I do is > commenting the [development] and [production] sections in my puppet.conf > file, and adding this to the [main] section: environmentpath = > $confdir/environments > > Let me describe my configuration: > > *-----------------puppet.conf--------------* > [main] > logdir = /var/log/puppet. > rundir = /var/run/puppet > ssldir = $vardir/ssl > privatekeydir = $ssldir/private_keys { group = service } > hostprivkey = $privatekeydir/$certname.pem { mode = 640 } > autosign = $confdir/autosign.conf { mode = 664 } > > [master] > autosign = $confdir/autosign.conf { mode = 664 } > reports = foreman > external_nodes = /etc/puppet/node.rb > node_terminus = exec > ca = true > ssldir = /var/lib/puppet/ssl > storeconfigs = true > storeconfigs_backend = puppetdb > > [development] > modulepath = > /etc/puppet/environments/development/modules:/usr/share/puppet/modules > manifest = /etc/puppet/environments/development/manifests/site.pp > config_version = > [production] > modulepath = > /etc/puppet/environments/production/modules:/usr/share/puppet/modules > manifest = /etc/puppet/environments/production/manifests/site.pp > config_version = > > *--------------------------------------------------* > > *--------------directory tree--------------*/etc/puppet/environments/ > |-- development > | |-- manifests > | | `-- site.pp > | `-- modules > | |-- activemq > | |-- apache > | |-- apt > | |-- concat > | |-- datacat > | |-- environment > | |-- epel > | |-- erlang > | |-- firewall > | |-- java > | |-- java_ks > | |-- mcollective > | |-- postfix > | |-- profiles > | |-- rabbitmq > | |-- repos > | |-- stdlib > | `-- tomcat > `-- production > |-- manifests > | `-- site.pp > `-- modules > |-- activemq > |-- apache > |-- apt > |-- concat > |-- datacat > |-- environment > |-- epel > |-- erlang > |-- firewall > |-- inifile > |-- java > |-- java_ks > |-- mcollective > |-- mysql > |-- ntp > |-- postfix > |-- postgresql > |-- profiles > |-- puppetdb > |-- rabbitmq > |-- repos > |-- stdlib > |-- tomcat > `-- vsftpd > *--------------------------------------------------* > > > > Can anybody reproduce this it on any platform? Thank you in advance for > your help! > > Toni > -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/ef08c6bc-a201-4a2c-ac72-de8321e7069d%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
