Bug #1708
closedPeriodicaly errors "Error 400 on SERVER: Cannot find definition Class on node"
Description
I periodically get following error:
Could not retrieve catalog from remote server: Error 400 on SERVER: Cannot find definition Class on node node002.local
Environment:
Centos 5.8 in xen vm:
Listen 3000
<VirtualHost *:3000>
RackAutoDetect Off
ServerName foreman.lan
DocumentRoot /usr/share/foreman/public
<Directory /usr/share/foreman/public>
Options None
AllowOverride AuthConfig
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/httpd/foreman_error.log
LogLevel warn
CustomLog /var/log/httpd/foreman_access.log combined
ServerSignature On
</VirtualHost>
Puppet on the other VM on nginx nginx-1.0.11 with p rubygem-passenger-3.0.11
server {
listen 8140;
passenger_enabled on;
passenger_min_instances 5;
ssl on;
ssl_session_timeout 5m;
ssl_certificate /var/lib/puppet/ssl/certs/puppet001.lan.pem;
ssl_certificate_key /var/lib/puppet/ssl/private_keys/puppet001.lan.pem;
ssl_client_certificate /var/lib/puppet/ssl/ca/ca_crt.pem;
- choose any ciphers
ssl_ciphers SSLv2:-LOW:-EXPORT:RC4+RSA;
- allow authenticated and client without certs
ssl_verify_client optional;
- obey to the Puppet CRL
ssl_crl /var/lib/puppet/ssl/ca/ca_crl.pem;
client_max_body_size 5M;
client_header_buffer_size 8k;
large_client_header_buffers 8 32k;
types {}
default_type application/x-raw;
passenger_set_cgi_param HTTP_X_CLIENT_DN $ssl_client_s_dn;
passenger_set_cgi_param HTTP_X_CLIENT_VERIFY $ssl_client_verify;
root /etc/puppet/rack/public;
passenger_base_uri /;
error_log /var/log/nginx/puppet-error_log info;
access_log /var/log/nginx/puppet-access_log main;
}
puppet master conf:
[main]
# The Puppet log directory.
# The default value is '$vardir/log'.
logdir = /var/log/puppet
- Where Puppet PID files are kept.
- The default value is '$vardir/run'.
rundir = /var/run/puppet
- Where SSL certificates are kept.
- The default value is '$confdir/ssl'.
ssldir = $vardir/ssl
listen = true
[master] [15/1050]
ssl_client_header = HTTP_X_CLIENT_DN
ssl_client_verify_header = HTTP_X_CLIENT_VERIFY
keylength = 32768
certname = puppet001.qs.mc
reporturl = http://foreman.lan:3000/reports
storeconfigs = true
dbadapter = mysql
dbuser = puppet
dbpassword = l9erj4bdf_qIo
dbserver = mgmt001.qs.mc
pluginsync = true
factpath = /var/lib/puppet/facts
- templatedir = /etc/puppet/manifests/templates
syslogfacility = local6external_nodes = /etc/puppet/node.rb
node_terminus = execrrddir=/var/lib/puppet/rrd
rrdinterval=$runinterval
rrdgraph=true
reports=log, foreman
[agent]
environment = staging
report = true
classfile = $vardir/classes.txt
localconfig = $vardir/localconfig
pluginsync = true
server = puppet001.qs.mc
runinterval = 600
pluginsignore = .svn
[test]
modulepath = /etc/puppet/modules/current/1.0.6
manifest = /etc/puppet/environments/test/site.pp
[dev]
modulepath = /etc/puppet/environments/dev/modules
manifest = /etc/puppet/environments/dev/site.pp
[staging]
modulepath = /etc/puppet/modules/current/1.0.6
manifest = /etc/puppet/environments/statging/site.pp
[production]
modulepath = /etc/puppet/modules/current/1.0.6
manifest = /etc/puppet/environments/production/site.pp