Recientemente, Microsoft, en colaboración con instituciones de investigación como la Universidad de California, Berkeley y la Universidad de Illinois, ha lanzado un proyecto de código abierto llamado AIOpsLab. Su objetivo es proporcionar un sistema de agentes inteligentes para la automatización y operación de la nube.
AIOpsLab simula tareas complejas en entornos de servicios en la nube reales, permitiendo la detección, localización y resolución automática de fallos. Esto mejora significativamente la capacidad de observación y la eficiencia operativa de los servicios en la nube.
La principal función de AIOpsLab es su diseño modular, que permite la colaboración entre humanos y agentes digitales. Facilita a los desarrolladores la ampliación de aplicaciones, el manejo de diferentes cargas de trabajo y escenarios de fallos. Su arquitectura se compone de cinco partes clave: coordinador, servicios, generador de carga de trabajo, generador de fallos y observabilidad.
El coordinador se encarga de establecer sesiones con los agentes e intercambiar información sobre los problemas de las pruebas de referencia. A través de una serie de APIs documentadas (como la obtención de registros e indicadores), ayuda a los agentes a resolver las tareas de manera eficiente. El coordinador también puede realizar acciones en nombre de los agentes, como ampliar o reimplementar servicios, garantizando su correcto funcionamiento en un entorno real.
El módulo de servicios se adapta a diversos entornos de servicios en la nube reales, como microservicios, servicios sin servidor y servicios monolíticos. AIOpsLab también utiliza el conjunto de aplicaciones de código abierto DeathStarBench, proporcionando a los investigadores una herramienta para reproducir e investigar eventos de producción en un entorno controlado. Además, mediante la integración de herramientas como Blueprint, AIOpsLab se puede ampliar a otros servicios académicos y de producción, facilitando la rápida implementación de nuevas variantes.
El generador de carga de trabajo desempeña un papel importante en AIOpsLab, creando simulaciones de escenarios normales y de fallo para probar el rendimiento de los agentes en diferentes condiciones. Genera cargas de trabajo según las especificaciones del coordinador, ayudando a los usuarios a realizar pruebas en diversas situaciones.
El generador de fallos es una función innovadora de AIOpsLab, capaz de inyectar fallos de grano fino en múltiples escenarios en la nube. Esta función simula todo el proceso de un fallo complejo, teniendo en cuenta las interdependencias entre microservicios, proporcionando a los usuarios una capacidad completa de prueba y evaluación.
Finalmente, la función de observabilidad, mediante la integración de múltiples herramientas de monitoreo, mejora la capacidad de monitoreo integral de AIOpsLab. Esto garantiza que los usuarios obtengan información del sistema personalizada, permitiendo una gestión eficaz incluso en caso de posible sobrecarga de datos.
Dirección del código abierto: https://github.com/microsoft/AIOpsLab/?tab=readme-ov-file
Puntos clave:
🌐 Microsoft y universidades lanzan conjuntamente AIOpsLab de código abierto para mejorar la capacidad de operación y mantenimiento automatizado de los servicios en la nube.
🛠️ AIOpsLab se compone de cinco partes principales: coordinador, servicios, generador de carga de trabajo, generador de fallos y observabilidad, y admite múltiples entornos de servicios en la nube.
🔍 La función de observabilidad integra múltiples herramientas de monitoreo para garantizar que los usuarios obtengan información y capacidad de monitoreo del sistema de manera eficaz.