Si eres como yo y tienes un coche antiguo, probablemente hayas tenido esta experiencia. Estás conduciendo por la carretera y ves esa temida luz de revisión del motor. Puede que estés pensando: «Ok, esto es malo. Voy a necesitar una grúa, quizás incluso una reparación», y puede que tengas razón. Pero imagina el mismo escenario en el que no tuvieras esa alerta del problema y simplemente siguieras conduciendo. ¿Qué pasaría? Habría humo saliendo por la parte trasera. Probablemente necesitarías una grúa y tendrías una reparación aún más costosa. Esa misma analogía se aplica a las Señales Doradas de SRE. Su propósito es alertarte de un problema antes de que se vuelva grave. Vamos a darle una definición formal a estas señales.
Índice
Las Señales Doradas de SRE
Ahora bien, estas señales son para tus aplicaciones de microservicios, y la primera métrica que debes tener en cuenta es la latencia. Esto se refiere al tiempo entre cuando haces una solicitud y realmente obtienes una respuesta. Por ejemplo, con una aplicación web puede ser de 200 a 400 milisegundos, y para una llamada a una API puede ser una fracción de eso, digamos, 20 milisegundos.
La siguiente métrica es los errores. Los errores ocurren, eso es algo normal. Pero si hay demasiados, si hay un aumento repentino, puede indicar un problema. Además, también debes tener en cuenta que no todos los errores son iguales. Por ejemplo, un error 500, donde el servidor está caído, es mucho más grave que un error 400, que significa que simplemente puedes volver a intentar y potencialmente el problema se resolverá por sí mismo.
T es por el tráfico. El tráfico se refiere a la cantidad de solicitudes que llegan en comparación con tus expectativas.
Y finalmente, S es por saturación. La saturación es la carga real en comparación con tu capacidad esperada. Puedes pensarlo como el cuenta revoluciones de tu coche. Tiene una línea roja, y cuando está sobresaturado, estás recibiendo más solicitudes de las que realmente puedes manejar.
Ahora que tenemos esa definición clara, veamos un ejemplo de una arquitectura de microservicios. Tenemos varias aplicaciones web funcionando en una nube pública, y se comunican con un servicio de respaldo. A su vez, el servicio de respaldo depende de otro microservicio para manejar la autenticación. El servicio de respaldo utiliza un servicio de transacción para obtener la información solicitada por el usuario, y a su vez, depende de un microservicio de datos, que puede estar envolviendo una base de datos como DB2 o MySQL. La idea es que estas cajas aquí son envoltorios de servicios específicos para microservicios, y el usuario no tiene que preocuparse por la implementación subyacente.
Desde la perspectiva de operaciones y DevOps, hay compromisos a tener en cuenta. Para los desarrolladores, les gustan mucho los microservicios porque les permite elegir la mejor tecnología. Esto se debe a que los microservicios encapsulan toda la implementación y ellos simplemente tienen una API. Por otro lado, más opciones tecnológicas significa que se necesita más expertos en el equipo de operaciones para poder diagnosticar, extraer registros y encontrar cuál es la causa raíz. Al equipo de desarrollo le gusta que se puedan hacer despliegues de microservicios con mayor frecuencia. Eso significa que pueden hacer despliegues según una programación que sea conveniente para el desarrollo, en lugar de una programación de producción. Pero eso significa potencialmente más cambios de los que el equipo de operaciones tiene que estar al tanto. Ahora, el cambio en sí mismo no es algo malo. Podría ser que haya cambios más frecuentes y sean más pequeños, y así cuando tienes que diagnosticar un problema, en realidad se vuelve más fácil.
Usando las Señales Doradas de SRE para diagnosticar problemas
Entonces, ahora veamos cómo podemos utilizar las cuatro señales doradas de SRE para diagnosticar un posible problema. Digamos, por ejemplo, que el usuario final está informando errores de tiempo de respuesta. En términos de las señales doradas de SRE, eso se considera un error de latencia. Por lo tanto, buscas los servicios de los que depende directamente y te das cuenta de que estos dos están dentro de las especificaciones en cuanto a latencia, errores, tráfico y saturación. Sin embargo, el servicio de transacción está reportando problemas de latencia y errores. Y yendo un poco más hacia abajo en la línea, ves que el servicio de datos está sobresaturado. Solo monitoreando estas cuatro señales diferentes, puedes aislar la posible causa y llegar a la causa raíz más rápidamente.
Pero para hacerlo de una forma más organizada, puedes utilizar lo que se conoce como un panel de APM, o manejo de programas de aplicación. Ese panel incluye vistas que encapsulan las cuatro señales doradas de SRE. El equipo de operaciones puede utilizarlo para monitorear problemas y poder resolverlos antes de que se vuelvan más graves. Pero no se limitan a eso. Por ejemplo, el equipo de desarrollo podría tener sus propios paneles personalizados solo para sus servicios. Y así, cuando tienen un problema, potencialmente incluso pueden saberlo antes de que el equipo de operaciones informe un problema. Y eso, en última instancia, podría significar que se reduce el tiempo promedio de resolución y se encuentra la causa raíz más rápidamente, o en términos de un coche, eso significa que los usuarios verán menos luces de revisión del motor.
Tablero de APM y Dashboards Personalizados
En resumen, las Señales Doradas de SRE son métricas clave que te alertan sobre problemas en tus aplicaciones de microservicios antes de que se conviertan en graves. Estas señales incluyen latencia, errores, tráfico y saturación. Al monitorear estas señales de forma regular, puedes diagnosticar problemas potenciales y llegar a la causa raíz más rápidamente. Además, utilizar un panel de APM y dashboards personalizados puede ayudar a los equipos de operaciones y desarrollo a tener una visión más clara y organizada de las métricas, lo que les permite abordar los problemas de manera eficiente y reducir el tiempo de resolución.
Preguntas frecuentes (FAQs)
A continuación, se presentan algunas preguntas frecuentes sobre las Señales Doradas de SRE:
1. ¿Qué debo hacer si encuentro un problema en una de las señales doradas?
Si identificas un problema en una de las señales doradas, debes investigar más a fondo esa área específica del sistema para determinar la causa raíz del problema. Puedes utilizar herramientas de monitoreo, registros y análisis para obtener más información y tomar las medidas necesarias para solucionar el problema.
2. ¿Debo monitorear todas las señales doradas por igual?
Si bien todas las señales doradas son importantes, es posible que algunas sean más críticas para tu sistema que otras. Por lo tanto, es recomendable dar prioridad a las señales que tienen un impacto significativo en la experiencia del usuario o en la disponibilidad del sistema. Sin embargo, no debes ignorar ninguna señal, ya que todas pueden proporcionar información valiosa sobre el rendimiento y la salud general del sistema.
3. ¿Cómo puedo mejorar la capacidad de diagnóstico utilizando las señales doradas de SRE?
Para mejorar la capacidad de diagnóstico, es útil establecer umbrales o límites para cada señal dorada. De esta manera, puedes recibir alertas o notificaciones cuando alguna de las señales supere esos límites, lo que te permitirá identificar rápidamente los problemas y tomar medidas para solucionarlos.
Resumen del artículo
Métrica | Definición |
---|---|
Latencia | Tiempo entre una solicitud y una respuesta |
Errores | Número y gravedad de los errores |
Tráfico | Cantidad de solicitudes en comparación con las expectativas |
Saturación | Carga del sistema en comparación con la capacidad esperada |
Preguntas frecuentes (FAQs)
1. ¿Qué debo hacer si encuentro un problema en una de las señales doradas?
Si identificas un problema en una de las señales doradas, debes investigar más a fondo esa área específica del sistema para determinar la causa raíz del problema. Puedes utilizar herramientas de monitoreo, registros y análisis para obtener más información y tomar las medidas necesarias para solucionar el problema.
2. ¿Debo monitorear todas las señales doradas por igual?
Si bien todas las señales doradas son importantes, es posible que algunas sean más críticas para tu sistema que otras. Por lo tanto, es recomendable dar prioridad a las señales que tienen un impacto significativo en la experiencia del usuario o en la disponibilidad del sistema. Sin embargo, no debes ignorar ninguna señal, ya que todas pueden proporcionar información valiosa sobre el rendimiento y la salud general del sistema.
3. ¿Cómo puedo mejorar la capacidad de diagnóstico utilizando las señales doradas de SRE?
Para mejorar la capacidad de diagnóstico, es útil establecer umbrales o límites para cada señal dorada. De esta manera, puedes recibir alertas o notificaciones cuando alguna de las señales supere esos límites, lo que te permitirá identificar rápidamente los problemas y tomar medidas para solucionarlos.
Esperamos que este artículo te haya proporcionado información valiosa sobre las Señales Doradas de SRE y cómo utilizarlas para mejorar la salud y el rendimiento de tus aplicaciones de microservicios. Si deseas obtener más información sobre el tema, te animamos a que consultes nuestros otros artículos relacionados.
¡Hasta la próxima!
¿Te ha resultado útil??
0 / 0
Hola, somos Mila Jiménez y César Sánchez. Dos apasionados de la ciberseguridad con muchos años de experiencia. Hemos trabajado en muchas empresas del mundo TI y ahora nos apetece compartir nuestro conocimiento con cualquiera que lo necesite.
¡Si te gusta nuestro contenido puedes invitarnos a un café AQUÍ!