New Zabbix 7.0 LTS is almost here

Tomáš Heřmánek
12 min

Zabbix version 7.0 LTS is almost here

New version of Zabbix 7.0 LTS brings a number of interesting innovations.

Contact us for a free consult CONTACT US FOR A CONSULT AND FREE DEMO
We are getting ready new thematic webinars for you as we speak

what’s new in zabbix 7.0 lts (coming soon)

upgrade to the latest version 7.0 (coming soon)

Training courses for the latest LTS version (Zabbix 7.0) will be available shortly after its’ release MORE INFORMATION ABOUT TRAINING COURSES
You can also click-through our DEMO Zabbix. Login confirmation can be done by clicking „sign in as guest„ button SIGN IN TO THE ZABBIX DEMO

New widgets

Gauge widget – This widget allows you to display the measured value on a scale with accurate visualization, similar to a clock. This enables quick and easy evaluation of the status of monitored metrics or indicators. The Gauge widget is ideal for displaying measurements such as temperature, humidity, data transmission rate or any other numeric indicator. A wide range of configuration options are available.

Pie widget – This widget in Zabbix offers various options for visualizing data using two basic types of pie charts: Pie and Donut.

  • The Pie chart is a classic representation of the proportion of individual elements within a specific dataset. Each element is depicted as a slice of the pie, with the size of the slice relative to its value or percentage compared to the other elements.
  • The Donut chart is a variation of the pie chart that adds empty space in the center, creating a “donut” effect. This visualization allows for displaying additional information or labels in the center of the chart, which can provide further details or context.

With these two visualizations, Zabbix users can easily visualize data using pie charts and gain an overview of the proportion of individual elements within their dataset. This way, they can quickly identify trends, distributions, or relationships among the data.

Honeycomb widget – This additional, all-new widget allows you to create honeycomb-style hexagonal information blocks displaying statistics and information on both sides in one unit. The widget can filter by hosts, host groups, hosts tags, item tags and item patterns. Each cell contains the name of the item or host, and its color changes depending on a specific value.

Here you can see the configuration options which are available for this new widget:

Top Triggers widget – In this widget, you can see the triggers that have most frequently changed their state during the evaluation period, sorted by the number of state changes. You can also filter them by hosts, host groups, tags, problem name and severity. Additionally, there is an option to set the number of displayed rows.

Top triggers widget in Zabbix

Previously, only the following widgets could be created in templates: Clock, Chart (classic), Chart Prototype, Item Value, Plain Text, URL.

Expanded widget availability in templates

Templates now support creation of all widgets.

Native two-factor authentication (MFA) capability has been added to Zabbix

Now, you have the option to utilize two-factor authentication (MFA) with either TOTP or DUO Universal Prompt, applicable variably across different user groups.

  • TOTP stands for ‘Time-based One-Time Password’ and is a time-based one-time password mechanism. This MFA mechanism generates a temporary code based on the current time, enhancing security as the password is valid only for a limited duration and cannot be reused.
  • TOTP is typically generated through mobile apps like Google Authenticator or Authy. Users display the current code from the app and enter it alongside with their regular password during login. Each code is valid only for a short period, usually from 30 seconds to a few minutes, thus increasing authentication security.
  • DUO Universal Prompt, from Duo Security, enhances and simplifies the MFA process. MFA typically requires users to prove their identity using more than one verification mechanism to access protected systems and services.
  • Universal Prompt is designed to be compatible with a wide range of devices and platforms, offering extensive options for managing and setting authentication policies according to organizational needs. Its use significantly increases overall security for accessing sensitive data and services, while reducing complications associated with traditional MFA methods.

Basic MFA settings can be found under Users > Authentication > MFA settings.

The defined Multi-Factor Authentication (MFA) settings from the previous step can then be applied at the user group level.

Upon the first login for a user group with the MFA settings applied, Zabbix prompts the user for verification using their chosen authenticator, such as Google Authenticator. This completes the MFA setup for the individual user.

Zabbix front-end and Zabbix server versions are now displayed on the System information page

Collapsible advanced configuration

Checkboxes, which until now were used to display advanced configuration, have now been replaced by collapsible blocks. This results in a greatly improved user experience, as collapsing these blocks and saving the configuration no longer resets the configured advanced options to their default values, as was the case when using checkboxes.

