Disabling Puppet

1,993 views
Skip to first unread message

Douglas Garstang

unread,
Oct 21, 2010, 5:30:55 PM10/21/10
to Puppet Users
Having some issues disabling puppet. I want to use scripts to update RPM's, and obviously you need to quiesce puppet first.

The pid file directory is empty:
[pax] app01 ~:# ls -l /var/run/puppet/
total 0

Puppet is stopped:
[pax] app01 ~:# service puppet status
puppetd is stopped

Really really stopped:
[pax] app01 ~:# ps -ef | grep puppet
root     13079  7958  0 21:27 pts/0    00:00:00 grep puppet

So, I start puppet:
[pax] app01 ~:# service puppet start
Starting puppet:                                           [  OK  ]

The pid file exists, and it's pid matches the running puppet:
[pax] app01 ~:# cat /var/run/puppet/agent.pid 
13612

[pax] app01 ~:# ps -ef | grep puppet
root     13612     1 22 21:28 ?        00:00:08 /usr/bin/ruby /usr/sbin/puppetd
root     13978  7958  0 21:28 pts/0    00:00:00 grep puppet

And, then I try and disable puppet:

[pax] app01 ~:# puppetd disable
Could not prepare for execution: Could not create PID file: /var/run/puppet/agent.pid

What's up with that?

This is puppet 2.6.1.

Doug.

Denmat

unread,
Oct 21, 2010, 5:38:17 PM10/21/10
to puppet...@googlegroups.com
Depending on your distro, you might find your package has your pids defined in different directories to your puppet.conf.

The RPM packages had that problem. Check your init script against your puppet.conf
--
You received this message because you are subscribed to the Google Groups "Puppet Users" group.
To post to this group, send email to puppet...@googlegroups.com.
To unsubscribe from this group, send email to puppet-users...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.

Douglas Garstang

unread,
Oct 21, 2010, 5:40:30 PM10/21/10
to puppet...@googlegroups.com
The startup script set the pid file to /var/run/puppet/agent.pid, as the error messages below indicate.

Doug.
--
Regards,

Douglas Garstang
http://www.linkedin.com/in/garstang
Email: doug.g...@gmail.com
Cell: +1-805-340-5627

Patrick

unread,
Oct 21, 2010, 5:48:27 PM10/21/10
to puppet...@googlegroups.com

If you are going this far, why not use "service puppet stop"? That sounds safer to me.

Douglas Garstang

unread,
Oct 21, 2010, 5:56:52 PM10/21/10
to puppet...@googlegroups.com
Because.... puppet might be in the middle of a run when you stop it, and does anyone know what the worse case scenario is there?

Doug.
 

Russell Jackson

unread,
Oct 21, 2010, 5:55:02 PM10/21/10
to puppet...@googlegroups.com

I believe puppet finishes the current catalog run when it receives a
SIGTERM.

--
Russell A Jackson <r...@csub.edu>
Network Analyst
California State University, Bakersfield

Douglas Garstang

unread,
Oct 21, 2010, 6:16:01 PM10/21/10
to puppet...@googlegroups.com
It doesn't look like that's the case.

Oct 21 22:14:03 s_...@app02.pax.livegamer.com puppet-agent[26665]: Starting Puppet client version 2.6.1
Oct 21 22:14:05 s_...@app02.pax.livegamer.com puppet-agent[26665]: Caught TERM; calling stop
Oct 21 22:14:05 s_...@app02.pax.livegamer.com puppet-agent[26665]: Could not retrieve catalog from remote server: Cannot unlisten -- not currently listening.
Oct 21 22:14:05 s_...@app02.pax.livegamer.com puppet-agent[26665]: Not using cache on failed catalog
Oct 21 22:14:05 s_...@app02.pax.livegamer.com puppet-agent[26665]: Could not retrieve catalog; skipping run

It certainly didn't finish the run. A run that goes to completion always prints my yum clean messages:

Oct 21 22:15:21 s_...@app02.pax.livegamer.com puppet-agent[27410]: Starting Puppet client version 2.6.1
Oct 21 22:15:33 s_...@app02.pax.livegamer.com puppet-agent[27410]: (/Stage[pre_yum]/Yum::Client/Exec[yum-clean-all]/returns) executed successfully
Oct 21 22:15:45 s_...@app02.pax.livegamer.com puppet-agent[27410]: Finished catalog run in 17.75 seconds

Doug.

Nigel Kersten

unread,
Oct 21, 2010, 6:45:04 PM10/21/10
to puppet...@googlegroups.com
On Thu, Oct 21, 2010 at 2:30 PM, Douglas Garstang <doug.g...@gmail.com> wrote:
Having some issues disabling puppet. I want to use scripts to update RPM's, and obviously you need to quiesce puppet first.

It does look like you may have found a bug around disabling (be great to see a bug report once you've nailed it down in this thread) but is it possible you can achieve what you want with a pre-run hook Douglas?
 

The pid file directory is empty:
[pax] app01 ~:# ls -l /var/run/puppet/
total 0

Puppet is stopped:
[pax] app01 ~:# service puppet status
puppetd is stopped

Really really stopped:
[pax] app01 ~:# ps -ef | grep puppet
root     13079  7958  0 21:27 pts/0    00:00:00 grep puppet

So, I start puppet:
[pax] app01 ~:# service puppet start
Starting puppet:                                           [  OK  ]

The pid file exists, and it's pid matches the running puppet:
[pax] app01 ~:# cat /var/run/puppet/agent.pid 
13612

[pax] app01 ~:# ps -ef | grep puppet
root     13612     1 22 21:28 ?        00:00:08 /usr/bin/ruby /usr/sbin/puppetd
root     13978  7958  0 21:28 pts/0    00:00:00 grep puppet

And, then I try and disable puppet:

[pax] app01 ~:# puppetd disable
Could not prepare for execution: Could not create PID file: /var/run/puppet/agent.pid

What's up with that?

This is puppet 2.6.1.

Doug.

R.I.Pienaar

unread,
Oct 21, 2010, 6:46:55 PM10/21/10
to puppet...@googlegroups.com

----- "Nigel Kersten" <ni...@puppetlabs.com> wrote:

> On Thu, Oct 21, 2010 at 2:30 PM, Douglas Garstang <
> doug.g...@gmail.com > wrote:
>
>
>
> Having some issues disabling puppet. I want to use scripts to update
> RPM's, and obviously you need to quiesce puppet first.
>
>
> It does look like you may have found a bug around disabling (be great
> to see a bug report once you've nailed it down in this thread) but is
> it possible you can achieve what you want with a pre-run hook Douglas?


Related bug http://projects.puppetlabs.com/issues/3757

--
R.I.Pienaar

Brice Figureau

unread,
Oct 22, 2010, 5:04:59 AM10/22/10
to puppet...@googlegroups.com
On Thu, 2010-10-21 at 14:30 -0700, Douglas Garstang wrote:
> Having some issues disabling puppet. I want to use scripts to update
> RPM's, and obviously you need to quiesce puppet first.
>
> [snip]

>
> [pax] app01 ~:# puppetd disable
> Could not prepare for execution: Could not create PID
> file: /var/run/puppet/agent.pid

Shouldn't that be:
puppetd --disable

instead of
puppetd disable

(notice the missing double dash)

--
Brice Figureau
My Blog: http://www.masterzen.fr/

Reply all
Reply to author
Forward
0 new messages