New hosts in satellite zones never run checks, stay "pending"

Hello,

I am seeing odd behaviour in a system with a master and two satellites zones, one recently added. Note that the satellite was added by someone else and they used
2.14.2-1 when the master and other satellite were 2.13.2x. I have since brought them all up to 2.14.2-1, update schema on the master, etc.

When I add a new host to a satellite zone, the config makes it to the satellite host, but doesn’t show up when you check using

icinga2 object list --type Host --name hostname

The config is on the satellite in the expected location:

/var/lib/icinga2/api/zones-stage/satellite1/hostname.conf

The host check always stays pending and never runs.

However, if I move the hostname.conf file to the master zone, it works.

I’ve run debug on both the master and satellite, the only thing I see is that the config file is indeed being passed down as expected from the master to the satellite. No related errors or warnings, no sign that the host check is occurring.

Everything else is working normally on the system, existing host checks are running as expected on master and satellites, notifications being sent appropriately.

icinga2 object list -t endpoint

icinga2 object list -t zone

Outputs look as expected.

Not sure where to go next in troubleshooting. Suggestions?

OS Rocky 8.8 Icinga version: r2.14.2-1

Hello @myootnt!

/var/lib/icinga2/api/zones-stage is not the final location. If the config is only there, something went wrong. See the Icinga 2 log.

Best,
A/K

Thanks. Yes, I had a co-worker dig into the logs and they finally found something, the entry was very cryptic and didn’t contain any expected keywords. I saw some other posts you had on the subject, something about specifying the zone of the parent in the dependency. Will try and see if that resolves it.