Arnau Bria
2009-Jun-09 15:33 UTC
[Puppet Users] err: Connection timeout calling puppetmaster.getconfig: execution expired
Hi all,
My current conf splits 188 clients execution in one hour, and puppet
runs as a cron job. My server (2cpu 2 GB RAM) runs with mongrel (with 8
puppetmasterd) and this conf works fine.
We''d like puppet to run clients all at same time (force a change,
i.e.),
so we''re testing several things. (Previous conf do not support
massive execution).
First and most important, is moving our server to a better host: 4cpus
8GB RAM. We also run mongrel there, but now with 4 puppetmasterd, so
each one has its own cpu.
With first server, we could run up to 40 clients at one time, now,
135. So we''re improving.
The error in the nodes where put did not run is:
err: Connection timeout calling puppetmaster.getconfig: execution expired
err: Could not retrieve catalog: Connection Timeout
warning: Not using cache on failed catalog
**What step of
http://reductivelabs.com/trac/puppet/wiki/PuppetInternals gives this error?
Compiling? It''s not clear for me, I see no transfer action in that
schema. We have no network errors.
so, inorder to avoid this error, our first idea was an increment of
timeout var in both sides, cleint and server:
# How long the client should wait for the configuration to be
retrieved
# before considering it a failure. This can help reduce flapping if too
# many clients contact the server at one time.
# The default value is ''120''.
server:
# puppetmasterd --genconf|grep timeout
configtimeout = 360
client:
# puppetd --genconf|grep timeout
configtimeout = 360
but then we get more errors! only 1 client is able to run its conf.
Does it make sense for anyone?
What other tunning could we test in order to reduce connection timeouts?
server:
# rpm -qa|grep puppet
puppet-0.24.7-4.el5
puppet-server-0.24.7-4.el5
# rpm -qa|grep mongrel
rubygem-mongrel-1.0.1-6.el5
client:
# rpm -qa|grep puppet
puppet-0.24.7-4.el4.x86_64
TIA,
Arnau
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com
To unsubscribe from this group, send email to
puppet-users+unsubscribe@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/puppet-users?hl=en
-~----------~----~----~----~------~----~------~--~---
Arnau Bria
2009-Jun-10 09:10 UTC
[Puppet Users] Re: err: Connection timeout calling puppetmaster.getconfig: execution expired
On Wed, 10 Jun 2009 09:47:26 +0200 David Schmitt wrote: Hi David, [...]> This error means that the client timed out when waiting for the > configuration from the puppetmasterd, marked as "Request to apply the > configuration" in the diagram and "Configuration Transport" in the > text.yep, sorry: Puppet currently converts the Transportable objects to YAML, which it then CGI-escapes and sends over the wire using XMLRPC over HTTPS. [...]> > Does it make sense for anyone? > > Not to me. I''m wondering whether those are the same "getconfig" > errors or do the clients already having a configuration time out on > trying to fetch file resources?IIRC getconf error...> Two things I would recommend: > > 1) Do not start all your clients at once. Look at the fqdn_rand > function[1] or --splay[2]. Even spreading the updates over only a few > minutes might make much of a difference for you.ok, it loses a little the main purpose of test, but going to see how many time takes for all nodes to be reconfigured. 5-10 minutes is our goal.> 2) Upgrade to 0.24.8. If you are using storeconfigs, this is an > absolute must.doing so, but I got some errors just after update... going to open a new thread.> Regards, DavidS > > [1] > http://reductivelabs.com/trac/puppet/wiki/FunctionReference#fqdn-rand > [2] > http://reductivelabs.com/trac/puppet/wiki/ConfigurationReference#configuration-parameter-reference >Many thanks for your reply --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en -~----------~----~----~----~------~----~------~--~---
Arnau Bria
2009-Jun-10 10:55 UTC
[Puppet Users] Re: err: Connection timeout calling puppetmaster.getconfig: execution expired
On Wed, 10 Jun 2009 11:10:25 +0200 Arnau Bria wrote: Hi [...] I''ve upgraded, set splay value to true and testes again (against old server, 2 cpus, 2 GB of RAM and 8 puppetmasterd with mongrel). My test consists of running puppet complet conf and adding a test file (tmp/dummy). I remove the file and launch puppet in all hosts, then I check how many hosts did create dummy file. on a total of 188 nodes it worked in 135 nodes. but i see a strange behave: $ grep " Connection timeout calling puppetmaster.getconfig" *out |wc -l 105 $ grep "Failed to generate additional resources during transaction: Connection Timeout" *out |wc -l 56 so, 161 got errors but did reconfig itself ?¿??¿? again, does it make sense? I was thinking of removing puppet file server and work with something like svn or rsync, so I''d add an exec of svv/rsync and then puppet will run rpm/exec/services/repos... etc... I have 150 files and 1.5MB size in total. before testing this new conf, do you think is it a good idea? TIA, Arnau --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en -~----------~----~----~----~------~----~------~--~---