Asynchronous pollers

The “agent poller“, “http agent pollers” and “snmp poller” processes have been replaced by their new, asynchronous variants and are now capable to perform multiple checks at the same time.

The old versions of these processes were only synchronous, so they could only perform one single action at a time and most of the time was spent by waiting for a response. These new, updated versions of poller processes are now starting an additional parallel process during the phase of waiting for a response. The speed and efficiency of monitoring has therefore undergone a drastic improvement.

These processes can be configured by editing configuration directives “StartHTTPAgentPollers“, “StartAgentPollers” and “StartSNMPPollers” respectively.

The number of concurrent checks can be regulated using new directive “MaxConcurrencyCheckPerPoller” and is configurable up to 1000.

Alongside these changes, the builtin cURL function for persistent connections was newly implemented for HTTP checks.

In connection with the implementation of asynchronous SNMP, a function for asynchronous DNS resolving was added at the same time.

Multithreading

Several changes have been made as part of transitioning to a multithreaded architecture:

  • Added a new configuration parameter: --with-stacksize, which allows to overwrite the default thread stack size used by the system.
  • User macro resolving has been moved from the preprocessing manager to preprocessing workers.

Ability to run remote commands on active agents

Starting with Zabbix Agent version 7.0, it is now possible to run remote command on an agent running in active mode. As soon as the execution of a remote command is triggered by an action or a manual script run, the command will be included in the active checks configuration and executed once the active agent receives it. Note that legacy active agents will ignore any remote commands included in the active checks configuration.

Concurrency in network discovery

Previously, each network discovery rule was handled by a single process. Thus, all control services within the rule could only be performed sequentially.

In the new version, the network discovery process has been reworked to allow parallel processing of inspection services. A new “discovery manager” process has been added along with a configurable number of “discovery workers”.

The default number of StartDiscoverers has been increased from 1 to 5 and the range from 0-250 to 0-1000.

Zabbix Proxy now uses memory buffer

A memory buffer has been developed for the Zabbix proxy used to store new data. This data is forwarded to the Zabbix server without the need to access the database, which again contributes to the increase in overall performance.

For optimized performance of this functionality, it is recommended to turn on the usage of memory buffer on the proxy. This is done by modifying the configuration directive “ProxyBufferMode” from the value “disk” (the hard-set default value for pre-existing installations) to the recommended value “hybrid” or the value “memory“.

Furthermore, it is necessary to set the size of this buffer, for which the “ProxyMemoryBufferSize” parameter is used.

If the proxy is stopped, the memory buffer is full, or the data is too old, then the memory buffer in “hybrid” mode protects against data loss by dumping unsent data to the database, and then the proxy reverts to using the memory buffer after all values have been written. In “memory” mode, only the buffer memory will be used and thus performance is potentially higher, but there is no protection against data loss.

Separate database tables for Zabbix Proxies

Zabbix Proxy records have been moved from the “hosts” table in the database and is now stored in the new “proxy” table.

Also, operational data about Zabbix Proxies (such as version, compatibility or last access) has been moved from the “host_rtdata” table and is now stored in the new “proxy_rtdata” table in the database.

Scripts with parameters

Until now, internal script definitions did not have the option of sending a parameter to the input of the script, so each call to the script with a specific parameter had to be defined separately.

This changes in Zabbix version 7.0 and scripts now accept an input parameter so it is now enough to define a specific script in the Zabbix frontend and the available parameters can then be defined using a simple wizard with preset options (using a drop-down menu).

Here you can see all available settings for this kind of approach:

Consequently, you can see in the following screenshots, how the entire process of running the script with parameters defined using the “drop-down menu” takes place directly at the host level.

Another option now is also the possibility to set parameters for a specific script manually, and even with the possible (and rather necessary) validation of these forwarded values already at the primary script input, at the level of the Zabbix front-end.

You can see an example of the configuration options here:

Running of this type of script with parameters then looks like this:

And here we can see the result:

Simplified cloning

In the new version of Zabbix 7.0 LTS, the process of cloning guests, templates or maps will be changed. Previously, there were two options for cloning, while now the option of “simple” cloning (Clone) will disappear and this function will be completely replaced by Full clone, with all of its functionality.

