Special Agent for Clusters?

I’m trying to monitor a small vSphere cluster.

I’ve created three hosts in checkmk for the ESXi hosts, and configured the vsphere special agent (“host”) mode for them. This works great.

I’ve also created a cluster in checkmk, with the three hosts as members. I’ve given it the IP of the vcenter and again configured the vsphere special agent for it, this time in “vcenter” mode.

However, I can’t get this to work: the discovery doesn’t find any services.

It does work when configured for a normal host, instead of a cluster – but the idea was that the vCenter can’t be queried when all its ESXi hosts are down. It’s like the special agent isn’t run for a cluster, even though it has an IP and is set to run only the configured special agents.

What am I doing wrong?

(Using cre 1.6.0p17)

You probably need to configure the “Clustered services” in WATO, i.e. you define which services (as found on the nodes) should instead appear on the cluster. The “legacy” documentation is here: https://checkmk.de/cms_legacy_clusters.html)

Thanks, but that’s not what I’m looking for. That’s how you get services from the nodes to appear on the cluster – but what I want is that the special agent runs with the IP of the cluster itself, not for all the nodes.

I don’t really understand why there’s the option to set an IP for the cluster, if you can only use services from the member nodes anyway?

1 Like

Hmm, I’m not sure, but this could be a limitation of the “cluster” function. From what I understand, the cluster has to have the same datasources configures as its nodes - but doesn’'t use them. An optional separate IP address is probably used for ping checks and could also be used for other active checks.

Perhaps it helps to configure the vSphere Cluster as a normal monitoring host and enter the ESXi hosts as parents.

In my environment, I usually query the vCenter (not the ESXi hosts, not the vSphere cluster) and have it map the information to the hosts via piggyback.

That’s why you only query the vCenter with actual CMK and not every host inside the cluster.
This is then like querying the cluster IP. @martin.schwarz wrote the same for his environment.

Yeah, that’s what I do for now. Thanks to both of you!

I still don’t get why I can set a cluster to “All configured special agents”, when in fact no special agents are executed for clusters at all.

1 Like