#5 Novedades de Zabbix 6.0.0
Consulte los cambios importantes para esta versión.
La nueva versión viene con una solución nativa de alta disponibilidad para Servidor Zabbix.
La solución consta de múltiples instancias o nodos zabbix_server, donde sólo un nodo puede estar activo (trabajando) a la vez, mientras que otros nodos están en espera, listos para tomar el control en caso de que el nodo actual se detenga o falle.
Consulte también: Clúster de alta disponibilidad.
Se han realizado varias actualizaciones en el seguimiento de servicios. El monitoreo de servicios ofrece una vista de alto nivel de la infraestructura monitoreada en Zabbix.
Mapeo basado en etiquetas de servicios a problemas
La disponibilidad de servicios en versiones anteriores de Zabbix dependía de los iniciadores y sus estados. En la nueva versión que se reemplaza por una asignación basada en etiquetas a problemas para el servicio respectivo.
En la configuración del servicio, ya no existen dependencias duras y blandas. En cambio, un servicio puede tener varios servicios principales.
Services menu
There is now a new Services menu in Zabbix, with four menu sections:
Cálculo de estado y reglas de propagación
Hay nuevas reglas de cálculo de estado y reglas adicionales flexibles para calcular el estado de un servicio principal basadas en los estados y el peso de los hijos directos. Ahora también es posible establecer reglas flexibles para propagar un estado del servicio a los servicios padres.
Permisos
Se han implementado permisos flexibles para los servicios a nivel de rol de usuario. Se puede otorgar acceso de lectura, escritura o solo lectura a todos, a ninguno o a servicios seleccionados (según el nombre o las etiquetas).
Análisis de raíz de la causa
Una nueva columna Causa raíz enumera los problemas subyacentes que afectan directa o indirectamente el estado del servicio.
Si hace clic en el nombre del problema podrá ver más detalles al respecto en Monitoreo → Problemas.
It is now possible to receive automated alerts about service status changes, similar to the alerts about trigger status changes.
A new service action type has been added to the Actions menu. Service actions may include steps for problem, recovery, and update operations related to services. It is possible to configure two types of actions: sending a message to the specified recipients and executing a remote command on Zabbix server. Similarly to trigger actions, service actions support problem escalation scenarios.
New message templates Service, Service recovery, and Service update have been added to media types and should be defined to enable correct sending of notifications for service actions.
Services now can be cloned. The Clone button has been added to the configuration form of a service. When a service is cloned, its parent links are preserved, while the child links are not.
Primary keys are now used for all tables, including history tables, in new installations.
There is no automatic upgrade to primary keys for existing installations. Instructions for a manual upgrade of history tables to primary keys in pre-existing installations are available for MySQL/MariaDB, PostgreSQL, TimescaleDB v1 and v2, and Oracle.
Several dashboard widgets have been added in the new version.
A Top hosts widget has been added to dashboard widgets. This widget is designed to replace the Data overview widget that is now deprecated.
The Top hosts widget allows to create custom tables for data overview, which is useful for Top N-like reports and bar-progress reports useful for capacity planning.
For more information, see Top hosts widget.
Macros for internal actions contain the reason why an item, an LLD-rule, or a trigger became unsupported:
For more details, see Supported macros.
Ahora se admiten nuevas macros para la depuración de expresiones de iniciador y acciones internas.
Las macros de depuración de expresiones simplifican el proceso de depuración de expresiones de iniciador:
Las macros para acciones internas contienen el motivo por el cual una métrica, una regla LLD o un iniciador dejaron de ser compatibles:
Para obtener más detalles, consulte Macros compatibles.
Bulk processing of dependent items has been introduced in the preprocessing queue to improve the performance of retrieving Prometheus metrics.
See Prometheus checks for more details.
La compatibilidad con macros posicionales en el nombre de la métrica ($1, $2...$9), obsoleta desde Zabbix 4.0, se ha eliminado por completo.
La compatibilidad con macros de usuario en nombres de métricas (incluidos los nombres de reglas de descubrimiento), obsoleta desde Zabbix 4.0, ha sido completamente eliminada.
It has been possible to collect Prometheus metrics in Zabbix for a while now, but some of the metrics are difficult to work with. Specifically, the metrics of histogram type can be presented in Zabbix as multiple items with the same key names, but different parameters. However, even though such items are logically related and represent the same data, it has been difficult to analyze the collected data without specialized functions. To cover this functionality gap in the new version, rate() and histogram_quantile() functions, producing the same result as their PromQL counterparts, have been added.
Other new additions to complement this functionality are the bucket_rate_foreach() and the bucket_percentile() functions. For more information see:
It is now possible to check for monotonic increase or decrease in item values using the new monoinc() or monodec() history functions.
New functions have been added to simplify the counting of specific hosts, items, or values, returned by foreach functions.
Aggregate functions:
Foreach function:
Zabbix 5.2 introduced new trend functions useful for baseline monitoring. However, they still require defining relative thresholds (e.g. check that web traffic in September, 2021 is less than 2x higher compared to September, 2020). There are use cases when such thresholds are hard to define. For instance, the web traffic of a new but highly popular web site can organically grow many times over a year but the growth rate is unknown. Yet, a sudden traffic spike due to DDOS attack must generate an alert regardless of organic traffic growth.
Anomaly detection algorithms do exactly this - find data that don't look normal (outliers) in a context of other values.
New history function trendstl() has been added which uses 'decomposition' method to calculate the anomaly rate. It splits a single time series sequence into three other sequences:
Anomaly detection works with remainder sequence and checks if there are values that are too far from the majority of remainder values. "Far" means that the absolute value from the remainder sequence is N times greater than the standard or mean deviation.
Ahora es posible verificar el aumento o disminución monótona en los valores de las métricas usando las nuevas funciones de historial monoinc() o monodec().
Item configuration form now automatically suggests the matching type of information, if selected item key returns data only of the specific type (for example, log[] item requires Type of information: Log). Type of information parameter is now located under the Key parameter on the primary Item tab and is duplicated on the Preprocessing tab if at least one preprocessing step is specified. If Zabbix detects a possible mismatch of the selected type of information and key, a warning icon will be displayed next to the Type of information field.
Several new items have been added to Zabbix agent/agent 2:
Additionally:
mode
parameter (crc32, md5, sha256)mode
parameter (bytes or lines)For more details see agent items.
Zabbix 5.2 introduced new trend functions useful for baseline monitoring. However, they still require defining relative thresholds (e.g. check that web traffic in September, 2021 is less than 2x higher compared to September, 2020). There are use cases when such thresholds are hard to define. For instance, the web traffic of a new but highly popular web site can organically grow many times over a year but the growth rate is unknown. Yet, a sudden traffic spike due to DDOS attack must generate an alert regardless of organic traffic growth.
Anomaly detection algorithms do exactly this - find data that don't look normal (outliers) in a context of other values.
New history function trendstl() has been added which uses 'decomposition' method to calculate the anomaly rate. It splits a single time series sequence into three other sequences:
Anomaly detection works with remainder sequence and checks if there are values that are too far from the majority of remainder values. "Far" means that the absolute value from the remainder sequence is N times greater than the standard or mean deviation.
String function concat now allows concatenating more than two parameters. It can be used to combine strings and values in different combinations or append two or more values to each other. Numeric data types are also supported.
Each Zabbix agent 2 plugin now has a separate configuration file. By default, these files are located in the ./zabbix_agent2.d/plugins.d/
directory. The path is specified in the Include
parameter of the agent 2 configuration file and can be relative to the zabbix_agent2.conf or zabbix_agent2.win.conf file location.
Custom password complexity requirements can now be provided for Zabbix internal authentication method. To prevent Zabbix users from setting weak passwords, it is possible to enforce the following restrictions:
Las métricas calculadas ahora admiten tipos de información no solo numéricos, sino también de texto, registro y caracteres.
Los parámetros de usuario ahora se pueden recargar desde el archivo de configuración sin reiniciar el agente. Para hacerlo, ejecute la nueva opción de control de tiempo de ejecución userparameter_reload
, p.e..:
o
zabbix_agent2 -R userparameter_reload
UserParameter es la única opción de configuración del agente que será recargada con este comando.
Anteriormente, las opciones de control del tiempo de ejecución del servidor Zabbix y del proxy Zabbix no eran compatibles con los sistemas basados en BSD. El cambio del método de transferencia de comandos en tiempo de ejecución ha permitido eliminar esta limitación. Ahora la mayoría de los comandos son compatibles. en, FreeBSD, NetBSD, OpenBSD y otros sistemas operativos de la familia *BSD.
Para obtener la lista exacta, consulte Control de tiempo de ejecución para el servidor o proxy Zabbix.
Cargador de complementos externo
Anteriormente, los complementos solo se podían compilar en el agente 2 de Zabbix, lo que requería volver a compilar el agente cada vez que fuera necesario para cambiar el conjunto de complementos disponibles. Ahora, con la incorporación del cargador de complementos externo, los complementos no tienen que ser integrados en el agente 2 directamente y se puede agregar como complementos externos separados (complementos cargables), lo que hace que el proceso de creación de complementos adicionales pueda recopilar nuevas métricas de monitoreo más fácilmente.
La introducción de complementos cargables provocó los siguientes cambios en los parámetros de configuración:
Ahora se pueden proporcionar requisitos de complejidad de contraseña personalizados para el método de autenticación interna de Zabbix. Para evitar que los usuarios de Zabbix establezcan contraseñas débiles, es posible imponer las siguientes restricciones:
The ability to handle compressed content has been added to Zabbix web monitoring. All encoding formats supported by libcurl are supported.
Zabbix Prometheus preprocessing query language now supports two additional label matching operators:
Las utilidades Zabbix get y Zabbix sender ahora admiten -t <segundos>
o --timeout <segundos>
parámetro de tiempo de espera. El rango válido es:
SNMP gateway can now provide information about triggers in a problem state and reveal host information in trigger details.
Additionally, it is now possible to limit the rate of SNMP traps sent by SNMP gateway.
The list of supported OIDs has been extended with a new OID .10 for a comma-delimited list of trigger hostnames.
New parameters have been added to the SNMP gateway configuration file: - ProblemBaseOID - OID of the problem trigger table; - ProblemMinSeverity - minimum severity, triggers having lower severity will not be included; - ProblemHideAck - if specified, only triggers with unacknowledged problems will be included; - ProblemTagFilter - if specified, only triggers with the specified tag name will be included; - TrapTimer - if set, Zabbix will send no more than one trap of the highest severity in the given time frame.
For details, see Zabbix SNMP Gateway.
The audit log now contains records about all configuration changes for all Zabbix objects, including changes that occurred as a result of executing an LLD rule, a network discovery action, an autoregistration action, or a script execution. Previously, configuration changes initiated from Zabbix server, for example, as a result of executing a discovery rule, were not recorded. Now such object modifications will be stored as audit records attributed to the user System.
A functionality for filtering records by the frontend operation that caused these entries has been added. If several log records have been created as a result of a single operation, for example, linking/unlinking a template, such records will have the same Recordset ID.
Registros
El registro de auditoría ahora contiene registros sobre todos los cambios de configuración para todos los objetos de Zabbix, incluidos los cambios que ocurrieron como resultado de la ejecución de una regla LLD, una acción de descubrimiento de red, una acción de registro automático o la ejecución de un script. Anteriormente, los cambios de configuración iniciados desde el servidor Zabbix, por ejemplo, como resultado de la ejecución de una regla de descubrimiento, no fueron registrados. Ahora dichas modificaciones de objetos se almacenarán como registros de auditoría atribuidos al usuario System.
Filtro de registro
Se agregó una funcionalidad para filtrar registros por la operación de interfaz que causó estas entradas. Si varios registros se han creado como resultado de una única operación, por ejemplo, vincular/desvincular una plantilla, esos registros tendrán el mismo ID del conjunto de registros.
Configuración de auditoría
La nueva sección Registro de auditoría se ha agregado al menú Administración→General, lo que permite habilitar o deshabilitar el registro de auditoría. La configuración de limpieza para auditoría, anteriormente ubicada en la sección Asistente de limpieza, también se ha movido a la nueva Sección Registro de auditoría.
Se ha agregado soporte para PCRE2 y los paquetes de instalación de Zabbix para RHEL 7 y posteriores, SLES (todas las versiones), Debian 9 y posteriores, Ubuntu 16.04 y posteriores se han actualizado para usar PCRE2. PCRE todavía es compatible, pero Zabbix solo se puede compilar con una de las bibliotecas PCRE o PCRE2, ambas no se pueden usar al mismo tiempo.
You can get these templates:
Está disponible una nueva integración que permite utilizar el tipo de medio webhook para crear notificaciones de [Problemas de Github] (https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/media/github/README.md) de Zabbix.
Nuevas plantillas oficiales están disponibles para el seguimiento.
Para habilitar el monitoreo de Kubernetes, debe usar la nueva herramienta Zabbix Helm Chart, que instala el proxy Zabbix y los agentes Zabbix en el clúster de Kubernetes.
Para obtener más información sobre la configuración de plantillas, consulte Operación de plantilla HTTP.
Puede conseguir estas plantillas:
New macros are now supported to simplify the process of debugging trigger expressions:
For more details, see Supported macros.
Los comandos de tiempo de ejecución del servidor Zabbix y del proxy ahora se envían a través de un socket en lugar de con señales Unix. Este cambio permite mejorar la experiencia del usuario trabajando con opciones de control de tiempo de ejecución:
A new geomap widget for the dashboards has been introduced providing a way to display hosts on geographical maps. For more information see the Geomap dashboard widget and geographical maps.
A subfilter has been added in the Latest data section. The subfilter is useful for a quick one-click access to groups of related items.
The subfilter shows clickable links allowing to filter items based on a common entity - the host, tag name or tag value. As soon as the entity is clicked, items are immediately filtered.
For more details, see the [latest data]((/manual/web_interface/frontend_sections/monitoring/latest_data) section.
The graph page in Monitoring → Hosts → Graphs has seen several usability improvements:
For more details, see the graph page.
It is now also possible to create new hosts from Monitoring → Hosts.
The Create host button is available for Admin and Super Admin users.
The form for host creation and editing is now opened in a modal (popup) window, in Configuration → Hosts, Monitoring → Hosts and in any page, where there is a host menu or other direct link to the host configuration.
Direct links to the host edit page still work and are opening the host edit page in full page.
A new context menu for items has been introduced in Latest data allowing to access the item configuration and available graphs:
Conversely, a new context menu has been introduced in the item list in configuration menu allowing to access the latest data for the item and other useful options:
This menu replaces the wizard option in previous versions. A similar menu has also been introduced for template items and item prototypes.
Al configurar operaciones de acción, ahora es posible cancelar las notificaciones sobre escalamientos cancelados desmarcando la casilla de verificación de la opción correspondiente.
The Overview section in the Monitoring menu has been removed completely. The same functionality can be still accessed by using the Data overview and Trigger overview dashboard widgets.
Zabbix server and proxy will now check the database version before launch and will not start if the version is out of the supported range. It is possible to turn off this check by modifying AllowUnsupportedDBVersions configuration parameter, but this approach is not recommended. The list of officially supported database versions has been updated to exclude databases that are nearing their end of service life point and versions with unfixed issues that may interfere with normal performance.
When configuring action operations, it is now possible to cancel notifications about canceled escalations by unmarking the checkbox of the corresponding option.
The Overview section in the Monitoring menu has been removed completely. The same functionality can be still accessed by using the Data overview and Trigger overview dashboard widgets.
Zabbix ahora es compatible con PCRE y PCRE2. Los paquetes Zabbix para RHEL 7 y posteriores, SLES (todas las versiones), Debian 9 y las versiones más recientes, Ubuntu 16.04 y las versiones más recientes se han actualizado para compilar con PCRE2 en lugar de PCRE. Al compilar a partir de fuentes, los usuarios pueden elegir especificar el indicador ''--with-libpcre'' o ''--with-libpcre2''. Si está actualizando una instalación existente, cambiar PCRE a PCRE2 puede provocar que algunas expresiones regulares se comporten de manera diferente; consulte los problemas conocidos para obtener más detalles.
Archivos de configuración separados
Cada complemento de Zabbix Agent 2 ahora tiene un archivo de configuración separado. De forma predeterminada, estos archivos se encuentran en el directorio ./zabbix_agent2.d/plugins.d/
. La ruta se especifica en el parámetro Include
del archivo de configuración del agente 2 y puede ser relativo a la ubicación del archivo zabbix_agent2.conf o zabbix_agent2.win.conf.
Set of available baseline monitoring options has been extended with the two new functions baselinedev and baselinewma.
In context of these functions, the term 'season' refers to a configurable timeframe, which could be hours, days, weeks, months or years. The length of a season and the number of seasons to analyse is set in function parameters.
See history functions for more info.