I used to use NSClient++ for a long time.
I had a Hyper-V Cluster with multiple nodes and one check that shows disk usage of the cluster shared volumes.
Because it does not make sense to let every cluster member do the same check, I used the Cluster IP for this checks. So my setup was like:
NodeA, NodeB > normal service checks
ClusterIP > CSV checks
For the NSClient Setup that was no Problem.
But now I’m changing everything to the Icinga2 Windows Agent and I wanted to do the same setup here.
The Problem is that NodeA and NodeB have both their own endpoints, but I would need another Endpoint on the same host for this. I thought of a secondary icinga instance that listens only on the ClusterIP.
I know I could set both endpoints to be member of the same Zone buw I dont want to load balance all those checks, only the CSV check, the other checks need to be done for each host.
Does somebody have an idea on how to implement this kind of function or is the second instance the only option?
Please mention: this was only an example, I have a lot of this kind of checks so it would be a great benefit to get them working.