Hi all. I’m a long time Nagios user giving Sensu Go a crack and am stuck trying to migrate some of my existing check logic into it.
I’m trying to migrate a simple check_ping
check that runs on our Nagios host that just checks response time and packet loss between it and the remote nodes. I can do this in Nagios by just setting up a service and specifying check_ping
as the command and setting the target to be $HOSTADDRESS$
:
# 'check_ping' command definition
define command{
command_name check_ping
command_line /usr/lib/nagios/plugins/check_ping -H '$HOSTADDRESS$' -w '$ARG1$' -c '$ARG2$'
}
Then I assign this check to hosts and it fills it all out for me. Basically the Nagios host just does ping checks to whatever the $HOSTADDRESS$
(IP or hostname, depending on your config) ends up being for the hosts.
My understanding is that the way to do this in Sensu Go would be to reverse the way the ping goes and instead ping my Sensu backend host, is this correct?
Alternatively is it possible to create checks that run from any agent that isn’t the current one but targets it? For example if I have three systems called agent1, agent2 and agent3 and all of them have the ping check assigned they would then test like this:
- agent2 and agent3 run tests against agent1
- agent1 and agent3 run tests against agent2
- agent1 and agent2 run tests against agent3
But the check would be associated with the actual entity, not a proxy entity. From this thread I think I need to do something with the proxy_requests
param but I don’t understand where to go from there.
Any help would be greatly appreciated! Am really enjoying Sensu Go so far.