I have same issuer with running puppentmaster and puppted in same host. When I updated ruby to 1.8.7 enterprise It resolve problem for me. Leonid S. Batizhevsky
On Tue, Dec 14, 2010 at 11:24, Chris <iwouldratherbesleeping...@gmail.com> wrote: > Hi > > I recently upgraded my puppet masters (and clients) from 0.24.8 to > 2.6.4 > > Previously, my most busy puppet master would hover around about 0.9 > load average, after the upgrade, its load hovers around 5 > > I am running passenger and mysql based stored configs. > > Checking my running processes, ruby (puppetmasterd) shoots up to 99% > cpu load and stays there for a few seconds before dropping again. > Often there are 4 of these running simultaneously, pegging each core > at 99% cpu. > > It seems that there has been a serious performance regression between > 0.24 and 2.6 for my configuration > > I hop the following can help work out where... > > I ran puppetmasterd through a profiler to find the root cause of this > (http://boojum.homelinux.org/profile.svg). The main problem appears > to be in /usr/lib/ruby/site_ruby/1.8/puppet/parser/ast/resource.rb, in > the evaluate function. > > I added a few timing commands around various sections of that function > to find the following breakdown of times spent inside it, and the two > most intensive calls are > --- > paramobjects = parameters.collect { |param| > param.safeevaluate(scope) > } > --- > > and > --- > resource_titles.flatten.collect { |resource_title| > exceptwrap :type => Puppet::ParseError do > resource = Puppet::Parser::Resource.new( > fully_qualified_type, resource_title, > :parameters => paramobjects, > :file => self.file, > :line => self.line, > :exported => self.exported, > :virtual => virt, > :source => scope.source, > :scope => scope, > :strict => true > ) > > if resource.resource_type.is_a? Puppet::Resource::Type > resource.resource_type.instantiate_resource(scope, resource) > end > scope.compiler.add_resource(scope, resource) > scope.compiler.evaluate_classes([resource_title],scope,false) > if fully_qualified_type == 'class' > resource > end > }.reject { |resource| resource.nil? } > --- > > > Unfortunately, that is about the limit of my current ruby skills. > What else can be looked at to speed 2.6 back up to the performance of > 0.24? > > > > -- > You received this message because you are subscribed to the Google Groups > "Puppet Users" group. > To post to this group, send email to puppet-us...@googlegroups.com. > To unsubscribe from this group, send email to > puppet-users+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/puppet-users?hl=en. > > -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-us...@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.