On Dec 22, 2012 11:04 PM, "Michael Stahnke" <[email protected]> wrote:
>
> Puppet 3 has lots of performance improvements.  In many cases it's
> faster than 2.6.x was. Some of those fixes were back-ported to 2.7.20,
> but not all of them could be.
>
> For best performance, try out something in the Puppet 3 series.
>
>
>
> On Wed, Dec 19, 2012 at 8:30 AM, shurik <[email protected]> wrote:
> > Hi
> >
> > We are tried to update puppet master from 2.6.6 to 2.7.18 and saw
similar
> > picture. Catalog
> > compile time took ~60-120 seconds. Before this update compilation took
about
> > ~1-5 second.
> > After upgrade average CPU usage increased from 10-20% up to 20-40%,
during
> > some activity
> > (compilation?) ruby process puppetmasterd take 100% too.
> >
> > All, is there are some magic to solve or this is expected behaviour?
> >
> > Thanks!
> >
> > ---
> > Alexander
> >
> > On Saturday, December 15, 2012 10:23:49 PM UTC+4, treydock wrote:
> >>
> >>
> >>
> >> On Sunday, December 9, 2012 1:41:34 PM UTC-6, treydock wrote:
> >>>
> >>> I am finding that the puppetlabs-apache module is somehow adding 30-60
> >>> seconds onto a host's catalog compile time when the puppetmaster has
no
> >>> other hosts contacting or generating catalogs.  The Puppetmaster is
setup to
> >>> use Puppet-2.7.18 - Apache & Passenger.  RIght now only 2 hosts are
even
> >>> configured to use this new PM, the PM itself and a Foreman host.  With
> >>> neither hosts contacting the PM, and disabling the "include apache"
and
> >>> "require apache::mod::dev" in puppetlabs-passenger, I get "Config
retrieval:
> >>> 2.45".
> >>>
> >>> Catalogs had hostnames replaced, puppetmaster.tld is the CNAME for
Puppet
> >>> master and puppetmaster-host.tld is the actual hostname.
> >>>
> >>> Catalog: http://pastebin.com/V29JmB8J
> >>> # puppet agent --{summarize,test,debug,evaltrace,noop} | perl -pe
> >>> 's/^/localtime().": "/e'
> >>> <snip>
> >>> Sun Dec  9 13:05:35 2012: notice: Finished catalog run in 2.43 seconds
> >>> Sun Dec  9 13:05:35 2012: Changes:
> >>> Sun Dec  9 13:05:35 2012: Events:
> >>> Sun Dec  9 13:05:35 2012:             Total: 1
> >>> Sun Dec  9 13:05:35 2012:              Noop: 1
> >>> Sun Dec  9 13:05:35 2012: Resources:
> >>> Sun Dec  9 13:05:35 2012:       Out of sync: 1
> >>> Sun Dec  9 13:05:35 2012:             Total: 22
> >>> Sun Dec  9 13:05:35 2012:           Skipped: 6
> >>> Sun Dec  9 13:05:35 2012: Time:
> >>> Sun Dec  9 13:05:35 2012:         Resources: 0.00
> >>> Sun Dec  9 13:05:35 2012:        Filebucket: 0.00
> >>> Sun Dec  9 13:05:35 2012:           Package: 0.00
> >>> Sun Dec  9 13:05:35 2012:              File: 0.00
> >>> Sun Dec  9 13:05:35 2012:          Firewall: 0.01
> >>> Sun Dec  9 13:05:35 2012:              Exec: 0.14
> >>> Sun Dec  9 13:05:35 2012:          Last run: 1355079935
> >>> Sun Dec  9 13:05:35 2012:    Config retrieval: 2.45
> >>> Sun Dec  9 13:05:35 2012:             Total: 2.61
> >>> Sun Dec  9 13:05:35 2012: Version:
> >>> Sun Dec  9 13:05:35 2012:            Config: 1355077701
> >>> Sun Dec  9 13:05:35 2012:            Puppet: 2.7.18
> >>>
> >>> Uncommenting "include apache" and "require apache::mod::dev" in
> >>> puppetlabs-passenger about 40 seconds are added to the compile time.
 I went
