PDA

View Full Version : Monitoring zabbix_agentd


maurizio
11-11-2005, 11:31
Hi all,
I am monitoring my servers with zabbix_agentd installed on the servers, therefore I need to be sure that the zabbix_agentd is running. How can I know wether the zabbix_agentd itself is running and send an alert if it is not?


TIA

Maurizio

James Wells
11-11-2005, 14:43
Greetings,

Zabbix actually has a couple of ways to check this, using the status item, using the version check, and any of the passive checks, and the agent ping.

Simply create an item to check through the agent, then alert if you don't get a response. Status is usually the easiest for this as it is a calculated value that will be 2 if the server loses communication with the agent.

maurizio
11-11-2005, 16:21
Hi James,
I am a bit confused.
The zabbix_agentd supports the items: ping and status.
In the manual the comment for the 'status' key says that this parameter is calculated internally by zabbix_suckerd (or zabbix_server, depending on the version used) while the ping item is given by the agent.

If I understood correctly, the 'status' is checked by zabbix_suckerd (or zabbix_server) by attempting a connection on host_to_be_monitored:10050, right?
If so, a status = 2 means that the zabbix_agentd is not reacheable. This could be due to the fact that the agentd is not running or that the host is not reacheable.This dilemma may be solved by setting a simple icmpping item.

If so, could you show an example of trigger for:
a) host not reacheable
b) zabbix_agentd not running

TIA

Maurizio

P.S.
I don't get the 'ping' key definition for the zabbix_agentd, who is pinging who?

Greetings,

Zabbix actually has a couple of ways to check this, using the status item, using the version check, and any of the passive checks, and the agent ping.

Simply create an item to check through the agent, then alert if you don't get a response. Status is usually the easiest for this as it is a calculated value that will be 2 if the server loses communication with the agent.

James Wells
11-11-2005, 18:08
a) host not reacheable
Host not reachable is usually something like;
{host:icmpping.last(0)}=0
This basically says, if ICMP Ping fails, trigger.

b) zabbix_agentd not running
To get just agent not running, you would do something like;
({host:icmpping.last(0)}=1)&({host:status.last(0)}=2)
This one says, if ICMP Ping works and Zabbix status fails, then trigger. Mind you I prefer to use something closer to the following;
({host:icmpping.last(0)}=1)&({host:status.last(0)}=2&{host:status.prev(0)}=2)
This has the advantage of covering for the occasional high server load by checking status two passes before alerting.

P.S. I don't get the 'ping' key definition for the zabbix_agentd, who is pinging who?
From the way I read the code, this is simply the Zabbix Server pinging the Zabbix Agent instead of pinging the host that the Zabbix Agent runs on. This has the advantage of working through ICMP blocking firewalls, but can give false positives if your Agent's host runs at high load occasionally.