16 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, on which an up-to-date supported Go version can be installed.
Supported crypto librariesGnuTLS 3.1.18 and newer
OpenSSL 1.0.1, 1.0.2, 1.1.0, 1.1.1, 3.0.x
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
Log data uploadCan be performed during log gathering to free the buffer.Log gathering is stopped when the buffer is full, therefore the BufferSize parameter must be at least MaxLinesPerSecond x 2.
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: