I updated to 0.22.3-1 from the dlutter repo (CentOS 4.4) and I''m still having trouble adding new nodes as others saw from the previous version, though I believe the error is different now. The procedure I used was: <client> /etc/init.d/puppet once -v <server> /usr/sbin/puppetca --sign nodename <client> /etc/init.d/puppet once -v This used to work for new nodes, now I get: err: Could not call puppetmaster.getconfig: #<NoMethodError: private method `split'' called for nil:NilClass> err: Could not retrieve configuration: private method `split'' called for nil:NilClass err: Cannot connect to server and there is no cached configuration Any idea? Bug filing time? Thanks, Mark
On Mar 30, 2007, at 4:28 PM, Mark D. Nagel wrote:> I updated to 0.22.3-1 from the dlutter repo (CentOS 4.4) and I''m still > having trouble adding new nodes as others saw from the previous > version, > though I believe the error is different now. The procedure I used > was: > > <client> /etc/init.d/puppet once -v > <server> /usr/sbin/puppetca --sign nodename > <client> /etc/init.d/puppet once -v > > This used to work for new nodes, now I get: > > err: Could not call puppetmaster.getconfig: #<NoMethodError: private > method `split'' called for nil:NilClass> > err: Could not retrieve configuration: private method `split'' > called for > nil:NilClass > err: Cannot connect to server and there is no cached configuration > > Any idea? Bug filing time?I''m not getting this error, but you''re right that I''m having trouble with that pattern. I guess file a bug and I''ll see if I can track it down. This kind of thing is painfully difficult to unit test, unfortunately. Can you make sure you run puppetd with --trace, and include a stack trace if you get one? And please note both the client and server should be running in --trace mode, since the error could be coming from either side. -- It is well to remember that the entire universe, with one trifling exception, is composed of others. --John Andrew Holmes --------------------------------------------------------------------- Luke Kanies | http://reductivelabs.com | http://madstop.com
Luke Kanies wrote:> On Mar 30, 2007, at 4:28 PM, Mark D. Nagel wrote: > > >> I updated to 0.22.3-1 from the dlutter repo (CentOS 4.4) and I''m still >> having trouble adding new nodes as others saw from the previous >> version, >> though I believe the error is different now. The procedure I used >> was: >> >> <client> /etc/init.d/puppet once -v >> <server> /usr/sbin/puppetca --sign nodename >> <client> /etc/init.d/puppet once -v >> >> This used to work for new nodes, now I get: >> >> err: Could not call puppetmaster.getconfig: #<NoMethodError: private >> method `split'' called for nil:NilClass> >> err: Could not retrieve configuration: private method `split'' >> called for >> nil:NilClass >> err: Cannot connect to server and there is no cached configuration >> >> Any idea? Bug filing time? >> > > I''m not getting this error, but you''re right that I''m having trouble > with that pattern. > > I guess file a bug and I''ll see if I can track it down. This kind of > thing is painfully difficult to unit test, unfortunately. > > Can you make sure you run puppetd with --trace, and include a stack > trace if you get one? And please note both the client and server > should be running in --trace mode, since the error could be coming > from either side. > > >After the initial run/sign operation, the next agent startup gives this output: /etc/init.d/puppet once -v --trace warning: peer certificate won''t be verified in this SSL session. warning: peer certificate won''t be verified in this SSL session. err: Could not call puppetmaster.getconfig: #<NoMethodError: private method `split'' called for nil:NilClass> err: Could not retrieve configuration: private method `split'' called for nil:NilClass /usr/lib/site_ruby/1.8/puppet/network/client/master.rb:609:in `get_remote_config'' /usr/lib/site_ruby/1.8/puppet/network/client/master.rb:554:in `get_actual_config'' /usr/lib/site_ruby/1.8/puppet/network/client/master.rb:553:in `timeout'' /usr/lib/site_ruby/1.8/puppet/network/client/master.rb:553:in `get_actual_config'' /usr/lib/site_ruby/1.8/puppet/network/client/master.rb:204:in `getconfig'' /usr/lib/site_ruby/1.8/puppet/network/client/master.rb:298:in `run'' /usr/lib/site_ruby/1.8/puppet/network/client/master.rb:297:in `thinmark'' /usr/lib/site_ruby/1.8/puppet/util.rb:396:in `measure'' /usr/lib/ruby/1.8/benchmark.rb:342:in `realtime'' /usr/lib/site_ruby/1.8/puppet/util.rb:396:in `thinmark'' /usr/lib/site_ruby/1.8/puppet/network/client/master.rb:299:in `run'' /usr/lib/site_ruby/1.8/puppet/network/client/master.rb:291:in `synchronize'' /usr/lib/site_ruby/1.8/puppet/network/client/master.rb:291:in `run'' /usr/sbin/puppetd:423 err: Cannot connect to server and there is no cached configuration I started puppetmaster with --trace (with the EXTRA_OPTS from /etc/sysconfig/puppetmaster), but it still daemonizes, so not sure that was the right way. I see nothing special in /var/log/messages. If I need to run by hand without daemonization for --trace to work, let me know... Thanks, Mark
On Mar 30, 2007, at 5:30 PM, Mark D. Nagel wrote:> After the initial run/sign operation, the next agent startup gives > this > output: > > /etc/init.d/puppet once -v --trace > warning: peer certificate won''t be verified in this SSL session. > warning: peer certificate won''t be verified in this SSL session. > err: Could not call puppetmaster.getconfig: #<NoMethodError: private > method `split'' called for nil:NilClass> > err: Could not retrieve configuration: private method `split'' > called for > nil:NilClass > /usr/lib/site_ruby/1.8/puppet/network/client/master.rb:609:in > `get_remote_config'' > /usr/lib/site_ruby/1.8/puppet/network/client/master.rb:554:in > `get_actual_config'' > /usr/lib/site_ruby/1.8/puppet/network/client/master.rb:553:in > `timeout'' > /usr/lib/site_ruby/1.8/puppet/network/client/master.rb:553:in > `get_actual_config'' > /usr/lib/site_ruby/1.8/puppet/network/client/master.rb:204:in > `getconfig'' > /usr/lib/site_ruby/1.8/puppet/network/client/master.rb:298:in `run'' > /usr/lib/site_ruby/1.8/puppet/network/client/master.rb:297:in > `thinmark'' > /usr/lib/site_ruby/1.8/puppet/util.rb:396:in `measure'' > /usr/lib/ruby/1.8/benchmark.rb:342:in `realtime'' > /usr/lib/site_ruby/1.8/puppet/util.rb:396:in `thinmark'' > /usr/lib/site_ruby/1.8/puppet/network/client/master.rb:299:in `run'' > /usr/lib/site_ruby/1.8/puppet/network/client/master.rb:291:in > `synchronize'' > /usr/lib/site_ruby/1.8/puppet/network/client/master.rb:291:in `run'' > /usr/sbin/puppetd:423 > err: Cannot connect to server and there is no cached configurationI can only assume this is a problem with the missing certificate, that you''re getting this because the client has not initialized the Net::HTTP object. Does the run after this work?> I started puppetmaster with --trace (with the EXTRA_OPTS from > /etc/sysconfig/puppetmaster), but it still daemonizes, so not sure > that > was the right way. I see nothing special in /var/log/messages. If I > need to run by hand without daemonization for --trace to work, let me > know...Yeah, you need to keep it in the foreground with -v, since --trace just prints to stdout. I found a bug in the certificate initialization code that caused the second run (the one that retrieves the signed cert) to fail, and I''ve fixed it in svn now. -- Normal is getting dressed in clothes that you buy for work and driving through traffic in a car that you are still paying for - in order to get to the job you need to pay for the clothes and the car, and the house you leave vacant all day so you can afford to live in it. -- Ellen DeGeneres --------------------------------------------------------------------- Luke Kanies | http://reductivelabs.com | http://madstop.com