Video Summary and Transcription
Esta charla proporciona una introducción a la Observabilidad sin servidor y los SLOs, explicando el concepto de los SLOs y su dependencia de las transformaciones. Destaca la interdependencia entre los SLOs, los SLAs y los SLIs y discute la importancia de los SLOs bien definidos. La charla también demuestra cómo crear y monitorear los SLOs y las reglas de alerta, enfatizando los beneficios de las alertas de tasas de consumo para reducir la fatiga de alerta y mejorar la experiencia del usuario.
1. Introducción a la Observabilidad sin servidor y SLOs
Hola, soy Diana Toda. Estoy aquí para presentar la Observabilidad sin servidor donde los SLOs se encuentran con las transformaciones. Discutiremos el concepto, la dependencia de los SLOs en las transformaciones, la arquitectura de transformación de SLOs, la alerta de tasa de consumo y tendremos una breve demostración. Los indicadores de nivel de servidor son una medida del nivel de servicio, definidos como una proporción de elementos buenos sobre el total de eventos. Los objetivos de nivel de servicio son los valores objetivo para un nivel de servicio, y el presupuesto de errores es la cantidad tolerada de errores.
Hola, DevOps.js. Soy Diana Toda. Soy una SRE en Elastic, y estoy aquí para presentar la Observabilidad sin servidor donde los SLOs se encuentran con las transformaciones. Así que vamos a hablar sobre el concepto, la dependencia de los SLOs en las transformaciones, la arquitectura de transformación de SLOs, la alerta de tasa de consumo y vamos a tener una breve demostración. Así que un poco de contexto. Con la migración de Elastic a serverless, tuvimos la necesidad de idear una nueva idea en torno a las agregaciones de resumen. Elastic tiene una infraestructura de múltiples clústeres y necesitábamos alejarnos de las agregaciones de resumen y búsqueda debido a algunas de sus limitaciones. Entonces comenzamos a crear las transformaciones.
Comencemos con algunas definiciones. Los indicadores de nivel de servidor, como probablemente ya saben, son una medida del nivel de servicio proporcionado. Por lo general, se definen como una proporción de elementos buenos sobre el total de eventos, y van desde 0 hasta 100%. Algunos ejemplos son la disponibilidad, el rendimiento, la latencia de las solicitudes, las tasas de error. Los objetivos de nivel de servicio son un valor objetivo para un nivel de servicio medido por un SLI. Por encima del umbral, el servicio cumple con los requisitos. Por ejemplo, el 95% de las solicitudes exitosas se sirven en menos de 100 milisegundos. El presupuesto de errores se define como 100% menos el SLO. Por lo tanto, es la cantidad de errores que se tolera, y la tasa de consumo es la velocidad a la que estamos consumiendo el presupuesto de errores durante un período de tiempo definido. Es muy útil para
2. Codependencia entre SLOs, SLAs y SLIs
Entonces tenemos una codependencia entre SLOs, SLAs y SLIs. ¿Cómo reconocemos un buen SLO versus un mal SLO? Un SLO bien definido se enfoca en un aspecto crucial de la calidad del servicio, proporciona claridad, medibilidad y alineación con las expectativas del usuario. La arquitectura de SLO se basa en transformaciones para resumir los datos fuente en índices centrados en entidades. Las transformaciones te permiten convertir índices existentes y obtener nuevos conocimientos y análisis. La alerta de tasa de consumo calcula la velocidad a la que los SLOs están fallando con el tiempo, lo que ayuda a priorizar los problemas. Ha reducido la fatiga de alerta, mejorado la experiencia del usuario y tiene una buena precisión. Pasemos a la demostración donde puedes crear y monitorear SLOs.
alertando antes de agotar el presupuesto de errores. Entonces tenemos una codependencia entre SLOs, SLAs y SLIs. Entonces, ¿cómo reconocemos un buen SLO versus un mal SLO? Un mal SLO es vago, subjetivo, carece de métricas cuantificables, tiene un umbral indefinido y ninguna ventana de observación. Un buen SLO es específico y medible, centrado en el usuario, cuantificable y alcanzable, y tiene un marco de tiempo definido. Entonces, un SLO bien definido se enfoca en un aspecto crucial de la calidad del servicio, proporciona claridad, medibilidad y alineación con las expectativas del usuario, que son elementos esenciales para una monitorización y evaluación efectivas de la confiabilidad del servicio. La arquitectura del SLO, básicamente, se basa en la superficie de transformación para resumir los datos fuente en índices de resumen. Para admitir un grupo por o la función de partición, Elastic ha agregado una segunda capa que resume los datos de resumen en un índice centrado en entidades para cada SLO. Este índice también alimenta la experiencia de búsqueda para permitir a los usuarios buscar y ordenar por cualquier dimensión del SLO. Entonces, ¿qué son las transformaciones? Las transformaciones son tareas persistentes que te permiten convertir los índices de búsqueda existentes de Elastic en índices resumidos, que brindan oportunidades para nuevos conocimientos y análisis. Por ejemplo, puedes usar transformaciones para pivotar tus datos en índices centrados en entidades que resumen el comportamiento de los usuarios, sesiones u otras entidades en tus datos. O puedes usar transformaciones para encontrar el último documento entre todos los documentos que tienen una clave única específica.
La alerta de tasa de consumo calcula la velocidad a la que los SLOs están fallando en múltiples ventanas de tiempo, es menos sensible a las fluctuaciones a corto plazo al centrarse en desviaciones sostenidas, y puede darte una indicación de cuán severamente se está degradando el servicio y ayuda a priorizar múltiples problemas al mismo tiempo. Aquí tenemos un gráfico de alerta de tasa de consumo con múltiples ventanas. Entonces tenemos dos ventanas para cada severidad, una corta y una larga. La ventana corta es 1/12 de la ventana larga, por lo que cuando la tasa de consumo para ambas ventanas excede el umbral, se activa la alerta. Los beneficios de la alerta de tasa de consumo son que reduce la fatiga de alerta, mejora la experiencia del usuario, tiene un marco de alerta flexible y una buena precisión. La desventaja en este momento es que tienes muchas opciones de configuración, pero esto se mejorará en futuras versiones de Elasticsearch. Así que es hora de la demostración. Aquí hay una demostración que he preparado para ti sobre las transformaciones. Puedes ver cómo crear las transformaciones allí. Puedes verificar los datos detrás de ellas. Tienes estadísticas, JSON, mensajes, y una vista previa. Y puedes verificar el estado de cada transformación. Puede estar degradado, saludable, o incluso fallido. Si tienes algún problema, puedes solucionarlo directamente desde esta pantalla. Así que intentemos crear algunos SLOs. Vas a observability, SLOs y creas un nuevo SLO. Eliges el tipo de índice que deseas, el índice. En mi caso, usaré un índice serverless y un campo de tiempo de siete días. Agregas tu filtro de consulta de interés, la consulta buena que deseas para tu SLO y la consulta total. Después, tienes una selección interesante aquí para particionar por.
3. Creación de SLOs y Reglas de Alerta
Estableces tus objetivos y el SLO objetivo para una ventana de tiempo específica. Agregas un título, descripción y etiquetas para identificar tu SLO. Eliges una regla de tasa de consumo y la configuras con varias opciones. Guardas la regla y buscas tu SLO. El panel proporciona una visión general, alertas y opciones para editar la disponibilidad o crear nuevas reglas de alerta.
Por ejemplo, el proyecto serverless ID SLO, o tipo de clúster, etc. Estableces tus objetivos para la ventana de tiempo, dependiendo de lo que quieras hacer, y el SLO objetivo, digamos, por ejemplo, 99%. Agregas el título a tu SLO, una breve descripción, lo que hace. Y básicamente, puedes agregar algunas etiquetas para identificar mejor tu SLO. Y si quieres elegir una regla de tasa de consumo, haces clic en la marca allí, y ahí lo tienes. Tienes tu SLO, que te solicita inmediatamente crear una regla de tasa de consumo. Tienes muchas opciones para definir la hora, los grupos de acción, etc. Y puedes seleccionar una acción dependiendo de dónde quieras recibir alertas. Guardas la regla y luego comencemos a buscarla. Puedes comenzar a escribir el nombre de tu SLO. Y como puedes ver, tengo una lista de mis SLO agrupados por el ID del proyecto serverless. Y en este panel, en la pantalla, puedes ver la visión general, las alertas. Puedes ir a acciones, editar la disponibilidad o crear una nueva regla de alerta. Así que resumiendo, algunos puntos clave para esto es que necesitas mejorar continuamente los SLOs, las transformaciones y las tasas de consumo. Necesitas adoptar las herramientas y métricas adecuadas, y necesitas participar en la comunicación entre equipos. Y necesitas tener un acuerdo entre el liderazgo, el cliente, los equipos de SRE o DevOps. Así que aquí hay algunos recursos que he proporcionado para que puedas crear los SLOs, las transformaciones y las alertas de tasa de consumo. Muchas gracias por ver. Que tengas un excelente día en la conferencia DevOpsJS.
Comments