“Cuando iniciamos el cuarto año de la serie de entradas de blog sobre la mejora de la confiabilidad, dar a las organizaciones la capacidad de ejecutar sus cargas de trabajo en Azure de forma confiable sigue siendo una de nuestras principales prioridades. Invertimos continuamente en desarrollar la plataforma Azure para conseguir este objetivo a diario. La capacidad de supervisar la disponibilidad de las máquinas virtuales de una manera sólida y completa es fundamental para garantizar la disponibilidad y la resistencia de las aplicaciones. Para la entrada de hoy de esta serie, he pedido al administrador de programas Pujitha Desiraju, de nuestro equipo de ingeniería de los aspectos básicos de la plataforma Azure, que hable sobre las últimas mejoras de observabilidad para la supervisión de la disponibilidad de las máquinas virtuales, y también de las inversiones previstas para ofrecer la mejor experiencia de supervisión”. —Mark Russinovich, director de tecnología, Azure
En esta entrada de blog, ha colaborado Gaurav Jagtiani, director principal de ingeniería de software.
Flash, como se conoce internamente el proyecto, es una colección de esfuerzos de ingeniería de Azure cuyo objetivo es desarrollar el ecosistema de supervisión de la disponibilidad de las máquinas virtuales (VM) de Azure en una solución centralizada, holística e inteligible en la que los clientes puedan confiar para satisfacer sus necesidades de observabilidad específicas. Hoy nos complace anunciar que se han completado los dos primeros hitos del proyecto: la versión preliminar de los datos de disponibilidad de las máquinas virtuales en Azure Resource Graph y la versión preliminar privada de una métrica de disponibilidad de las máquinas virtuales en Azure Monitor.
¿Qué es Project Flash?
Project Flash toma el nombre de nuestro compromiso con la creación de formas sólidas y rápidas de supervisar la disponibilidad de las máquinas virtuales del modo más completo posible, un requisito previo fundamental para un rendimiento eficaz de las aplicaciones. Nuestro objetivo es asegurarnos de que puede:
- Consumir datos precisos y prácticos sobre las interrupciones de la disponibilidad de las máquinas virtuales (por ejemplo, reinicios de las máquinas virtuales, bloqueos de las aplicaciones debido a actualizaciones de los controladores de red y actualizaciones del sistema operativo host de 30 segundos), junto con detalles precisos de los errores (por ejemplo, iniciado por la plataforma o por el usuario, reinicio o bloqueo, previsto o imprevisto).
- Analizar y alertar sobre las tendencias en las disponibilidad de las máquinas virtuales para una depuración rápida y la elaboración de informes mensuales.
- Supervisar periódicamente los datos a gran escala y crear paneles personalizados para mantenerse informado de los estados de disponibilidad más recientes de todos los recursos.
- Recibir análisis de la causa principal (RCA) automatizados con detalles sobre las máquinas virtuales afectadas, la causa y la duración del tiempo de inactividad, las correcciones consiguientes y otros datos similares, todo ello para permitir investigaciones dirigidas y análisis posteriores.
- Recibir notificaciones instantáneas sobre cambios críticos en la disponibilidad de las máquinas virtuales para desencadenar rápidamente acciones correctoras y evitar que afecten a los usuarios finales.
- Adaptar y automatizar de forma dinámica las directivas de recuperación de la plataforma, en función de la sensibilidad de las cargas de trabajo y las necesidades de conmutación por error en constante cambio.
Con estos objetivos en mente, hemos dividido nuestra estrategia de ejecución en dos fases: una fase a corto plazo, para satisfacer las necesidades actuales críticas, y una fase a largo plazo, para ofrecer la mejor experiencia de supervisión de la disponibilidad de las máquinas virtuales. Este enfoque en dos fases nos ayuda a cerrar brechas continuamente, iterar la calidad del servicio y aprender de los comentarios de los usuarios en cada paso del camino.
Anuncio de nuevas opciones de supervisión
En la primera fase, se proporcionan diferentes opciones para permitir un acceso cómodo a los datos de disponibilidad de las máquinas virtuales, con el fin de satisfacer diferentes necesidades de observabilidad. Nuestro objetivo es mantener la coherencia de los datos con rigurosos estándares de calidad similares en todas las características y soluciones actuales, como Resource Health o el registro de actividad, para ofrecer una vista coherente e independiente de la solución que elija.
Análisis a gran escala para la disponibilidad de las máquinas virtuales
Hoy estamos encantados por haber alcanzado nuestro primer hito de Project Flash, con la versión preliminar de los estados de disponibilidad de las máquinas virtuales en Azure Resource Graph para usarlos a gran escala mediante programación.
Azure Resource Graph es un servicio de Azure que tiene muchísima aceptación por su gran capacidad para realizar consultas en muchas suscripciones, todas a la vez y con una latencia baja. Actualmente, se envían los estados de disponibilidad de las máquinas virtuales (disponible, no disponible y desconocido) a la tabla HealthResources de Azure Resource Graph, de modo que puede realizar consultas complejas con el Lenguaje de consulta Kusto (KQL) para filtrar grades conjuntos de datos a la vez. Esta funcionalidad es muy útil para hacer un seguimiento de los cambios históricos que se han producido en la disponibilidad de las máquinas virtuales, para crear paneles personalizados y para realizar investigaciones detalladas en numerosas propiedades de recursos distribuidas en varias tablas.
Figura 1: Ventana de Azure Resource Graph Explorer con una consulta y los resultados, para demostrar la captura de datos de la tabla HealthResources.
Tenemos previsto agregar detalles de errores y escenarios de máquinas virtuales degradados a la tabla HealthResources de Azure Resource Graph, más adelante este año. Estos detalles garantizarán que esté correctamente informado sobre la causa y el impacto de los errores, de modo que pueda realizar una conmutación por error, un reinicio o acciones mitigadoras oportunas para evitar que afecten a los usuarios finales.
Vaya a Azure Resource Graph Explorer en Azure Portal para empezar a trabajar con cualquiera de las consultas KQL publicadas para la tabla HealthResources.
Métrica de disponibilidad de las máquinas virtuales en Azure Monitor
También nos complace anunciar la versión preliminar privada de una métrica de disponibilidad de las máquinas virtuales en Azure Monitor que no requiere configuración y que proporciona una experiencia bien organizada de supervisión y alertas de métricas.
Las métricas de Azure Monitor son excelentes para supervisar y analizar representaciones de series temporales de la disponibilidad de las máquinas virtuales con el fin de lograr una depuración rápida y sencilla, recibir alertas con ámbito sobre tendencias preocupantes, detectar indicadores tempranos de una disponibilidad degradada, ponerlas en correlación con otras métricas de la plataforma, etc.
La métrica permite hacer un seguimiento del pulso de las máquinas virtuales. Durante un comportamiento correcto, la métrica muestra el valor 1. En respuesta a las interrupciones de la disponibilidad de las máquinas virtuales, la métrica baja a 0 mientras dura el impacto. En el caso de que se produzca una interrupción en la infraestructura de Azure, se emiten valores nulos representados como una línea de puntos en el portal.
Figura 2: Captura de pantalla de la métrica de disponibilidad de las máquinas virtuales como se muestra en el Explorador de métricas de Azure Portal, con descensos ocasionales que reflejan interrupciones de la disponibilidad de las máquinas virtuales.
Hemos lanzado la versión preliminar privada de la métrica como primera fase de nuestro plan de lanzamiento y, actualmente, estamos recopilando comentarios de los clientes para mejorar aún más la oferta. Para el próximo año, tenemos previsto agregar detalles sobre los errores, como dimensiones de la métrica y registros de la plataforma, para poder emitir alertas con precisión sobre escenarios de error que pueden tener un gran impacto.
Próximamente
Las dos opciones de supervisión descritas en los párrafos anteriores son solo el principio de Project Flash. Seguiremos ampliando las soluciones actuales, mejorando la calidad de los datos y la atribución de los errores. Al mismo tiempo, estamos diseñando dos nuevas ofertas de supervisión para satisfacer sus necesidades de latencia y mitigación, a la vez que realizamos una fuerte inversión en la plataforma subyacente para que la detección de errores sea más resistente y completa.
Azure Event Grid para notificaciones instantáneas
La ejecución correcta de aplicaciones críticas para la empresa requiere un gran conocimiento de cualquier evento que afecte a la disponibilidad de las máquinas virtuales, de manera que se puedan desencadenar acciones correctoras de forma inmediata para evitar que afecte a los usuarios finales. Como ayuda para las operaciones diarias, tenemos previsto diseñar un mecanismo de notificación que aproveche la tecnología de baja latencia de Azure Event Grid. Esto le permitirá suscribirse a un tema del sistema de Event Grid y enrutar los eventos con ámbito a través de controladores de eventos a cualquier herramienta posterior de forma instantánea.
Automatización y adaptación de directivas de recuperación de la plataforma
Teniendo en cuenta las numerosas inversiones en curso para mejorar la experiencia de supervisión de la disponibilidad de las máquinas virtuales, Project Flash pretende darle aún más capacidad proporcionándole botones para personalizar las directivas de recuperación desencadenadas por la plataforma, en respuesta a los casos de interrupción de la disponibilidad de las máquinas virtuales.
Uno de estos botones que estamos diseñando es para poder elegir no participar en el proceso de recuperación del servicio para máquinas virtuales de instancia única, en respuesta a un conjunto específico de interrupciones inesperadas de la disponibilidad. Este botón estará disponible en el portal o en el momento de implementar la máquina virtual, y se puede actualizar dinámicamente. Tenga en cuenta que el uso de esta característica dejará sin efecto los acuerdos de nivel de servicio habituales para la disponibilidad de las máquinas virtuales de Azure.
En el futuro, estudiaremos la introducción de botones para rechazar también otras directivas de recuperación aplicables (por ejemplo, Migración en vivo o Tardigrade), para asegurar que pueda adaptarse fácilmente a sus necesidades de mitigación en constante cambio.
Inversión continua en la calidad de la plataforma
Aunque la primera fase está diseñada para satisfacer sus necesidades actuales de observabilidad, seguimos centrados en nuestro objetivo a largo plazo de ofrecer una experiencia de observabilidad de primer nivel en torno a la disponibilidad de las máquinas virtuales. Estamos muy entusiasmados con todas las mejoras en los datos y los avances tecnológicos que van a contribuir a esta experiencia; por eso, queremos compartir un breve avance de la hoja de ruta de las inversiones previstas:
- Detección y atribución de errores: seguimos trabajando en el desarrollo de la infraestructura subyacente para detectar y atribuir errores de forma precisa e instantánea, de modo que podamos reducir los informes con estados que faltan o se desconocen, emitir detalles útiles sobre los errores y controlar la personalización de la recuperación de la plataforma. Esta sigue siendo nuestra principal área de inversión, en la que seguimos trabajando en cada ciclo.
- Automatización del análisis de la causa principal (RCA): tenemos previsto implementar mecanismos sencillos de seguimiento del tiempo de inactividad de cada máquina virtual, junto con la creación y emisión automáticas de instrucciones detalladas para el análisis RCA del tiempo de inactividad, con el fin de reducir el seguimiento manual y el abandono por su parte.
- Integración de operaciones de inteligencia artificial (AIOps): queremos aprovechar los enormes avances que se están realizando en AIOps en todo Microsoft, para permitir la obtención de información inteligente y la detección y el diagnóstico de anomalías en los numerosos puntos de datos sobre la disponibilidad de las máquinas virtuales.
- Experiencia de usuario centralizada y cohesiva: somos conscientes de que una consecuencia de nuestro enfoque a corto plazo es que, en nuestros diferentes servicios, tenemos varias herramientas de supervisión, alertas y recuperación, lo que puede dar lugar a una experiencia confusa y dispar. Este es un problema que tenemos previsto resolver con la fase final. Nuestro objetivo principal es proporcionar a los usuarios finales acceso a representaciones claras y necesarias de la disponibilidad de las máquinas virtuales, consolidadas en Azure Monitor y clasificadas según patrones de uso comunes para la detectabilidad, la facilidad de uso y la incorporación intuitiva.
Más información
Esta lista no es exhaustiva, ya que tenemos varias mejoras previstas dentro de nuestra estrategia a largo plazo. Como recordatorio, nuestra intención con Project Flash es hacer que la supervisión de la disponibilidad de las máquinas virtuales sea muy intuitiva, completa y fluida, de modo que siempre esté preparado e informado sobre los cambios de estado de las cargas de trabajo y, en definitiva, para que pueda mantener sus propios acuerdos de nivel de servicio y promesas comerciales.
Seguiremos compartiendo las novedades sobre Project Flash en entradas de blog como esta, para asegurarnos de que esté al día de lo más reciente. Permanezca atento.