Master-satellite configuration


we have a monitoring system composed by two zones, one Zone has an Endpoint with master role and the other Zone has an Endpoint with satellite role. The master is in a public network, the satellite is in a private network, so after the setup the satellite is shown as down on the dashboard, but actually the reason is that the master can’t communicate with it.
We would like the satellite to perform its checks individually and then notify the master.

We followed the documentation and the setup was made with icinga2 node wizard. We disabled “accept config from parent node?” and “accept commands from parent node?” during the setup of the satellite.
We looked at the following question but it didn’t work: Monitoring a non reachable host
We followed this guide too

On the satellite we have Icinga2 version: r2.11.3-1
On the master we have Icinga2 version: r2.11.3-1

Please take a look at Unable to fetch configuration on satellite from master

I think that should explain how you ensure that the two machien can
communicate, no matter which one is able to find the other.

This has nothing to do with “accept config from parent node” or “accept
commands from parent node”. You should enable those if you want this to be
possible (which you generally do).



Thank you very much for your help.

I tried to follow your answer on the post you shared, but I’m afraid I didn’t fully understand it. The reason could be linked to another doubt that I have: what’s the difference between the directory zones.d and the file zones.conf? Should I declare all Zone and Endpoint objects in zones.conf or should I create a new directory for each Zone in zones.d and then declare the Endpoint objects in there?
I have Zone and Endpoint objects in the file zones.conf and I tried to declare the “host” attribute on the Endpoints as you said in the other post, but it doesn’t work.

Could you please explain me the difference between zones.d and zones.conf, so I can follow your instructions correctly?

Yes. And create a new directory for each Zone in zones.d and then declare the host objects in there.

Remember, you can use the host option in the definition of Endpoint objects to determine the which host actively tries to connect: If you set host in the Endpoint object defining the master in the configuration of the satellite, the satellite will actively try to connect to the master. On your master host, just define the Endpoint representing the satellite without host.