Módulo 7: Detección de Anomalías (Métricas, AutoML y Respuestas Automáticas)
Autor: Eduardo Martínez Agrelo
Bienvenidos al Módulo 7. Hasta ahora hemos entrenado modelos para detectar fallos que ya conocíamos, pero en el mundo real, los problemas suelen ser nuevos y desconocidos. En esta lección, aprenderemos a identificar comportamientos "extraños" o fuera de lo común utilizando Machine Learning No Supervisado y estadística avanzada, permitiendo que nuestra infraestructura detecte incidentes sin necesidad de reglas predefinidas.
Modelos No Supervisados: Clustering con K-Means
Cuando no tenemos etiquetas de "fallo" para entrenar a la IA, utilizamos el agrupamiento o Clustering para identificar patrones de comportamiento normal:
- K-Means en BigQuery ML: Utilizaremos este algoritmo para agrupar nuestros servidores por perfiles de carga (Baja, Media, Alta).
- Detección de Outliers: Aprenderemos a usar la función
ML.DETECT_ANOMALIES, que identifica aquellos datos que se alejan demasiado del centro de su grupo, señalándolos como posibles incidentes de seguridad o rendimiento.
El fin de los Umbrales Fijos: La Regla de 3-Sigma
Una alerta estática al 80% de CPU es ineficiente en arquitecturas modernas. Implementaremos el concepto de Umbrales Dinámicos basándonos en la desviación estándar:
Umbral = Media Histórica + (3 * Desviación Estándar)
Esta metodología, conocida como la regla de las tres sigmas, permite que cada servidor o microservicio tenga su propio límite inteligente basado en su comportamiento histórico único, reduciendo drásticamente el ruido y la fatiga de alertas del equipo de SRE.
Correlación y Respuestas Automáticas Dinámicas
La detección es solo el primer paso; la inteligencia reside en cómo integramos estos hallazgos con el ecosistema de Google Cloud:
- Cloud Monitoring: Configuraremos políticas de alertas que no miren un número fijo, sino la tasa de anomalías detectadas por nuestros modelos.
- Mitigación Inteligente: Conectaremos estos hallazgos con las Cloud Functions desarrolladas en módulos anteriores para disparar procesos de remediación solo cuando la desviación estadística confirme un problema real.
Implementación práctica
En este laboratorio, ejecutarás sentencias SQL en BigQuery para entrenar un modelo de Clustering que identifique
los perfiles de comportamiento de tu flota de servidores. Desarrollarás un script en Python llamado
detector_dinamico.py que calculará los umbrales de seguridad individuales para cada recurso
utilizando estadística descriptiva. Finalmente, realizarás una prueba de estrés sobre un servidor y observarás
cómo el sistema identifica la anomalía basándose en su "historia" y no en un límite genérico, marcando el inicio
de una observabilidad verdaderamente adaptativa.
Conclusión: Descubriendo lo desconocido
Has aprendido que el AIOps no solo predice lo que sabe, sino que sospecha de lo que no entiende. Has transformado alertas rígidas en detectores inteligentes y dinámicos. Con esta capacidad de detección avanzada, el siguiente paso es profesionalizar el ciclo de vida de estos modelos mediante el uso de pipelines de MLOps automatizados.