Puppet with Foreman - PuppetDB Reporting Errors
Fixing Missing OS, Environment, and Fact Data in Foreman When Using PuppetDB Recently, I re-introduced PuppetDB into my infrastructure to support the new confdroid_nagios module. Everything worked ...

Source: DEV Community
Fixing Missing OS, Environment, and Fact Data in Foreman When Using PuppetDB Recently, I re-introduced PuppetDB into my infrastructure to support the new confdroid_nagios module. Everything worked as expected on the Puppet side — PuppetDB stored facts, catalogs, and reports correctly. However, when I checked Foreman, something looked wrong. All hosts showed empty fields for basic information such as Operating System, Environment, and many other facts. The core Puppet functionality was fine, but Foreman’s host overview and reporting appeared broken. After some investigation, I found a simple but important configuration mismatch. The Root Cause When Foreman is used as an External Node Classifier (ENC), Puppet needs a specific routing configuration to properly handle facts. This is defined in the file: /etc/puppetlabs/puppet/routes.yaml An older default configuration (still present in some Foreman installations) looked like this: master: facts: terminus: puppetdb cache: yaml This setup wo