Icinga2 Windows Cluster Checks

Hi everybody.

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.


You can try to is define a new Zone with an endpoint which is the Cluster IP, and assign the check to the node in that specific zone.

Hi, its been a long time and I’ve been busy with other things. Back to the topic:

This is not working for me because:

When I use another endpoint for the cluster check the clients will see that the requested endpoint is not themselves and will fail on the certificate verification at least

Is it possible to have a second instance on the windows host at all? I think the chapter about multiple instances only covers master servers (?).

The installation of the windows agent always replaces the existing icinga2 services (or do I need to register a second instance by myself, like a funny workaround, wich would be ok for me if documented…)

Does someone has any ideas? Thanks!