I have a host which collects backups for other hosts.
On this backup host I am running checks to validate the backups (e.g. when was the last backup, how big was it etc.).
What options do I have the submit this check results to icinga2 so that the results are associated with the host from which the backup was pulled.
e.g. I have the following hosts:
HOST-A
HOST-B
HOST-C
All of them have icinga2 agent up and running and submitting checks → everything works as expected.
HOST-A is collecting and validating backups from HOST-B and HOST-C
I would like to have a service entry BACKUP on HOST-B and HOST-C which shows the status of the backup that is run and checked on HOST-A.
In the past, with icinga1, I used nsca and a script on HOST-A that was running all the backup checks and submitting it via nsca to the icinga1 server with the proper host&service names associated.
What options do I have with icinga2?
a) centrally configure the checks with icinga2 director so that they are executed on HOST-A, even if the check provides a result for a service on HOST-B
b) have a script on HOST-A that submits the results via icinga API for HOST-B and HOST-C
c) use the HOST-A agent api to submit the results for HOST-B and HOST-C
Which options are possible? Which options am I missing?
Do you have such monitoring scenarios too and how do you solve them?
Thanks.
Thanks @dgoetz for your suggestion. That really sounds like what I am looking for. Unfortunately I couldn’t find the option in the director. Am I looking at the wrong place or is this not configurable via icinga director?
Thanks @shake-spear Unfortunately it looks like “command endpoint” setting is only available on a host-base and not per service. At least in director. So it looks like I will have to find another solution
While there is no UI elements it is possible to set it using the CLI.
icingacli director service set SERVICENAME --command_endpoint ENDPOINT
But this requires the endpoint to exist in the Director, so you need to manually create it instead of using the “agent = yes” mechanismen for the host you want to use as endpoint.
Thanks @dgoetz
hmm… i think than it would be more straightforward for me if I use a locally ingested check result on the backup host, same as I had it before with nsca.
I wasnt sure either as I did not have time to read through your issue. Mainly just posted that so that if was close to or the answer to your issue, you would also have a much more detailed explanation
In the end I wrote a small script that runs my different checks on the local machine and ingests them to the main server via the Icinga API. That why I can target the passive check results for any host & service combination that I need.
Thanks all for helping on that issue.