Issue #21404 has been updated by Matthaus Owens.

Jo,
Can you post your puppet.conf on the affected system? The default puppet.conf 
shipping with our redhat packages has the following lines under the main 
section (and main should affect both master and agents)...

<pre>
# Where Puppet PID files are kept.
    # The default value is '$vardir/run'.
    rundir = /var/run/puppet
</pre>

Does your puppet.conf have that?

This still doesn't explain why the behavior changed of course.

----------------------------------------
Bug #21404: puppet cannot manage agent or master after update to puppet 3.2
https://projects.puppetlabs.com/issues/21404#change-93347

* Author: Jo Rhett
* Status: Unreviewed
* Priority: High
* Assignee: 
* Category: 
* Target version: 3.2.3
* Affected Puppet version: 3.2.2
* Keywords: 
* Branch: 
----------------------------------------
When puppet is configured to manage it's own services it fails, due to broken 
init scripts for EL6

<pre>
Notice: /Stage[main]/Puppet::Server/Service[puppetmaster]/ensure: ensure 
changed 'stopped' to 'running'
Info: /Stage[main]/Puppet::Server/Service[puppetmaster]: Unscheduling refresh 
on Service[puppetmaster]
Notice: /Stage[main]/Puppet/Service[puppet]/ensure: ensure changed 'stopped' to 
'running'
Info: /Stage[main]/Puppet/Service[puppet]: Unscheduling refresh on 
Service[puppet]

# service puppetmaster status
puppet dead but subsys locked
# service puppet status
puppet dead but subsys locked
# ps auwx |grep puppet
puppet   10167  0.3  5.6 207052 109260 ?       Ssl  17:52   0:32 /usr/bin/ruby 
/usr/bin/puppet master
root     13385  0.0  3.0 148236 59508 ?        Ss   19:37   0:00 /usr/bin/ruby 
/usr/bin/puppet agent
root     15789  0.0  0.0 103236   832 pts/0    S+   20:08   0:00 grep puppet
</pre>

Looking into the configuration, I found that pidfiles were being stored in the 
vardir, whereas the init scripts expected them in /var/run/puppet
<pre>
# grep pid /etc/init.d/puppet
pidfile=${PIDFILE-/var/run/puppet/agent.pid}
    daemonopts="--pidfile $pidfile"
    pidopts="-p $pidfile"
    killproc $pidopts $puppetd
    [ $RETVAL = 0 ] && rm -f ${lockfile} ${pidfile}
    killproc $pidopts $puppetd -HUP

# grep pid /etc/init.d/puppetmaster 
pidfile=/var/run/puppet/master.pid
    daemonopts="--pidfile $pidfile"
    pidopts="-p $pidfile"
    killproc $pidopts $PUPPETMASTER
    status $pidopts $PUPPETMASTER

# grep pid /var/log/messages 
Jun 22 20:01:34 backup0 puppet-agent[14679]: Could not prepare for execution: 
Could not create PID file: /var/lib/puppet/run/agent.pid
Jun 22 20:04:58 backup0 puppet-master[14918]: Could not run: Could not create 
PID file: /var/lib/puppet-server/run/master.pid

# puppet agent --configprint pidfile
/var/lib/puppet/run/agent.pid

# puppet master --configprint pidfile
/var/lib/puppet/run/master.pid
</pre>

There are no pidfile or rundir statements in my puppet configuration. 
Unfortunately, the only way to make it work is to override the defaults on EL6 
systems

<pre>
puppet.conf:
  [agent]
        pidfile = /var/run/puppet/agent.pid
  [master]
        pidfile = /var/run/puppet/master.pid
</pre>


-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to