链路追踪 - Jaeger (/ˈdʒɛgər/
)
作用
- 它是用来监视和诊断基于微服务的分布式系统。
- 用于服务依赖性分析,辅助性能优化。
主要特性
- 高扩展性(按照业务,按需扩展)
- 原生支持 OpenTracing
- 可观察性
术语 Span
- Jaeger 中的逻辑工作单元。
- 具有操作名称,操作的开始时间和持续时间。
- 跨度可以嵌套并排序以建立因果关系模型。
术语 Span 包含的对象
- Operation name: 操作名称(也可以称作 Span name)
- Start timestamp: 起始时间
- Finish timestamp: 结束时间
- Span tag: 一组键值对构成的 Span 标签集合
- Span log: 一组Span的日志集合
- SpanContext: span 上下文对象
- Reference(Span间关系): 相关的零个或者多个Span
调用原理
一次调用链分析
- 调用链中的时间线
五个重要组件
- Jaeger-client(客户端库)
- Agent(客户端代理)
- Collector(数据收集处理)
- Data Stroe(数据存储)
- UI(数据查询与前端界面展示)
端口说明
端口 | 协议 | 所属模块 | 功能 |
---|---|---|---|
5775 |
UDP | agent | 通过兼容性Thrift协议,接收Zipkin Thrift类型数据 |
6831 |
UDP | agent | 通过兼容性Thrift协议,接收Jaeger Thrift类型数据 |
6832 |
UDP | agent | 通过二进制Thrift协议,接收Jaeger Thrift类型数据 |
5778 |
HTTP | agent | 配置控制服务接口 |
16686 |
HTTP | query | 客户端前端界面展示端口 |
14268 |
HTTP | collector | 接收客户端Zipkin Thrift类型数据 |
14267 |
HTTP | collector | 接收客户端Jaeger Thrift类型数据 |
9411 |
HTTP | collector | Zipkin兼容endpoint |
Jaeger 安装
http://blog.csdn.net/qq23001186/article/details/126339387