Una alerta que se dispara en Zabbix y no se convierte automáticamente en una incidencia en el service desk crea un gap conocido. Alguien debe notar la notificación, abrir el sistema de tickets y registrar manualmente el problema.
En entornos con un alto volumen de alertas, esta etapa manual es donde los incidentes se pierden o tardan en ser atendidos.
Zabbix resuelve este gap con un mecanismo único para las tres herramientas de service desk más comunes en entornos open source, como OTRS Community Edition, GLPi y Zammad. Y vale la pena destacar esto desde el principio, porque es un punto que suele malinterpretarse: las tres integraciones no utilizan enfoques diferentes.
Todas pasan por el mismo recurso de webhook de Zabbix, configurado a través de media type, usuario y action.
Vamos a entender, de manera simplificada, cómo funciona la integración de Zabbix y estas herramientas de service desk.
Cómo funciona el mecanismo detrás de las tres integraciones
Zabbix dispara notificaciones a través de actions, que son reglas configuradas para reaccionar a condiciones específicas, como la creación de un problema con determinada severidad. Cada action puede disparar una o más operaciones, entre ellas el envío de mensajes a través de un media type.
Los media types de tipo webhook permiten que Zabbix envíe peticiones HTTP a sistemas externos, con el cuerpo de la petición, los parámetros y el comportamiento definidos en un script de JavaScript embebido en el propio media type.
Es este mecanismo el que sustenta las integraciones oficiales con OTRS CE, GLPi y Zammad, todas distribuidas como templates de media type listos para usar, disponibles en el repositorio oficial de integraciones de Zabbix.
En las tres, el flujo de configuración sigue el mismo proceso: importar el media type correspondiente, crear un usuario dedicado a la integración y configurar la action que disparará las notificaciones a ese usuario cuando se cumplan los criterios definidos.
Integración con OTRS Community Edition
La integración oficial con OTRS CE funciona a partir de la versión 7.2 de Zabbix. Después de importar el webhook, es necesario crear un web service en OTRS, utilizando el archivo ZabbixTicketConnector.yml, que expone el endpoint que llamará Zabbix.
Los parámetros del webhook incluyen la URL del frontend de OTRS CE y, opcionalmente, un mapeo de severidad: para cada nivel de severidad de Zabbix (no clasificado, información, advertencia, promedio, alto, desastre) es posible definir el ID de prioridad correspondiente en OTRS. También es posible completar campos dinámicos de OTRS con valores provenientes de Zabbix, siempre que sean de tipo texto, área de texto, checkbox o fecha.
Un recurso importante para quienes desean cerrar el ciclo completo es configurar el webhook para cerrar automáticamente el ticket en OTRS cuando el problema correspondiente se resuelva en Zabbix, definiendo el State ID de «cerrado» en los parámetros del webhook.
Integración con GLPi
La integración con GLPi sigue exactamente el mismo modelo de webhook, con soporte tanto para la API REST heredada (V1) como para la API RESTful más reciente (V2) de GLPi. El webhook crea los tickets directamente en la sección de atención (Assistance) de GLPi.
Cuando un problema ya reportado se actualiza en Zabbix, el webhook actualiza el título y la urgencia del ticket correspondiente en GLPi, y añade un followup con el comentario de la actualización. Esto significa que el ciclo de vida del ticket acompaña el ciclo de vida del problema en Zabbix sin intervención manual, incluyendo la evolución de la severidad y el cierre.
Integración con Zammad
En Zammad, el prerrequisito inicial es habilitar el acceso a través de API token, en Settings > System > API.
A partir de la versión 7.2 de Zabbix (la integración también existe para la 7.4 y versiones anteriores, con pequeñas variaciones), el webhook sigue el mismo patrón que las otras dos, con media type, usuario y action.
Al igual que en OTRS, Zammad también permite mapear la severidad de Zabbix a los campos de prioridad del sistema, y ofrece soporte para tags de Zammad a través del parámetro zammad_enable_tags. Un detalle técnico relevante es que, cuando el soporte para tags está habilitado, cada tag se envía como una petición separada, algo a considerar en escenarios con un alto volumen de eventos.
Buenas prácticas de integración
Independientemente de cuál de las tres herramientas esté en uso, algunos cuidados aplican para todas.
Todos los webhooks de Zabbix admiten proxy HTTP, lo cual es relevante en entornos donde el servidor no tiene salida directa a internet o a la red del service desk. En ese caso, basta con añadir un parámetro de media type llamado http_proxy con la URL del proxy.
También vale la pena revisar con atención el mapeo de severidad antes de poner la integración en producción. Un mapeo mal ajustado puede hacer que problemas de baja relevancia lleguen como prioridad alta al service desk, o lo contrario, generando el mismo tipo de ruido que la integración debería eliminar.
Y antes de dar acceso al equipo de soporte, es aconsejable probar el ciclo completo: apertura del ticket a partir de un problema simulado, actualización de severidad y cierre automático cuando el problema sea resuelto. Esta prueba de extremo a extremo suele revelar rápidamente si el mapeo de campos y de severidad es correcto.
Eligiendo entre las tres
Como las tres siguen exactamente el mismo mecanismo de webhook, la decisión de cuál usar normalmente es mucho más organizacional que técnica, considerando la herramienta de service desk con la que el equipo ya opera.
- Los equipos que ya utilizan GLPi para la gestión de activos de TI tienden a beneficiarse de la asociación entre los tickets y los activos registrados en la propia herramienta;
- Los equipos con procesos más alineados a ITIL suelen inclinarse hacia OTRS o Zammad, dependiendo de la preferencia de interfaz y del ecosistema de plugins de cada uno.
Cada operación tiene un flujo de incidentes diferente, y el mapeo de severidad, campos y ciclo de cierre debe diseñarse para la realidad de su service desk. ¡Hable con el equipo técnico de Zabbix y planifique la integración ideal para su empresa!