Automatically starting and purging Puppet processes

On the systems we configure and maintain through Puppet, we sometimes see processes running for an excessive amount of time, causing the actual synchronization of system configuration to stall. To mitigate this, we have developed a script called checkpuppet.

The checkpuppet script obtains the process IDs from both and puppetdlock. If the lock file is older than one hour, it kills the associated process. In addition, it scans the global list of processes to kill any Puppet instances not corresponding to the process IDs. Finally, if needed, it restarts the Puppet daemon in case it was not running. Summarized, it acts as a safety belt to reduce the likelihood of Puppet getting stuck, causing the system configuration to get out of sync.

As with the other projects we announced recently on this weblog, we’ve published the code on GitHub. Also, pre-packaged versions for Debian are available from our Debian mirror.


Leave a Reply

Kumina helps companies innovate with the power of open source software. As specialists in managed IT operations since 2007, our mission is simple: building and managing the perfectly tailored technical infrastructures that allow our clients to thrive.

With fully managed solutions, we help our customers unlock the full potential of the cloud and Kubernetes. Our team also supports organisations with IT consulting and Kubernetes training courses. Learn more about our services or get in touch, we would love to hear about your business and projects.