Maximizando la Observabilidad del Sistema en la Nube para el Éxito
Aprende a invertir sabiamente en la observabilidad para sistemas en la nube.
― 7 minilectura
Tabla de contenidos
La Observabilidad en sistemas en la nube se trata de entender qué está pasando en esos sistemas recogiendo y analizando diferentes tipos de Datos. Para sacar el máximo provecho de la observabilidad, las organizaciones tienen que saber qué información es más valiosa y cómo conseguirla de manera efectiva. Este artículo va a hablar sobre algunos desafíos comunes de establecer la observabilidad en las organizaciones y cómo superarlos usando el análisis de Retorno de Inversión (RoI).
¿Qué es la Observabilidad?
La observabilidad significa poder ver qué está sucediendo en tus sistemas recogiendo Señales-como registros, Métricas y trazas-de los sistemas que estás monitoreando. Estas señales te ayudan a tomar decisiones informadas y a actuar cuando es necesario.
En sistemas en la nube, que a menudo usan contenedores y microservicios, la observabilidad es crucial ya que estos sistemas están compuestos de muchas partes pequeñas que pueden cambiar frecuentemente. El desafío es saber qué señales valen la pena rastrear y cómo recopilarlas eficientemente.
La Necesidad de Inversión
Para obtener estos conocimientos, las organizaciones deben invertir tiempo y recursos. Esta inversión puede tomar diferentes formas y puede llevar a varios tipos de retornos. Por ejemplo, si una empresa invierte dinero y esfuerzo en establecer un buen sistema de observabilidad, puede ahorrar costos a largo plazo o permitir una entrega más rápida de nuevas características.
Cada inversión viene con sus costos. Aquí hay algunas áreas comunes donde las organizaciones necesitan gastar:
Fuentes: Esto implica incrustar código de seguimiento en el software. Esto puede requerir trabajo manual o el uso de herramientas que agreguen seguimiento automáticamente, lo que puede ralentizar tu sistema.
Agentes: Son programas que funcionan en segundo plano, recopilando y procesando los datos de tus sistemas. También necesitan actualizaciones y mantenimiento regulares.
Destinos: Esto se refiere a dónde se almacenan y procesan los datos recopilados. Los costos pueden variar ampliamente dependiendo de cómo se cobra por los datos-ya sea por número de eventos, almacenamiento o consultas.
Algunas organizaciones enfrentan la decisión de comprar soluciones prehechas o construir las suyas. Usar herramientas de código abierto puede ofrecer beneficios, como mejor seguridad y soporte comunitario, pero requiere un compromiso para mantenerse al día con las actualizaciones y mejoras.
El Concepto de RoI
RoI significa Retorno de Inversión. Cuando las organizaciones invierten en observabilidad, quieren saber qué beneficios obtendrán a cambio. Estos retornos pueden venir en varias formas, como:
Ahorros de Costos: Poder hacer más con menos recursos.
Desarrollo Más Rápido: Ayudar a los equipos a enviar características o correcciones más rápido.
Mejora de la Satisfacción del Cliente: Mantener a los clientes informados y felices durante un incidente.
Para entender los beneficios de la observabilidad, las organizaciones deben analizar sus sistemas actuales y cómo pueden mejorar.
De Metas a Conocimientos
Para que la observabilidad sea efectiva, las organizaciones necesitan definir metas claras. Estas metas pueden ser técnicas-como reducir el tiempo de inactividad-o relacionadas con negocios, como aumentar las ventas. Una vez que tienes una meta, puedes trabajar hacia atrás para determinar qué conocimientos necesitas rastrear.
Por ejemplo, si tu meta es acelerar la recuperación de fallas del sistema, querrás conocimientos que resalten las tasas de error y la duración del tiempo de inactividad. Si el objetivo es mejorar la experiencia del cliente, podrías enfocarte en métricas relacionadas con los tiempos de respuesta.
¿Qué Hace que los Conocimientos sean Accionables?
Un conocimiento accionable es aquel que te permite tomar acción. Por ejemplo, si recibes un mensaje de error vago, no te ayuda. Sin embargo, si un conocimiento te dice la causa exacta del error y cómo resolverlo, eso es accionable.
Los conocimientos pueden ser para humanos-como ingenieros mirando tableros-o para máquinas-sistemas automatizados que monitorean datos y activan acciones cuando es necesario.
Identificando Conocimientos Útiles
Para identificar conocimientos útiles, ayuda saber en qué señales deberías enfocarte. Esto se puede hacer acordando los objetivos con tu equipo y trabajando hacia atrás desde esas metas. Algunas metas comunes a considerar incluyen:
- Reducir el tiempo que lleva reparar un sistema después de una falla.
- Acelerar el proceso de desarrollo enviando más características.
- Optimizar el uso de recursos basado en datos de rendimiento.
Tener metas claras asegura que tus esfuerzos de observabilidad estén enfocados y sean valiosos, en vez de ser una carga adicional de costos.
Elegir las Señales Correctas
Ahora que sabes qué conocimientos son necesarios, el siguiente paso es seleccionar las señales correctas para esos conocimientos. La elección de señales debe tener en cuenta su costo, riesgos y el valor que aportan.
Costos de las Señales
Diferentes tipos de señales vienen con diferentes costos y desafíos:
Registros: Estos a menudo son fáciles de generar pero pueden crear mucho ruido y aumentar los requisitos de almacenamiento. Los registros son útiles pero pueden ser abrumadores si son demasiados y no están bien organizados.
Métricas: Estos son indicadores clave de desempeño que pueden proporcionar información valiosa. Sin embargo, recopilar demasiadas métricas puede conducir a la confusión y al desperdicio de recursos. Es importante enfocarse en métricas que realmente se usarán en informes o alertas.
Trazas: Estas ayudan a rastrear el flujo de solicitudes a través de los sistemas. Pueden ser complejas, especialmente en sistemas donde las solicitudes pueden tomar múltiples caminos. Un rastreo efectivo puede proporcionar información sobre qué tan bien está funcionando un servicio.
Perfiles: El perfilado proporciona información sobre cómo se está ejecutando el código. Si bien es útil, requiere una gestión cuidadosa para asegurar que no ralentice el sistema o añada complejidad innecesaria.
Estrategias Efectivas para la Observabilidad
Al comenzar con la observabilidad, considera estos puntos clave:
Establecer Metas Claras: Colabora con todos los interesados relevantes para identificar qué metas debería tener el sistema de observabilidad.
Evaluar Costos y Retornos: Entiende las inversiones involucradas y cómo se traducirán en retornos. Comunica esto claramente a los interesados.
Comprar vs. Construir: Decide si crear tu propia solución ofrece una ventaja competitiva o si comprar una solución sería más beneficioso.
Utilizar Estándares Abiertos: Usar herramientas de código abierto y formatos estándar puede ayudar a evitar el bloqueo del proveedor y permite una integración y colaboración más fáciles.
Valorar las Trazas Distribuidas: En sistemas complejos, las trazas proporcionan más información que los registros por sí solos, así que considera esto como una prioridad.
Automatizar Cuando Sea Posible: Busca maneras de automatizar la recopilación y procesamiento de datos para hacer la observabilidad más eficiente y menos propensa a errores humanos.
Conclusión
Implementar un sistema de observabilidad es una inversión que puede generar beneficios significativos para las organizaciones. Al enfocarse en metas claras, conocimientos accionables y selección eficiente de señales, las empresas pueden crear un sistema que ofrezca un valor real. Es esencial que las organizaciones se comprometan a mantener estos sistemas e involucren a todas las partes interesadas en el proceso. La retroalimentación y experiencias compartidas pueden mejorar aún más el proceso de observabilidad y llevar a mejores resultados en general.
Título: Return on Investment Driven Observability
Resumen: Observability, in cloud native systems, is the capability to continuously generate and discover actionable insights, based on signals from the system under observation. How do you know what insights are the most useful ones? What signals should you be using to generate insights? This article discusses challenges arising when rolling out observability in organizations and how you can, based on Return on Investment (RoI) analysis, address said challenges.
Autores: Michael Hausenblas
Última actualización: 2023-03-23 00:00:00
Idioma: English
Fuente URL: https://arxiv.org/abs/2303.13402
Fuente PDF: https://arxiv.org/pdf/2303.13402
Licencia: https://creativecommons.org/licenses/by/4.0/
Cambios: Este resumen se ha elaborado con la ayuda de AI y puede contener imprecisiones. Para obtener información precisa, consulte los documentos originales enlazados aquí.
Gracias a arxiv por el uso de su interoperabilidad de acceso abierto.
Enlaces de referencia
- https://glossary.cncf.io/observability/
- https://opentelemetry.io/docs/
- https://www.investopedia.com/terms/r/returnoninvestment.asp
- https://github.com/readme/guides/open-source-observability/
- https://ai.googleblog.com/2021/09/discovering-anomalous-data-with-self.html
- https://www.splunk.com/en_us/blog/devops/using-observability-to-reduce-mttr.html
- https://newrelic.com/devops/how-to-reduce-mttr
- https://www.elastic.co/blog/elasticon-global-observability
- https://www.honeycomb.io/blog/understanding-distributed-tracing-message-bus
- https://www.polarsignals.com/blog/posts/2023/03/21/designing-your-indexes/