Master - Satellite sync not working

My Slave is configured to connect to master, that connection is established

[2021-01-12 23:36:44 +0100] information/ApiListener: Sending replay log for endpoint ‘myhost’ in zone ‘master’.
[2021-01-12 23:36:44 +0100] information/ApiListener: Finished sending replay log for endpoint ‘myhost’ in zone ‘master’.
[2021-01-12 23:36:44 +0100] information/ApiListener: Finished syncing endpoint ‘myhost’ in zone ‘master’.
[2021-01-12 23:36:44 +0100] information/ApiListener: Applying config update from endpoint ‘myhost’ of zone ‘master’.

But I don’t see any Host in the Icinga on the satellite, there is no config in /var/lib/api/…

Only on Master I see that notices:

[2021-01-12 23:36:44 +0100] information/ApiListener: Sending replay log for endpoint ‘myhost’ in zone ‘master’.
[2021-01-12 23:36:44 +0100] information/ApiListener: Finished sending replay log for endpoint ‘myhost’ in zone ‘master’.
[2021-01-12 23:36:44 +0100] information/ApiListener: Finished syncing endpoint ‘myhost’ in zone ‘master’.
[2021-01-12 23:36:44 +0100] information/ApiListener: Applying config update from endpoint ‘myhost’ of zone ‘master’.

The master cannot reach the satellite - only satellite could reach master. That is configured in the endpoints (and should be working else it wouldn’t connect)

What do I do wrong?

Hi @ChaotY2k,

does the satellite host accept configuration? If yes, what does the zone and endpoint config on both master and satellite look like?

Kind regards
ritzgu

on the satellite:

object Endpoint "myhost" {
        host = "myhost"
        port = "5665"
}

object Zone "master" {
        endpoints = [ "myhost" ]
}

object Endpoint "kvaugstadtv01" {
}

object Zone "kvaugstadtv01" {
        endpoints = [ "kvaugstadtv01" ]
        parent = "master"
}

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

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

and on the master:

object Endpoint "myhost" {
}

object Zone "master" {
        endpoints = [ "myhost" ]
}

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

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


object Endpoint "kvaugstadtv01" {
        log_duration = 0
}

object Endpoint "IUK-Server" {
}

object Zone "extslaves" {
}

object Zone "haunstetten" {
        endpoints = [ "IUK-Server" ]
        parent = "master"
}

object Zone "kvaugstadtv01" {
        endpoints = [ "kvaugstadtv01" ]
        parent = "master"
}

Hi,

so ‘myhost’ is your master host and the other two endpoints are the satellite/agents hosts which actively connect to the master? Is accept_config in /etc/icinga2/features-enabled/api.conf set to true on the satellite hosts?

yes the “myhost” is original a reachable fqdn and 1:1 replaced to “myhost”.
The satellites need to connect to the master yes.

yes… thats enabled:

object ApiListener "api" {
  accept_config = true
  accept_commands = true
}

let me say, that both satellites are not downloading the config.

I thin, normally i should be able to find the local synched config in /var/lib/icinga/api… ?

I am so stupid…
or so tired :wink:

the directory of /etc/icinga2/zones.d/ was not matching the zone name :frowning:

2 Likes

I was just about to ask you that. Glad you solved it. :slight_smile: