Estas notas son para actualizar de Zabbix 6.4.x a Zabbix 7.0.0.
Todas las notas se agrupan en:
Ver también:
Para completar con éxito la actualización del servidor Zabbix en MySQL/MariaDB, es posible que necesite configurar GLOBAL log_bin_trust_function_creators = 1
en MySQL si el registro binario está habilitado, no hay privilegios de superusuario y log_bin_trust_function_creators = 1
no está configurado en el archivo de configuración de MySQL.
Para configurar la variable usando la consola MySQL, ejecute:
Una vez que la actualización se haya completado con éxito, esta opción se puede desactivar:
Actualizar a Zabbix 7.0.1 (o posterior) desde Zabbix 7.0.0 con PostgreSQL/TimescaleDB da como resultado un fallo del servidor. Este problema se debe a una solución alternativa a un problema de trabajo de compresión en la tabla de registro de auditoría en Zabbix 7.0 que cambia irreversiblemente la política de compresión de la tabla de registro de auditoría. Consulte los problemas conocidos para obtener detalles sobre cómo reparar la tabla de registro de auditoría manualmente.
Si aún no ha actualizado a Zabbix 7.0.0, tenga en cuenta que no debería haber problemas de este tipo para las actualizaciones de versiones de Zabbix anteriores a 7.0.1. Siga las instrucciones en la sección de configuración de la página Configuración de TimescaleDB "Para instalaciones existentes".
La ubicación predeterminada donde el agente Zabbix en Windows busca el archivo de configuración ha sido cambiado. Ahora el agente lo busca en el directorio donde se encuentra el binario del agente zabbix_agentd.exe (en lugar de C:\zabbix_agentd.conf
, como antes).
El agente Zabbix 2 en Windows ya buscó el archivo de configuración predeterminado en el directorio donde se encuentra el binario zabbix_agent2.exe. Sin embargo, en la nueva versión el agente 2 espera que el archivo de configuración se llame zabbix_agent2.conf
(en lugar de zabbix_agent2.win.conf
)
Consulte también: Instalación del agente Zabbix en Windows.
Ahora se permiten valores vacíos en los parámetros de configuración relacionados con el complemento en el agente Zabbix 2.
Se ha eliminado la compatibilidad con TimescaleDB 1.x.
Antes de actualizar a Zabbix 7.0.0, es necesario actualizar manualmente TimescaleDB para usar tipos de datos de doble precisión si TimescaleDB se usa con compresión. Puede saber si TimescaleDB no utiliza tipos de datos de doble precisión mediante la advertencia en la sección de interfaz Información del sistema o en el registro del servidor Zabbix: "La base de datos no se actualizó para utilizar valores de doble precisión. La compatibilidad con el tipo numérico antiguo se eliminará en versiones futuras".
Para obtener más información, consulte Se eliminó el tipo de valor numérico (flotante) antiguo.
La tabla auditlog
se ha convertido a hipertabla en TimescaleDB en las nuevas instalaciones para beneficiarse de la partición automática a tiempo (7 días de manera predeterminada) y un mejor rendimiento.
Para actualizar correctamente las instalaciones existentes, consulte Actualización del esquema de TimescaleDB.
Consulte también: Versiones de TimescaleDB compatibles
Los registros de proxy se han eliminado de la tabla "hosts" y ahora están almacenados en la nueva tabla "proxy".
Además, los datos operativos de los servidores proxy (como el último acceso, la versión, la compatibilidad) se han eliminado de la tabla host_rtdata
y ahora se almacenan en la nueva tabla proxy_rtdata
.
También hay un nuevo objeto proxy en la API. Todas las operaciones con servidores proxy deben actualizarse para realizarse a través de este nuevo objeto proxy.
Según los cambios en configuración del tiempo de espera de la métrica, tanto el tiempo de espera de inicio de sesión de ODBC como el tiempo de espera de ejecución de la consulta para monitor de base de datos las métricas ahora están limitadas al valor del parámetro Timeout establecido en el formulario configuración de la métrica.
En la nueva versión, el proceso de descubrimiento de red se ha rediseñado para permitir la simultaneidad entre las comprobaciones de servicio. Se ha agregado un nuevo proceso de administrador de descubrimiento junto con una cantidad configurable de trabajadores (o subprocesos) de descubrimiento. El administrador del descubrimiento. procesa reglas de descubrimiento y crea un trabajo de descubrimiento por cada regla con tareas (verificaciones de servicio). Los cheques de servicio se recogen y realizado por los trabajadores del descubrimiento.
El parámetro StartDiscoverers ahora determina el número total de trabajadores de descubrimiento disponibles para el descubrimiento. El número predeterminado de StartDiscoverers se ha aumentado de 1 a 5 y el rango de 0-250 a 0-1000. Los procesos de "descubrimiento" de versiones anteriores de Zabbix se han eliminado.
Además, la cantidad de trabajadores disponibles por cada regla ahora se puede configurar en la interfaz. Este parámetro es opcional. Durante la actualización se configurará en "Uno" como en versiones anteriores de Zabbix.
Consulte la lista de cambios de API en Zabbix 7.0.0.
La versión mínima requerida de PHP se ha elevado de 7.4.0 a 8.0.0.
El ancho predeterminado se ha incrementado 3 veces para todos los widgets. Tenga en cuenta que si está utilizando widgets personalizados, es posible que tenga que actualizar los parámetros respectivos del archivo manifest.json (por ejemplo, al configurar un Reloj personalizado, el ancho
debe cambiarse de 4
a 12
).
Un widget ahora puede tener hasta 72 columnas de ancho (anteriormente 24) y de 1 a 64 filas de alto (anteriormente 2 a 32). Por lo tanto, el tablero ahora puede contener hasta 72 widgets horizontalmente.
El nuevo widget del tablero Historial de métricas ha reemplazado al widget Texto sin formato y ofrece varias mejoras.
A diferencia del widget Texto sin formato, que solo mostraba los datos más recientes de la métrica en texto sin formato, el widget Historial de métricas admite varias opciones de visualización para múltiples tipos de métricas (numéricos, de caracteres, de registro, de texto y binarios). Por ejemplo, puede mostrar barras o indicadores de progreso, imágenes para tipos de datos binarios (útiles para métricas del navegador) y resaltar valores de texto (útiles para monitoreo de archivos de registro).
Después de la actualización, todos los widgets de Texto sin formato previamente configurados se reemplazarán automáticamente con widgets de Historial de métricas, conservando los mismos ajustes de configuración. Sin embargo, cualquier script API que haga referencia al widget Texto sin formato debe actualizarse manualmente.
Después de la actualización, todas las comprobaciones SNMP del agente, el agente HTTP y walk[OID]
se trasladarán a sondeadores asíncronos.
Anteriormente, las funciones de la biblioteca cURL se detectaban en el momento de la compilación del servidor, proxy o agente de Zabbix. Si se actualizaban las funciones de cURL, para utilizarlas era necesario volver a compilar el componente Zabbix respectivo.
Ahora solo se requiere reiniciar para que las funciones actualizadas de la biblioteca cURL estén disponibles en Zabbix. Ya no es necesaria la recompilación. Esto es cierto para el servidor, proxy o agente de Zabbix.
Además:
El soporte para Oracle como base de datos backend ha quedado obsoleto desde Zabbix 7.0. y se espera que se elimine por completo en futuras versiones.
Ahora se agrega una verificación de actualización de software de forma predeterminada a las instalaciones nuevas y existentes: la interfaz de Zabbix se comunicará con el punto final público de Zabbix para buscar actualizaciones.
Puede desactivar esta verificación configurando AllowSoftwareUpdateCheck=0 en la configuración del servidor.
Ahora, si se recibe un valor de punto flotante para ua métrica de entero sin signo, el valor se recortará de la parte decimal y se guardará como un número entero. Anteriormente, un valor de coma flotante hacía que una m-etrica de entero no fuera compatible.
Las visualizaciones de hora y fecha en la interfaz ahora se ajustan a la visualización de fecha y hora estándar de EE. UU. cuando se utiliza el idioma de interfaz predeterminado (en_US).
Antes | Ahora |
---|---|
Todos los íconos en la interfaz se han cambiado de imágenes de íconos a fuentes.
En Monitoreo → Últimos datos, el subfiltro y los datos ya no se muestran de forma predeterminada si el filtro no está configurado. Sin embargo, tenga en cuenta que los filtros guardados anteriores que se configuraron usando solo el subfiltro no se ven afectados. En tales casos, el subfiltro permanecerá visible y los datos se mostrarán incluso sin que se haya configurado el filtro principal.
Se ha cambiado el valor predeterminado para varios parámetros de configuración:
Plugins.<PluginName>.Capacity
, obsoleto en Zabbix 6.0, se ha eliminado por completo;Estos cambios no afectan a las instalaciones existentes donde estos parámetros están establecidos explícitamente.
Se han actualizado varias funciones agregadas. Ahora:
Desde Zabbix 5.0.0, el tipo de datos numérico (flotante) admite una precisión de aproximadamente 15 dígitos y un rango de aproximadamente -1,79E+308 a 1,79E+308. Esto está implementado por defecto en instalaciones nuevas. Al actualizar instalaciones existentes que se crearon antes de Zabbix 5.0, se aplica automáticamente un parche de actualización de la base de datos, excepto para TimescaleDB con compresión.
Para bases de datos Oracle, versiones anteriores de bases de datos MySQL e instalaciones grandes, la ejecución del parche puede llevar mucho tiempo. Por este motivo, se recomienda actualizar el tipo de datos manualmente antes de iniciar la actualización.
El parche altera las columnas de datos de las tablas de historial y tendencias, que generalmente contienen una gran cantidad de datos, por lo que se espera que tarde algún tiempo en completarse. Dado que la estimación exacta no se puede predecir y depende del rendimiento del servidor, la configuración y la versión del sistema de administración de bases de datos, se recomienda probar primero el parche fuera del entorno de producción. Con MySQL 8.0 y MariaDB 10.5 configurados de forma predeterminada, se sabe que el parche se ejecuta instantáneamente para tablas grandes debido al algoritmo eficiente y al hecho de que anteriormente se usaba el mismo tipo doble pero con precisión limitada, lo que significa que no es necesario almacenar los datos en sí. modificado.
Ejecute el parche (archivos SQL) para su base de datos, como se describe en la página Actualización de la base de datos a claves primarias y tipos de datos de doble precisión.
Tenga en cuenta que con TimescaleDB, el soporte de compresión solo debe activarse después de aplicar este parche.
¡Importante! Ejecute estos scripts únicamente para la base de datos del servidor.
Para aplicar un parche:
La opción para configurar el tipo de inicio del servicio del agente/agent 2 Windows Zabbix (-S --startup-type
) ha sido añadido. Esta opción permite configurar el servicio agente/agente 2 para que se inicie automáticamente al iniciar Windows (automático
), después de que los servicios iniciados automáticamente hayan completado el inicio (retrasado
), cuando lo inicie manualmente un usuario o aplicación (manual
) o para deshabilitar el servicio por completo (deshabilitado
).
Al realizar la instalación del agente de Windows desde MSI, el tipo de inicio predeterminado en Windows Server 2008/Vista y versiones posteriores ahora es "retrasado" si no se especifica lo contrario en el parámetro de comando de línea "STARTUPTYPE". Esto mejora la confiabilidad y el rendimiento del servicio de Windows agente/agente 2 Zabbix, particularmente durante los reinicios del sistema.
Para plantillas nuevas y cambios en plantillas existentes, consulte Cambios de plantilla.
Al instalar Zabbix desde paquetes y preparar el esquema de la base de datos, la ubicación de los archivos relacionados con la base de datos ha cambiado para corresponder mejor a la estructura de archivos en las fuentes:
schema.sql
, data.sql
, images.sql
) se encuentran en la raíz del directorio de la base de datos.option-patches
.tsdb
por timescaledb
.option-patches
incluye los subdirectorios con-compresión
y sin-compresión
; estos contienen archivos/parches opcionales para actualizar tablas de bases de datos dependiendo de la configuración de compresión TimescaleDB.database/postgresql/timescaledb/schema.sql
.Además, tenga en cuenta los siguientes cambios:
history_pk_*.sql
a history_upgrade_*.sql
y se agregó un archivo trends_upgrade.sql
para mejorar los scripts de actualización de la base de datos.double.sql
se eliminó debido a la eliminación del tipo antiguo de valor numérico (flotante).A continuación se muestra una comparación de la estructura de directorios anterior y actual para las bases de datos MySQL y PostgreSQL.
# Previous: # Current:
database database
├── mysql ├── mysql
│ ├── data.sql │ ├── option-patches
│ ├── double.sql │ │ └── history_upgrade_prepare.sql
│ ├── history_pk_prepare.sql │ ├── data.sql
│ ├── images.sql │ ├── images.sql
│ └── schema.sql │ └── schema.sql
│ │
│ │
├── postgresql ├── postgresql
│ ├── tsdb_history_pk_upgrade_no_compression │ ├── option-patches
│ │ ├── history_pk.sql │ │ └── history_upgrade_prepare.sql
│ │ ├── history_pk_log.sql │ ├── timescaledb
│ │ ├── history_pk_str.sql │ │ ├── option-patches
│ │ ├── history_pk_text.sql │ │ │ ├── with-compression
│ │ └── history_pk_uint.sql │ │ │ │ ├── history_upgrade.sql
│ ├── tsdb_history_pk_upgrade_with_compression │ │ │ │ ├── history_upgrade_log.sql
│ │ ├── history_pk.sql │ │ │ │ ├── history_upgrade_str.sql
│ │ ├── history_pk_log.sql │ │ │ │ ├── history_upgrade_text.sql
│ │ ├── history_pk_str.sql │ │ │ │ ├── history_upgrade_uint.sql
│ │ ├── history_pk_text.sql │ │ │ │ └── trends_upgrade.sql
│ │ └── history_pk_uint.sql │ │ │ └── without-compression
│ ├── data.sql │ │ │ ├── history_upgrade.sql
│ ├── double.sql │ │ │ ├── history_upgrade_log.sql
│ ├── history_pk_prepare.sql │ │ │ ├── history_upgrade_str.sql
│ ├── images.sql │ │ │ ├── history_upgrade_text.sql
│ ├── schema.sql │ │ │ ├── history_upgrade_uint.sql
│ └── timescaledb.sql │ │ │ └── trends_upgrade.sql
│ │ │ └── schema.sql
│ │ ├── data.sql
│ │ ├── images.sql
│ │ └── schema.sql
├── ... ├── ...
Actualice sus scripts, si los hay, que contengan referencias a la estructura de directorios o archivos anteriores.
Tras la actualización, los tiempos de espera globales para todos los tipos de métricas admitidos se establecerán en función del parámetro Timeout
valor del archivo de configuración del servidor. Si se configura un proxy, de forma predeterminada, utilizará la configuración de tiempo de espera global del servidor.
Cuando se utiliza un servidor actualizado (versión 7.0.0 o posterior) con un proxy o agente anterior, el proxy o agente funcionará como antes:
Timeout
del archivo de configuración del proxy;Timeout
del archivo de configuración del agente.Los parámetros de tiempo de espera se han eliminado de los archivos de configuración de los complementos Modbus y MQTT. Los tiempos de espera de ejecución de la solicitud ahora se pueden configurar usando el formulario de configuración de la métrica.
Se ha agregado a Zabbix un nuevo tipo de métrica: Métrica de navegador, lo que permite monitorear sitios web y aplicaciones web complejas mediante un navegador. Las métricas de navegador permiten la ejecución de código JavaScript definido por el usuario para simular acciones relacionadas con el navegador, como hacer clic, ingresar texto, navegar por páginas web, etc.
Además, esta característica agrega los siguientes cambios:
StartBrowserPollers
y WebDriverURL
en el servidor/proxy Zabbix;-w <webdriver url>
para habilitar el monitoreo del navegador a la utilidad de línea de comando zabbix_js
.wmi.get
y wmi.getall
, cuando se usan con el agente 2 Zabbix, ahora devuelven un JSON con valores booleanos representados como cadenas (por ejemplo, "RealTimeProtectionEnabled": "True"
en lugar de "RealTimeProtectionEnabled": true
que devolvían anteriormente) para que coincida con el formato de salida de estas métricas en el agente Zabbix;oracle.ts.stats
tiene un nuevo parámetro conname para especificar el nombre del contenedor de destino. Se actualizó el formato JSON de los datos devueltos. Cuando no se especifican tablespace, type ni conname en los parámetros clave, los datos devueltos incluirán un nivel JSON adicional con el nombre del contenedor, lo que permitirá la diferenciación entre contenedores.net.dns.*
ya no se pueden configurar sin el parámetro name. Aunque siempre aparece como obligatorio, el parámetro name, si se omite, anteriormente se resolvía en un valor predeterminado (zabbix.com), lo cual ya no es el caso.Para obtener la lista de cambios de métricas que no rompen la compatibilidad, consulte Novedades de Zabbix 7.0.0.
Zabbix ahora puede leer archivos de captura SNMP desde el lugar correcto en caso de que el nodo activo se cambie en una configuración de alta disponibilidad.
Sin embargo, para que esta funcionalidad funcione, es necesario actualizar el formato de hora en cualquier script bash, perl y SNMPTT a "%Y-%m-%dT%H:%M:%S%z" (es decir, 2024-01-10T11:56:14+0300
).