> >>> through disabled all modules and parameters, and found that enabling
the
> >>> passenger module alone with Apache included caused the huge delay.
> >>>
> >>> Catalog: http://pastebin.com/wwcKgX5b
> >>> # puppet agent --{summarize,test,debug,evaltrace,noop} | perl -pe
> >>> 's/^/localtime().": "/e'
> >>> <snip>
> >>> Sun Dec  9 13:13:08 2012: notice: Finished catalog run in 2.23 seconds
> >>> Sun Dec  9 13:13:08 2012: Changes:
> >>> Sun Dec  9 13:13:08 2012: Events:
> >>> Sun Dec  9 13:13:08 2012:             Total: 4
> >>> Sun Dec  9 13:13:08 2012:              Noop: 4
> >>> Sun Dec  9 13:13:08 2012: Resources:
> >>> Sun Dec  9 13:13:08 2012:       Out of sync: 4
> >>> Sun Dec  9 13:13:08 2012:           Skipped: 6
> >>> Sun Dec  9 13:13:08 2012:             Total: 80
> >>> Sun Dec  9 13:13:08 2012: Time:
> >>> Sun Dec  9 13:13:08 2012:        Filebucket: 0.00
> >>> Sun Dec  9 13:13:08 2012:         Resources: 0.00
> >>> Sun Dec  9 13:13:08 2012:           Package: 0.00
> >>> Sun Dec  9 13:13:08 2012:          Firewall: 0.01
> >>> Sun Dec  9 13:13:08 2012:              File: 0.01
> >>> Sun Dec  9 13:13:08 2012:             A2mod: 0.03
> >>> Sun Dec  9 13:13:08 2012:           Service: 0.07
> >>> Sun Dec  9 13:13:08 2012:              Exec: 0.14
> >>> Sun Dec  9 13:13:08 2012:          Last run: 1355080388
> >>> Sun Dec  9 13:13:08 2012:    Config retrieval: 42.79
> >>> Sun Dec  9 13:13:08 2012:             Total: 43.06
> >>> Sun Dec  9 13:13:08 2012: Version:
> >>> Sun Dec  9 13:13:08 2012:            Config: 1355080261
> >>> Sun Dec  9 13:13:08 2012:            Puppet: 2.7.18
> >>>
> >>>
> >>> The install is via RPM.  I'm using the Fedora SRPMs rebuilt for
CentOS 6.
> >>> The Puppet master has two environments, development and production
with this
> >>> as the puppet.conf
> >>>
> >>> # cat /etc/puppet/puppet.conf
> >>> ---
> >>> [main]
> >>> server                    = puppetmaster.tld
> >>> logdir                    = /var/log/puppet
> >>> vardir                    = /var/lib/puppet
> >>> ssldir                    = /var/lib/puppet/ssl
> >>> rundir                    = /var/run/puppet
> >>> factpath                  = $vardir/lib/facter
> >>> pluginsync                = true
> >>> templatedir               = $confdir/templates
> >>>
> >>>
> >>> [agent]
> >>> report                          = true
> >>> environment                     = production
> >>> preferred_serialization_format  = yaml
> >>>
> >>> [master]
> >>> modulepath                =
> >>> /etc/puppet/environments/$environment/modules:/etc/puppet/modules
> >>> manifest                  = /etc/puppet/manifests/site.pp
> >>> environment               = production
> >>> autosign                  = false
> >>> ssl_client_header         = SSL_CLIENT_S_DN
> >>> ssl_client_verify_header  = SSL_CLIENT_VERIFY
> >>> certname                  = puppetmaster.tld
> >>> dns_alt_names             = puppetmaster.tld,puppetmaster-host.tld
> >>> report                    = true
> >>> reports                   = store
> >>> #reports                   = store, foreman
> >>>
> >>> [production]
> >>> manifest                  = /etc/puppet/manifests/site.pp
> >>>
> >>>
> >>> Has anyone run into this issue with puppetlabs-apache or know why my
> >>> compile times are so long?  I have a Puppet 2.6.17 server (Also
> >>> Apache+Passenger) that has one host, for example, with 524 resources
, and
> >>> only a 21.36 second catalog compile time.
> >>>
> >>> Thanks
> >>> - Trey
> >>
> >>
> >> Continuing to debug this issue it seems the apache::mod::default is the
> >> bulk of the compile time.  I'm curious if this is a symptom of the
module
> >> itself or something with 2.7.x.  I moved this puppet master to the EPEL
> >> 2.6.17 RPMs and now catalogs that previously took 40-60 seconds are
now down
> >> to 1-2 seconds.
> >>
> >> I noticed that during the long compile times this VM's (2 vCPU , 2GB
RAM)
> >> CPU usage is at 100% from a single Ruby process that links to the PM
Rack
> >> process.  My other PM running same exact setup with about 50 managed
hosts
> >> never has had performance issues always running 2.6.17.
> >>
> >> I'd like to move to 2.7.x for functionality of more modern modules but
> >> this PM is for an HPC and I'm already struggling to convince my
predecessors
> >> that Puppetizing the HPC is not going impact performance.  Is there
possibly
> >> a specific version of 2.7.x or maybe even 3.0.x that may address the
> >> performance issues I'm seeing ?
> >>
> >> Thanks
> >> - Trey
> >
> > --
> > You received this message because you are subscribed to the Google
Groups
> > "Puppet Users" group.
> > To view this discussion on the web visit
> > https://groups.google.com/d/msg/puppet-users/-/cWlBauzx5hwJ.
> >
> > To post to this group, send email to [email protected].
> > To unsubscribe from this group, send email to
> > [email protected].
> > 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 [email protected].
> To unsubscribe from this group, send email to
[email protected].
> For more options, visit this group at
http://groups.google.com/group/puppet-users?hl=en.
>

In addition to upgrading to Puppet 3, would any other changes help improve
performance?  I've seen mention of switching to ruby enterprise edition for
example.  We will likely have to disable Puppet automatic runs entirely on
compute nodes and have it only run as a administrative queue job or have it
run as part of every job's pre or post execution, so minimal catalog
compile and run times are critical.

Thanks
- Trey

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.

Reply via email to