Service checks get executed on the Icinga-server

I’m not sure what I’m doing wrong, but the checks on memory, load and MySQL that I thought would run on the machines I monitor, are actually performed on the Icinga-server itself. So instead of monitoring the memory usage on several machines, I monitor those paramaters on my Icinga server, several times…

I defined a few commands, created service templates with a few sane defaults, imported them in servicedefinitions, which I attached to ServiceSets, which apply to all machines with a specific variable. All those machines appear, with the associated services, but those services check the wrong node.

What am I missing here?

You need to tell your service objects to be executed on the target. This could be achieved by adding

command_endpoint = host.name

to your template or service object(s).

Thanks, that was pretty easy.

I’m using Ansible and this translate to adding “use_agent: true” to the playbook.

Now I only have to find out how to configure the agents on all those machines in bulk and I’m ready to go.