77 lines
2.3 KiB
ReStructuredText
77 lines
2.3 KiB
ReStructuredText
Puppetmaster At PSI
|
|
===================
|
|
|
|
Procedure
|
|
---------
|
|
|
|
Manual Check Whether Puppetmaster Is Running
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Contemporary, the `puppetmasterd` process often crashes and automatic
|
|
restart fails. Thus it has to be started manually again. Therefore login
|
|
to `pxeserv01`, check whether the process is still running and if not,
|
|
restart `puppetmasterd`.
|
|
|
|
Check whether the `puppetmasterd` is running::
|
|
|
|
[root@pxeserv01 ~]# ps ax | grep puppet
|
|
549 pts/0 S+ 0:00 grep puppet
|
|
6641 ? S 7:53 /bin/bash ./test-and-restart-puppetmaster.sh
|
|
|
|
It's not running.
|
|
|
|
Check the logfile. The logfile is situated on AFS::
|
|
|
|
# tail /afs/psi.ch/service/linux/puppet/var/log/puppetmaster.log
|
|
...
|
|
Mon Jan 26 09:22:27 +0100 2009 Puppet (notice): Compiled configuration for slsnedi1.psi.ch in 0.09 seconds
|
|
Mon Jan 26 09:24:55 +0100 2009 Puppet (notice): Caught TERM; shutting down
|
|
Mon Jan 26 09:24:55 +0100 2009 Puppet (notice): Shutting down
|
|
Mon Jan 26 09:24:55 +0100 2009 Puppet (err): Could not remove PID file /var/run/puppet/puppetmasterd.pid
|
|
Mon Jan 26 09:25:01 +0100 2009 Puppet (err): Could not create PID file: /var/run/puppet/puppetmasterd.pid
|
|
|
|
|
|
In this case remove `/var/run/puppet/puppetmasterd.pid` and restart the server::
|
|
|
|
# rm /var/run/puppet/puppetmasterd.pid
|
|
# /etc/init.d/puppetmaster restart
|
|
|
|
|
|
Check again whether the `puppetmasterd` is running::
|
|
|
|
# [root@pxeserv01 ~]# ps ax | grep puppet
|
|
549 pts/0 S+ 0:00 grep puppet
|
|
6641 ? S 7:53 /bin/bash ./test-and-restart-puppetmaster.sh
|
|
31599 ? Ssl 0:03 /usr/bin/ruby /usr/sbin/puppetmasterd \
|
|
--logdest=/afs/psi.ch/service/linux/puppet/var/log/puppetmaster.log
|
|
|
|
|
|
Finally, test it on a client::
|
|
|
|
# [root@pc7377 ~]# psi-puppet
|
|
...
|
|
puppetd was running successfully
|
|
|
|
|
|
Automatic Check Whether Puppetmaster Is Running
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
On `pxeserv01` the script `/root/test-and-restart-puppetmaster.sh`
|
|
continuously observes the `puppetmasterd` and should restart it when
|
|
it's hanging.
|
|
|
|
The script is started in the following way::
|
|
|
|
# [root@pxeserv01 etc]# nohup /root/test-and-restart-puppetmaster.sh &
|
|
|
|
|
|
The output is written to:
|
|
|
|
- `$HOME/nohup.out`
|
|
|
|
The logfile.
|
|
|
|
- `/dev/shm/puppetwatch.1`
|
|
|
|
- `/dev/shm/puppetwatch.2`
|