Host and Service checks showing pending status

Hello,

I have configured icinga2 master and satellite server and added a new host via Icinga director. But the host/check is stuck at pending status. I believe the zones and other information are not transferred to satellite. I have checked the api user works from master and satellite. As I am really new to Icinga 2, I am not sure what other things needs to check. Also, checks from master node is working and able to add a new host with master as check source.

Zone:

Endpoint:

Host template:

Host:

  • Director version: 1.8.1
  • Icinga Web 2 version: 2.9.5
  • Icinga 2 version: 2.13.2-1
  • Operating System and version: CentOS Linux release 7.9.2009 (Core)
  • Webserver, PHP versions: Apache 2.4.6, PHP 7.3.29

Thanks in advance!

Hi,

if your host “host1.default.com” is an agent, the option “Icinga2 Agent” must be yes :wink:

Hello,

The problem is the api is not syncing files to the satellite. I have the following configuration in my /etc/icinga2/zones.conf file.

object Zone "global-templates" {
        global = true
}

and in satellite, I have accept_config enabled in the api feature. I have the following zones inside /var/lib/icinga2/api/zones/ directory in master icinga server.

[root@master ~]# tree /var/lib/icinga2/api/zones/
/var/lib/icinga2/api/zones/
|-- bangalore
|   `-- director
|       |-- host_templates.conf
|       `-- hosts.conf
|-- director-global
|   `-- director
|       `-- 001-director-basics.conf
`-- master.icinga.com
    `-- director
        |-- endpoints.conf
        |-- host_templates.conf
        |-- hosts.conf
        `-- zones.conf

6 directories, 7 files
[root@master ~]#

but only director-global zone in satellite:

[root@sat1 ~]# tree /var/lib/icinga2/api/zones/
/var/lib/icinga2/api/zones/
`-- director-global
    `-- director
        `-- 001-director-basics.conf

2 directories, 1 file
[root@sat1 ~]#

“One thing you must not configure inside the Director itself, are master/satellite and global zones. They need to exist on the agent before any config sync happens. Otherwise you have a chicken egg problem.”

1 Like

As I wrote above, turn the option Icinga2 Agent to “yes” at your host " http://host1.default.com/”.

Whithout this, how should your master know that this is an agent? With this setting your host is a normal device. So why should the the director sync a config to a normal device? If the option is set to “yes” the director is doing some magic in the back like generating a endpoint defination, zone definition etc.

1 Like

@rsx @stevie-sy Thank you guys for helping me out. I resolved this issue by deleting the satellite zone created by using the director and created it manually in zones.conf. Thanks a ton!