Documentation link for each standard item

Each standard item now has a direct link from the front-end to the documentation page.

Multi-page PDF reporting

Scheduled reports function now sends a report that contains multiple pages, even so for multi-paged dashboards .

Each page of the generated PDF corresponds to one page of the dashboard.

Previously, this feature was limited to the first page only, even for a multi-page dashboard.

We’ve prepared a free webinar on a topic of Zabbix 7.0 reporting, which you can watch right here:

Settings for timeout per item / proxy / server

Another, revolutionary feature in Zabbix 7.0 LTS is now the possibility to set timeout for individual items.

If necessary, it is possible to set custom settings for timeouts on the proxy itself in Administration > Proxies in the Timeouts tab.

The time limit can be set in the range of 1 – 600s, directly in the front-end selectively for a specific item or globally with the possibility to overwrite these settings on item level.

Zabbix Proxy timeout

This option will greatly improve with the performance and optimization of the entire monitoring in relation to your IT infrastructure and its capabilities, and there will be no longer the need to recompile the Zabbix agent with manually set time limits, for example, if you use more complex SQL queries for database monitoring.

New functions

New functions have been added for use in trigger expressions and calculated items:

  • jsonpath() – returns the JSONPath result
  • xmlxpath() – returns the XML XPath result

Updated functions

Several functions have been updated:

  • Aggregation functions now also support non-numeric types for calculation. This can be useful, for example, with the count and count_foreach functions.
  • The count and count_foreach aggregation functions support optional operator and pattern parameters that can be used to fine-tune item filtering and count only values that match the given criteria.
  • All foreach functions now no longer include unsupported items in the calculation.
  • The last_foreach function, previously set to ignore the time period argument, now accepts it as an optional parameter.

Sending data to Zabbix server using API

Previously, sending data to the Zabbix server was possible using the zabbix-sender tool, or by implementing a custom communication protocol based on JSON.

Newly, it is now also possible to send data to the Zabbix server via the HTTP protocol using the history.push API method.

Receiving sent data requires a configured Zabbix trapper item or an HTTP agent item (with trapping enabled).

Successful history.push API operations are also logged in the Reports -> Audit log section, and this method is also available in the API method list when configuring user permissions.

You can see an example of using this API method here:

{​
    "jsonrpc": "2.0",​
    "method": "history.push",​
    "params": [​
        {​
            "itemid": 10600,​
            "value": 0.5,​
            "clock": 1690891294,​
            "ns": 45440940​
        },​
],​
    "id": 1​
}​

Auditlog converted to hypertable in TimescaleDB

On new installations, the auditlog table has been converted to a hypertable in TimescaleDB to take advantage of better performance as well as automatic partitioning on time (7 days by default).

To successfully update existing installations, you must re-run the timescaledb.sql script located in the database/postgresql path before starting the Zabbix server.
If the Zabbix server is started for the first time without running this script first, then a warning message will pop up.

Increased character limit

The character limit for all URL fields is now 2048 characters, and the character limit for all User/Username and Password authentication fields is increased to 255 characters.

Support for the old numeric type has been dropped

The old style of decimal numbers, previously marked as deprecated, are no longer supported because numeric values of extended range are now used (Float64).

Oracle RDBMS deprecated

The support for Oracle as a back-end database has been deprecated and is expected to be completely removed in future versions.

Removed support for TimescaleDB v1

Support for the TimescaleDB v1 database has been marked as deprecated and Zabbix version 7.0 LTS no longer supports it.

New templates

  • Acronis Cyber Protect Cloud
  • AWS ECS
  • AWS Cost Explorer
  • Cisco SD-WAN
  • Cisco Meraki
  • FortiGate
  • HashiCorp Nomad
  • HPE iLO
  • OpenStack Nova
  • PostgreSQL by ODBC
  • MantisBT
  • NextCloud

Zabbix download and other useful links


As official partners and big fans of the Zabbix platform, we are able to provide you with services from all areas of Zabbix monitoring at the highest level. If you would be interested in a live demonstration of Zabbix installations at our customers, we will be happy to show you Zabbix in practice.

Rate the article:
All articles