Net6微服务接入Skywalking(数据存储:Elasticsearch)实现链路追踪

一、Skywalking介绍

Skywalking是一款分布式链路追踪组件,什么是链路追踪?

随着微服务架构的流行,服务按照不同的维度进行拆分,一次请求往往需要涉及到多个服务。互联网应用构建在不同的软件模块集上,这些软件模块,有可能是由不同的团队开发、可能使用不同的编程语言来实现、有可能布在了几千台服务器,横跨多个不同的数据中心。

然后微服务面临了这些问题:

某个核心服务挂了,导致大量报错,如何快速确定哪里出了问题?
用户请求响应延迟高,怎么确定是哪些服务导致的?
应用程序有性能瓶颈,怎样确定瓶颈在哪里?
如何准实时的了解应用部署环境(CPU、内存、进程、线程、网络、带宽)情况,以便快速扩容/缩容、流量控制、业务迁移
如何统计各个调用的性能指标,比如:吞吐量(TPS)、响应时间及错误记录等
分布式链路跟踪系统就是为了解决这些问题应运而生。

分布式链路追踪组件

阿里巴巴鹰眼(EagleEye)
美团CAT
京东Hydra
Twitter Zipkin (Java经常用到) 【.NET Java】
Apache SkyWalking (APM) 【go,python,.NET, Java】
Pinpoint(APM)
.NET用的最多的两款是SkyWalking、Zipkin。这里介绍Skywalking使用。

Skywalking有哪些功能?

多种监控手段。可以通过语言探针和 service mesh 获得监控是数据。
多个语言自动探针。包括 Java,.NET Core 和 Node.JS。
轻量高效。无需大数据平台,和大量的服务器资源。
模块化。UI、存储、集群管理都有多种机制可选。
支持告警。
优秀的可视化解决方案。

Skywalking整体架构 **

在这里插入图片描述

整个架构,分成上、下、左、右四部分:

探针基于不同的来源可能是不一样的, 但作用都是收集数据, 将数据格式化为 SkyWalking 适用的格式.
平台后端是一个支持集群模式运行的后台, 用于数据聚合, 数据分析以及驱动数据流从探针到用户界面的流程. 平台后端还提供了各种可插拔的能力, 如不同来源数据(如来自 Zipkin)格式化, 不同存储系统以及集群管理. 你甚至还可以使用观测分析语言来进行自定义聚合分析.
存储是开放式的. 你可以选择一个既有的存储系统, 如 ElasticSearch, H2 或 MySQL 集群(Sharding-Sphere 管理), 也可以选择自己实现一个存储系统. 当然, 我们非常欢迎你贡献新的存储系统实现.
用户界面对于 SkyWalking 的最终用户来说非常炫酷且强大. 同样它也是可定制以匹配你已存在的后端的
Tracing、Logging和Metrics

在微服务领域,很早以来就形成了Tracing、Logging和Metrics相辅相成,合力支撑多维度、多形态的监控体系,三类监控各有侧重:

Tracing:它在单次请求的范围内,处理信息。 任何的数据、元数据信息都被绑定到系统中的单个事务上。例如:一次调用远程服务的RPC执行过程;一次实际的SQL查询语句;一次HTTP请求的业务性ID;

Logging:日志,不知道大家有没有想过它的定义或者边界。Logging即是记录处理的离散事件,比如我们应用的调试信息或者错误信息等发送到ES;审计跟踪时间信息通过Kafka处理送到BigTable等数据仓储等等,大多数情况下记录的数据很分散,并且相互独立,也许是错误信息,也许仅仅只是记录当前的事件状态,或者是警告信息等等。

Metrics:当我们想知道我们服务的请求QPS是多少,或者当天的用户登录次数等等,这时我们可能需要将一部分事件进行聚合或计数,也就是我们说的Metrics。可聚合性即是Metrics的特征,它们是一段时间内某个度量(计数器或者直方图)的原子或者是元数据。例如接收的HTTP数量可以被建模为计数器,每次的HTTP请求即是我们的度量元数据,可以进行简单的加法聚合,当持续了一段时间我们又可以建模为直方图。

在这里插入图片描述

二、Skywalking搭建

1、安装Java环境

参考地址:
https://blog.csdn.net/qq_37997978/article/details/131570664

如上地址参考:五、Linux安装Java环境

2、安装Docker环境

参考地址:
https://blog.csdn.net/qq_37997978/article/details/134923566

3、Elasticsearch安装

参考地址:
https://blog.csdn.net/qq_37997978/article/details/135950004

4、拉取镜像
#oap
docker pull apache
  • 9
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值