18 Agent vs agent 2 comparison

This section describes the differences between the Zabbix agent and the Zabbix agent 2.

ParameterZabbix agentZabbix agent 2
Programming languageCGo with some parts in C
Daemonizationyesno (yes on Windows since 5.0.4)
Supported extensionsCustom loadable modules in C.Custom plugins in Go.
Requirements
Supported platformsLinux, IBM AIX, FreeBSD, NetBSD, OpenBSD, HP-UX, Mac OS X, Solaris: 9, 10, 11, Windows: all desktop and server versions since XPLinux, Windows: all desktop and server versions since XP.
Supported crypto librariesGnuTLS 3.1.18 and newer
OpenSSL 1.0.1, 1.0.2, 1.1.0, 1.1.1
LibreSSL - tested with versions 2.7.4, 2.8.2 (certain limitations apply, see the Encryption page for details).
Linux: OpenSSL 1.0.1 and later is supported since Zabbix 4.4.8.
MS Windows: OpenSSL 1.1.1 or later.
The OpenSSL library must have PSK support enabled. LibreSSL is not supported.
Monitoring processes
ProcessesA separate active check process for each server/proxy record.Single process with automatically created threads.
The maximum number of threads is determined by the GOMAXPROCS environment variable.
MetricsUNIX: see a list of supported items.

Windows: see a list of additional Windows-specific items.
UNIX: All metrics supported by Zabbix agent.
Additionally, the agent 2 provides Zabbix-native monitoring solution for: Docker, Memcached, MySQL, PostgreSQL, Redis, systemd (see a list of agent 2 specific items).

Windows: All metrics supported by Zabbix agent, and also net.tcp.service* checks of HTTPS, LDAP.
Additionally, the agent 2 provides Zabbix-native monitoring solution for: PostgreSQL, Redis.
ConcurrencyActive checks for single server are executed sequentially.Checks from different plugins or multiple checks within one plugin can be executed concurrently.
Scheduled/flexible intervalsSupported for passive checks only.Supported for passive and active checks.
Third party trapsnoyes
Additional features
Persistent storagenoyes
Timeout settingsDefined on an agent level only.Plugin timeout can override the timeout defined on an agent level.
Drop user privilegesyes (Unix-like systems only)no
User-configurable ciphersuitesyesno

See also: