The Holy Java

Building the right thing, building it right, fast

Puppet Troubleshooting: Compiling Catalog, Locating a Cached Catalog

Posted by Jakub Holý on October 17, 2012

Few troubleshooting tips for Puppet.

Where to Find the Cached Catalog On Client

Puppet Agent caches its compiled (text/Ruby) catalog under its $vardir, for example Puppet 0.25.x stores it into /var/lib/puppet/client_yaml/catalog/<hostname>.yaml. It might be useful when troubleshooting.

Compiling Catalog Manually

You can compile the catalog for a particular node manually on the Puppet Master. Ex.:

puppetmasterd --compile > mynode_catalog

The compilation uses locally cached facts, typically in /var/lib/puppet/yaml/facts/<hostname>.yaml .

You can try the catalog manually on the node (though retrieving files via puppet://puppet/… will fail). You will first need delete the leading lines with messages/warnings from the compilation process, if any (such as “[warning] …”):

puppet --noop --apply mynode_catalog

Sorry, the comment form is closed at this time.

%d bloggers like this: