3

Official docs here.

Passive checks = Zabbix server polling

Active checks = Zabbix client (agent) pushing

What is the advantage of passive checks? It requires an additional port on the clients to be open.

ivanleoncz
  • 1,433
  • 4
  • 18
  • 32
kev
  • 261
  • 1
  • 5
  • 13

3 Answers3

5

There are three basic types of checks in Zabbix:

Active checks are pushed from systems with the Zabbix agent installed. These checks do not require that any ports be open on the client (monitored) system (unless you want to be able to issue remote commands). However, there does need to be a port open on the Zabbix server for the agent(s) to connect to which is accessible to the agent(s). While active checks are quite scalable on a properly configured Zabbix server they do create more network traffic than passive checks as the agent must contact the server and get a list of parameters to return/checks to complete before returning results.

Passive checks are the Zabbix server polling the Zabbix agent on a system. These checks require that a port be open on the client (monitored) system which the Zabbix server can reach but there do not need to be any open ports on the Zabbix server for the agent(s). This could be useful if, for example, there is a NAT/PAT device or stateful firewall in in front of the Zabbix server and it is not possible to open a port on the Zabbix server for the agents to connect to. In addition, the Zabbix server has complete control over how frequently the client system is polled and which parameters are polled.

Simple checks do not require an agent be installed. Some clients cannot have the agent installed for a variety of reasons or do not have an agent which will run on whatever OS they are running. As one example think about simple Internet of Things (IoT) devices. You may want to check that they are up but do not have the ability to install an agent. Similarly, you may want to ping test an upstream gateway at your ISP which you cannot install an agent on, a cash register/POS system, etc.

Ben Franske
  • 511
  • 2
  • 10
  • 1
    This seems to be wrong. Passive checks require Zabbix agent to be installed - what you had in mind were probably "simple checks" in Zabbix. – Richlv Sep 26 '17 at 08:12
  • Mea culpa, Richlv is correct. I was too hasty in reading your question. I will update my answer with more details shortly. – Ben Franske Sep 26 '17 at 15:19
1

Passive checks require additional port open on agents, but active checks require one to be open on the server. A few benefits of passive checks over active:

  • active checks are serial (one thread per server only), while passive checks are parallel, to some extent
  • passive checks support flexible intervals/scheduling, while active checks do not
  • remote commands will work only if passive checks work (although they do not require using passive checks)
Richlv
  • 2,334
  • 1
  • 13
  • 17
0

Active checks are recommended and scale better. Active metrics even survive at the time of zabbix server downtime, provided that you have a zabbix proxy between.

BUT

There are use cases where you SHOULD use passive checks and you CAN'T use active checks.

FOR EXAMPLE

If you are using virtual IP address that can migrate from one node to another and you want to monitor if service is externally available (by simple tcp connect) then you should create host with 'virtual IP' and create PASSIVE check that connects to this IP. Exactly the same way you may monitor Virtual IP migration, just add 'hostname' to passively monitored metric for host, associated with 'virtual IP'and if hostname changes - you are migrated.

Nopius
  • 359
  • 2
  • 5