"Después del juego es antes del juego"
Sepp Herberger

viernes, 27 de mayo de 2022

Zabbix (II): quitar alertas insistentes de servicios no arrancados en Agentes Windows.

Poco a poco sigo poniendo en marcha mi servidor Zabbix. Tras poner en funcionamiento la monitorización de los equipos Windows usando el "Template Module Windows services by Zabbix agent" me encontré que el Dashboard se llenaba de alertas de "Problemas" con los servicios de los Windows.
Los mensajes en concreto eran del tipo:
  • 12:58:34 pc "BITS" (Servicio de transferencia inteligente en segundo plano (BITS)) is not running (startup type automatic delayed) 12m 23s No
  • 12:51:06 pc "BITS" (Servicio de transferencia inteligente en segundo plano (BITS)) is not running (startup type automatic delayed) 19m 51s No
  • 12:05:19 pc "OneSyncSvc_1265ec8f" (Sincronizar host_1265ec8f) is not running (startup type automatic delayed) 1h 5m 38s No
  • 12:05:18 pc "CDPUserSvc_1265ec8f" (Servicio de usuario de plataforma de dispositivos conectados_1265ec8f) is not running (startup type automatic)
Básicamente los que sucede es que hay varios servicios que, tras arrancar el equipo con Windows, tardan en arrancar o fallan y el Agente Zabbix nos informa de esa circunstancia. La plantilla usada realiza un descubrimiento de los servicios habilitados en la máquina y si tras 3 ciclos de actualización del agente no están en ejecución salta la alerta.
El mensaje que sale en la descripción del problema es "The service has a state other than "Running" for the last X times":
Al final, pasadas las horas, acaban por arrancar los servicios y desaparecen casi todas las alertas, pero no quita que en ciertos momentos se llene la pantalla de alertas sobre cosas que no me aportan nada.

Lo primero que intenté fue cambiar la plantilla para que en lugar de revisar el estado durante 3 ciclos lo hiciese durante 10, dando un poco más de margen de tiempo para que funcionen. No sirvió de nada.

Teniendo en cuenta que estos son servicios poco importantes (y que sospecho que algunos no funcionan bien por el firewall corporativo, que capa actualizaciones de Microsoft) la otra estrategía que podía aplicar es sencillamente dejar de monitorizar dichos servicios. ¿Se puede hacer eso? Pues gracias a la flexibilidad de Zabbix si se puede. Los pasos a seguir son:
  1. Vamos a Configuration->Templates.
  2. Buscamos Template OS Windows by Zabbix agent -> Template Module Windows services by Zabbix agent
  3. Vamos a Windows services discovery -> Filters.
  4. Añadimos un filtro para ignorar, filtrando por su nombre, los Servicios que dan problemas (como vemos la lista es bastante grande, y eso que sigo añadiendo más):
    {#SERVICE.NAME}
    does not match
    ^(MMCSS|TrustedInstaller|BITS|GISvc|gupdate|MapsBroker|WbioSrvc|sppsvc|RemoteRegistry|wuauserv|gupdate|SysmonLog|clr_optimization_v2.0.50727_32|clr_optimization_v4.0.30319_32)$
      
El filtro se añade a la lista de filtros colocándose, no se por qué, en el tercer lugar:
Una vez acabamos veo que las alertas siguen saltando. La causa es que aunque hayamos cambiado la plantilla esos cambios no se aplican a los hosts dados de alta con ellas. Desconozco si hay alguna manera de trasladar esos cambios, pero como no encontraba nada lo resuelvo de una forma más expeditiva: borro los hosts Windows y dejo que se autoregistren de nuevo, aplicándose la plantilla ya cambiada con los filtros. Fin del problema.
Esta foto es del helicóptero marciano Ingenuity fotografiando la cápsula que dejó el Perseverance (mirar la sombra del propio helicóptero en la imagen) en tierra de forma segura y luego se alejó para caer al suelo. Como vemos el litofrenado la ha dejado bastante maltrecha.

Para mi gozo absoluto, hace unas semanas pude ver una réplica a tamaño real de la Perserverance y la Ingenuity en Nueva York, ahí van unas fotos hechas por mi:
Que maravilla de la ingeniería. Un aparato pensado para realizar un puñado de vuelos de prueba en una atmósfera un 99% menos densa que en la Tierra sigue dandose garbeos por el planeta rojo meses después.
Estuve cerca de ellas, pero no pude tocar nada. Por fortuna si que pude sentarme dentro de una de esas latas de sardina que fueron las cápsulas Gemini de los años 60. Emocionante.