SkyWalking 核心概念与智能探针工作原理深度揭秘(上)

#作者:朱雷

文章目录

Skywalking是什么

Skywalking是一款国产开源的应用性能监控工具和分布式链路追踪系统,2015年由吴晟开源 , 2017年加入Apache孵化器。Skywalking主要用于APM性能监控和分布式链路追踪,功能包括分布式追 踪、性能指标分析、服务依赖分析及告警等。

SkyWalking为服务(service),服务实例(service instance),以及端点(endpoint)提供了指标和调用链的监控能力。使用 SkyWalking 时,用户可以看到服务与端点之间的拓扑结构,每个服务/服务实例/端点的性能指标,还可以设置报警规则。

Skywalking分布式链路追踪是遵循OpenTracing规范的,但不支持Opentelemetry规范的 W3C context传播协议。

Skywalking架构组成

SkyWalking逻辑上分为四个部分:探针、平台后端、存储和UI

Agent(探针)

探针收集数据并根据SkyWalking的要求对数据进行重

新格式化(不同的探测器支持不同的来源);Agent 运行

在各个服务实例中,负责采集服务实例的 Trace 、

Metrics等数据,然后通过 gRPC方式上报给 SkyWalking

后端

  • OAP
    接收 Agent 上报上来的 Trace、Metrics 等数据,
    分析得到的结果写入持久化存储中;响应 SkyWalking UI
    界面发送来的查询请求,将前面持久化的数据查询出来
    ,组成正确的响应结果返回给 UI 界

存储

接SkyWalking数据可以选择存储在已实现的

ElasticSearch, H2, MySQL, TiDB, InfluxDB的持久化系统,

一般线上使用ElasticSearch 集群作为其后端存储

UI

可视化和管理SkyWalking 数据

核心概念-资源对象

核心概念-链路追踪

  • 追踪: 一次请求完整的经过,可以微服务内的请求,也可以是夸服务的请求
  • Trace:表示一次(分布式)请求经过的所有局部操作(Span)构成的一条完整的有向无环图
  • Span:表示一次(分布式)请求过程的一个步骤或操作,代表系统中一个逻辑运行单元
  • TraceSegment:是一个介于Trace与Span之间的概念,是一次Trace在某一实例上的一个片段,会包 含多个Span;上报OAP端的trace数据粒度就是segment级别。

相关推荐
火车叼位15 小时前
写给初级开发者:SSL、SSH、HTTPS 与证书体系全解析
运维
小猿姐1 天前
唯品会大规模数据库云原生实践:基于 KubeBlocks 管理数千实例的统一运维之路
运维·elasticsearch·云原生
SkyWalking中文站2 天前
认识 Horizon UI · 5/17:3D 基础设施地图
运维·监控·自动化运维
SkyWalking中文站3 天前
认识 Horizon UI · 1/17:SkyWalking 新一代可观测性控制台
运维·前端·监控
雪梨酱QAQ3 天前
Kubeneters HA Cluster部署
运维
江华森3 天前
Spring Cloud 微服务全栈实战:从 Eureka 到 Docker Compose 一文贯通
运维
江华森3 天前
Matplotlib 数据绘图基础入门
运维
江华森3 天前
NumPy 数值计算基础入门
运维
乘云数字DATABUFF7 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
荣--9 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计