Jump to section

¿Qué es Jaeger?

Copiar URL

Jaeger es un sistema de software open source que sirve para detectar operaciones entre los servicios distribuidos. Se utiliza para supervisar entornos complejos de microservicios y solucionar los problemas asociados a ellos.

Dado que Jaeger es un proyecto open source, se beneficia de una comunidad de cientos de colaboradores. Jaeger se basa en el uso de herramientas de instrumentación y de API de OpenTracing que no dependen de ningún proveedor en particular.

En 2015, la empresa de transporte compartido Uber desarrolló Jaeger como un proyecto open source. En 2017, la fundación Cloud Native Computing Foundation (CNCF) lo aceptó como un proyecto "en incubación" y, en 2019, pasó a estar dentro de la categoría de proyectos "graduados".

Jaeger presenta las solicitudes de ejecución como rastreos. Un rastreo muestra la ruta de ejecución/datos que se genera a través de un sistema. 

Este se compone de uno o varios intervalos, que son unidades lógicas de trabajo en Jaeger. Todos los intervalos incluyen el nombre de la operación, la hora de inicio y la duración. Los intervalos pueden agruparse y ordenarse.

Jaeger incluye varios elementos que funcionan en conjunto para recopilar, almacenar y visualizar intervalos y rastreos.

Jaeger Client incluye implementaciones específicas del lenguaje de la API de OpenTracing para el rastreo de entornos distribuidos. Estas pueden utilizarse de forma manual o con varios marcos open source.

Jaeger Agent es un daemon de red que está al tanto de los intervalos que se envían a través del Protocolo de datagramas de usuario. El agente debe colocarse en el mismo host que la aplicación instrumentada. Por lo general se implementa mediante un sidecar en entornos de contenedores, como Kubernetes.

Jaeger Collector recibe los intervalos y los coloca en una cola para procesarlos.

Los recopiladores requieren un backend de almacenamiento permanente, así que Jaeger también cuenta con un mecanismo con capacidad de conexión para el almacenamiento de los intervalos. 

Query es un servicio que recupera los rastreos del almacenamiento.

Jaeger Console es una interfaz de usuario que le permite visualizar los datos que se obtienen del rastreo de entornos distribuidos.

Jaeger se instala de forma predeterminada como parte de Red Hat® OpenShift® Service Mesh, que incluye una implementación de Istio (una malla de servicios open source).

Los beneficios de esta implementación de rastreo de entornos distribuidos son muchos y variados. Jaeger se integra con Kiali, una consola con capacidad de observación para Istio. El backend de Jaeger está diseñado para ofrecer mayor escalabilidad sin ningún punto único de falla. Jaeger puede conectar los datos provenientes de los distintos elementos para crear un rastreo completo e integral. También es compatible con las versiones anteriores de Zipkin.

Articulos relacionados

ARTÍCULO

Los microservicios respaldan la integración de la TI en el sector de la salud

Los microservicios permiten que los desarrolladores de varios sectores, como el de la salud, creen aplicaciones compuestas por servicios sin conexión directa, lo cual facilita los procesos de desarrollo, prueba, implementación y actualización.

ARTÍCULO

¿Qué son los microservicios?

Los microservicios son un tipo de arquitectura que permite diseñar aplicaciones cuyos elementos funcionan de forma independiente pero coordinada.

ARTÍCULO

¿Qué es una malla de servicios?

Una malla de servicios es una capa de infraestructura que se integra con las aplicaciones y documenta la interacción entre los servicios, lo cual permite optimizar la comunicación y evitar el downtime con facilidad.