简介

Jaeger 是Uber推出的一款开源分布式追踪系统,兼容OpenTracing API。分布式追踪系统用于记录请求范围内的信息。例如,一次远程方法调用的执行过程和耗时。是我们排查系统问题和系统性能的利器。
分布式追踪系统种类繁多,但是核心步骤有三个:代码埋点,数据存储和查询展示。
以上几句描述都是我copy的,所以大家想要对Jaeger有更加深入的了解,可以参阅这篇文章Jaeger 分布式追踪系统模块分析,能让你对Jaeger有一个简单的认识。
当然我们还要记得APM的三大模块分别是集中式日志系统,集中式度量系统和分布式全链接追踪系统。
而Jaeger属于的就是追踪系统,度量系统我们则会使用prometheus,日志系统一般则是elk。

安装

docker run -d -e COLLECTOR_ZIPKIN_HTTP_PORT=9411 -p5775:5775/udp -p6831:6831/udp -p6832:6832/udp \-p5778:5778 -p16686:16686 -p14268:14268 -p9411:9411 jaegertracing/all-in-one:latest

架构

Jaeger组成

  • Jaeger Client - 为不同语言实现了符合 OpenTracing 标准的 SDK。应用程序通过 API 写入数据,client library 把 trace 信息按照应用程序指定的采样策略传递给 jaeger-agent。

  • Agent - 它是一个监听在 UDP 端口上接收 span 数据的网络守护进程,它会将数据批量发送给 collector。它被设计成一个基础组件,部署到所有的宿主机上。Agent 将 client library 和 collector 解耦,为 client library 屏蔽了路由和发现 collector 的细节。

  • Collector - 接收 jaeger-agent 发送来的数据,然后将数据写入后端存储。Collector 被设计成无状态的组件,因此您可以同时运行任意数量的 jaeger-collector。

  • Data Store - 后端存储被设计成一个可插拔的组件,支持将数据写入 cassandra、elastic search。

  • Query - 接收查询请求,然后从后端存储系统中检索 trace 并通过 UI 进行展示。Query 是无状态的,您可以启动多个实例,把它们部署在 nginx 这样的负载均衡器后面。

分布式追踪系统发展很快,种类繁多,但核心步骤一般有三个:代码埋点,数据存储、查询展示

jaeger安装和架构相关推荐

  1. 【分布式系统篇】链路追踪之Jaeger安装使用入门

    目录 1. 前世 2. Jaeger与Zipkin 2.1 关于Jaeger 3. 安装 4. 使用 4.1 启动一个应用 4.2 发送请求 4.2 Jaeger查看服务架构 4.3 查看一个trac ...

  2. linux使用交叉工具链产生的程序怎么下载到mini2440里,Ubuntu安装ARM架构GCC工具链(ubuntu install ARM toolchain)最简单办法...

    一.安装ARM-Linux-GCC工具链 只需要一句命令: sudo apt-get install gcc-arm-linux-gnueabi 前提是你的Ubuntu系统版本是官网支持的最新的版本, ...

  3. Web服务 源码编译安装LAMP架构

    Web服务 源码编译安装LAMP架构 一.LAMP架构 1.LAMP架构是什么 2.各组件的主要作用 二.编译安装Apache httpd服务 1.关闭防火墙,将安装Apache所需软件包传到/opt ...

  4. Genymotion模拟器安装ARM架构编译应用失败解决方案

    我们在安装一些应用到Genymotion模拟器会提示:adb: failed to install xx.apk: Failure [INSTALL_FAILED_NO_MATCHING_ABIS: ...

  5. 链路追踪之Jaeger安装与使用

    Jaeger 介绍: 官方给出的特性介绍: 分布式上下文传递 分布式事务监控 根本原因分析 服务依赖分析 性能.延迟优化 可扩展性 Jaeger的后端为无单点故障设计,可随时根据需要进行扩展:uber ...

  6. MacOS Apple M1 安装ARM架构的JDK及动态切换版本

    JDK下载安装: 咱就是说,ARM版本的JDK就是一个字,真特么快,想变快吗,赶紧下载叭!! 1.下载地址:https://www.azul.com/downloads/?package=jdk 筛选 ...

  7. docker ubuntu安装python_BAT架构师手把手教你如何使用Docker安装GPU版本caffe2

    引言 第一步 安装Docker SET UP THE REPOSITORY sudo apt-get remove docker docker-engine docker.io containerd ...

  8. win10系统下利用QEMU安装ARM架构的银河麒麟桌面操作系统V10

    目录 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 目录 前言 一.工具准备 二.安装 1.安装QEMU 2.安装虚拟机 3.下次启动虚拟机 4.主机与虚拟机传送文件 总 ...

  9. U盘安装mips架构的Deepin(或UOS)系统及配置适用的源

    安装环境 请确保您的电脑满足以下的配置要求,如果您的电脑配置低于以下要求,将无法完美地体验深度操作系统: 内存:至少 2G 内存(RAM),4G 以上是达到更好性能的推荐值 硬盘:至少 25 GB 的 ...

最新文章

  1. mysql-mybatis 8.0版本配置====解决could not create connection to database server.
  2. 042_JDK的Map接口
  3. matlab 开 闭 代码,C++中的MATLAB函数〔闭锁〕
  4. javascript 之----eval的用法
  5. readonly和const的区别
  6. pythonset是什么类型的游戏_Python集合(set)类型的操作
  7. linux脚本ls输出到变量中,bash – 将命令输出的错误消息存储到shell变量中
  8. sakura计算机谱子,【14.08.13自拟】SAKURA急求生物股长的简谱
  9. UED、UCD、UE、UI、交互设计概念
  10. 第1章 别让医生欺负你
  11. 【Spring第四篇】DI注入以及c、p命名空间
  12. 小米造富神话虚实:平均年薪16万 470亿元期权咋分
  13. 3. Magento 模板制作
  14. 2020年 高教社杯 全国大学生数学建模竞赛【论文格式规范】
  15. Tor源码 -- 启动模块
  16. 【历史上的今天】1946年2月14日:世界上第一台计算机ENIAC诞生
  17. 初创公司需不需要产品经理?
  18. 如何把视频转换成mp3格式
  19. Python IDE、IDLE 和 Tcl/Tk
  20. 一键构建云上高可用蛋白质结构预测平台

热门文章

  1. 如何用C++打印一个正三角形
  2. 要画分子结构图,就用ChemDraw
  3. 机器学习编程作业ex7(matlab/octave实现)-吴恩达coursera K-means和PCA
  4. 吴恩达机器学习ex7 python实现
  5. 搭建属于自己的数字IC EDA环境(五):搭建FPGA自动化环境(Linux下vivado Tcl脚本自动化开发),业余IC设计流程与通路
  6. 什么是数学-柯郎和罗宾 读书笔记
  7. linux 后台不挂断地运行命令
  8. php ckeditor 上传图片,CKEditor图片上传的PHP实现
  9. [P2600][ZJOI2008]瞭望塔(半平面交)
  10. 周立功示波器ZDS2024Plus与上位机连接步骤