Execute a command from another satellite then the client is located on

director

#1

Hey guys,

I have setup a monitoring infrastructure with 1x master-node and 3x Satellite nodes. I have a client, which is beneath satellite1 and the checks are executed from satellite1. What I am trying is, to execute an command from satellite2 but the check is listed under the client, which is beneath satellite1. Is it possible to add a service to this client where the command_endpoint is satellite2? So I do not have to create a seperat host object on satellite2.

Thanks


(Carsten Köbke) #2

From my knowledge Its not possible without creating a second host object.


(Rafael Voss) #3

Have not tried it yet, but maybe this could be possible with the “zone” parameter, as long as the Client knows the zone of the Satellite.

Maybe this Post can help you:


#4

I will check it later, thanks.


#5

Thanks Rafael for the hint, but I didn’t got it working with the icinga director. What I have understood is the command_enpdoint must be set to the satellite where the command should be execute. But in icinga director can’t this option be set. I found this issue on github #745 . Maybe there will be the option in the future. As workaround I have just created a secon object on satellite2.


(Rafael Voss) #6

As far as I remember, you can set the zone and endpoint for each service, by adding a servicetemplate like “satellite-zonename” which only have zone and endpoint configured.


#7

Yes that is true. The thing is I can just select the “cluster zone” and say to “run on agent”. If I set the the cluster to a different satellite then the host object lies on and select “No”. The check will not execute. It stays on “Pending” because the command_endpoint equals “Null”. If I select “Yes” by “run on agent”, the configuration deployment won’t work because the command_endpoint equals “host_name” and the director do not find the host object on this satellite.