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
Daemonizationyesby systemd only (yes on Windows)
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, and other monitoring targets - see a full 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
Persistent files for log[] metricsyes (only on Unix)no
Timeout settingsDefined on an agent level only.Plugin timeout can override the timeout defined on an agent level.
Changes user at runtimeyes (Unix-like systems only)no (controlled by systemd)
User-configurable ciphersuitesyesno

See also: