分享好友 行情首页 行情分类 切换频道
微服务链路追踪-SkyWalking
2025-01-03 10:08  浏览:85

一、为什么需要链路追踪

由于微服务化项目拆分,会导致系统服务间调用链路愈发复杂,此时,一个前端请求可能最终需要调用多个后端服务才能完成实现。

微服务间调用链路可能是这样

当整个请求不可用出现问题时,我们是没有办法判断请求是由哪个服务端引发问题,这时我们需要浏览多个服务端的日志去快速定位故障点,找到调用异常的服务,跟进一个请求到底有哪些服务参与,参与顺序是怎样,从而达到每个请求的步骤清晰可见并且如果有新同事加入,不能快速的知道自己所负责的服务在哪一环等等,于是就有了分布式系统调用跟踪的需求。

链路追踪已经不是什么新兴技术和概念了,其可使用组件有很多,比如:sleuth、Zipkin、阿里鹰眼、大众点评Cat、SkyWalkIng等等…

这些组件有一个共同的名字: APM 工具 (Application Performance Management)即应用性能监控工具。

二、链路追踪组件之SkyWalking

(1)是什么是SkyWalking

 SkyWalking是中国人吴晟(华为)开源的一款APM工具,现在已属于Apache旗下开源项目, 是一个观察性分析平台和应用性能管理系统。提供分布式追踪、服务网格遥测分析、度量聚合和可视化一体化解决方案。

(2)SkyWalkIng与ZipKin对比

至于为什么要采用此二者对比,因为我目前就用过这两个,zipkin是最早接触spring cloud项目用过,目前呢,是在学习SkyWalkIng。

ZipKinTwitter公司开源的一个分布式追踪工具,被Spring Cloud Sleuth集成,使用广泛而稳定。

ZIpKIn优缺点

优点:轻量级,springcloud集成,使用人数多,成熟。

缺点:侵入性,功能简单,欠缺APM报表能力(能力弱)。

Sleuth的作用是在系统中自动埋点并把数据发送给zipkin,zipkin的作用是存储这些数据并展现。

SkyWalking中国人吴晟(华为)开源的一款分布式追踪,分析,告警的工具,现已属于Apache旗下开源项目。

SkyWalking 优缺点

优点:多种监控手段多语言自动探针,Java,.NET Core 和 Node.JS,轻量高效,不需要大数据,模块化,UI、存储、集群管理多种机制可选,支持告警,社区活跃。

缺点:较为新兴,成熟度不够高。

(3) SkyWalking 组成部分

Probes探针,探针因使用的语言不同而不通,收集数据并且格式化为skywalking所需的格式。

Platform backend 平台后端,对应于zipkin server,可以集群部署,聚合,分析,将数据展示在UI中。

Storage存储,可扩展的存储,可以使es,H2,MySQL集群默认 h2。

UI 丰富的可视化功能,提供身份验证。

仪表盘对项目的监控,看项目是如何运转的,链路过程情况。拓扑图:就是整个图形的演示。追踪:就是碰到一些问题。告警:碰到问题的告警。

官网架构图一

官网架构图二

三、SkyWalkIng的部署及使用

我们去官网下载es7-8.1.0 版本,下载界面如下

解压之后,Windows环境中启动startup.bat,Linux环境中启动startup.sh即可(通过jps命令查看)。

 (1)本地开发部署探针处理(IDEA部署

SkyWalkIng在我们的微服务项目中虽然不需要额外引入依赖包,但是为了给SkyWalkIng 发送我们的链路信息,实际上还需要一个探针。

Probes:探针,探针因使用的语言不同而不通,收集数据并且格式化为skywalking所需的格式。

因为我开发语言为java,则需要java探针,即Java Agent 服务器探针。

那么探针在哪里来呢

Java Agent 服务器探针

解压后,Java Agent 所处的位置在解压后文件夹

apache-skywalking-apm-es7-8.1.0apache-skywalking-apm-bin-es7agent 目录下

我们需要给每个想要由SkyWalkIng管理的项目添加JVM 启动参数

 

启动项目后,我们再来看一下SKyWalkIng管理UI端(http://localhost:8080,有信息,则说明探针部署成功了。

(2Jar包方式部署探针处理
 
 
(3)Docker方式部署探针处理
1、部署Elasticsearch

拉取镜像

 

指定单机启动

:通过ES_JAVA_OPTS设置ES初始化内存,否则在验证时可能会起不来

 

验证es安装成功

浏览器地址栏输入:http://IP:9200/

可以安装 kibana 一起使用

2、部署Skywalking OAP

拉取镜像

 

启动Skywalking OAP

:–link后面的第一个参数和elasticsearch容器名一致

-e SW_STORAGE_ES_CLUSTER_NODES:es7也可改为你es服务器部署的Ip地址,即ip:9200

 
3、部署Skywalking UI

拉取镜像

 

启动Skywalking UI

:–link后面的第一个参数和skywalking OAP容器名一致

 
4、应用程序配合Skywalking Agent部署

构建基础镜像,将我们的skywalking-agent 文件包含在内,提供给java服务使用

 

构建服务镜像 order-demo

 
 
5、通过挂载的方式(推荐

在启动脚本中把把服务器上的agent文件挂载在容器内部

 

在Dockerfile文件中添加启动参数

 
(4)k8s方式部署探针处理

先在服务器中部署elasticsearch用来做存储,在oap中修改以es来做存储方式。

1、创建skywalking-oap的yaml
 
2、创建skywalking-ui的yaml
 
3、k8s中部署 skywalking-oap.yaml、skywalking-ui.yaml
 
 
 
4、k8s 部署项目增加skywalking链路追踪(通过挂载的方式
 

K8s快速生成yaml模板文件

 

四、配置SkyWalking日志收集(logback为例

pom 中依赖 SkyWalking 的 logback 插件包:

 

添加或修改 logback.xml,启用 SkyWalking 提供的 appender,示例配置如下:

    以上就是本篇文章【微服务链路追踪-SkyWalking】的全部内容了,欢迎阅览 ! 文章地址:http://w.yusign.com/quote/9483.html 
     行业      资讯      企业新闻      行情      企业黄页      同类资讯      网站地图      返回首页 述古往 http://w.yusign.com/mobile/ , 查看更多   
最新新闻
4.7英寸的手机(4.7英寸的手机屏幕长宽是多少厘米的)
  关于《4.7英寸的手机》的文章  随着科技的飞速发展,智能手机已成为我们日常生活中不可或缺的一部分。而4.7英寸的手机,作
百度手机助手简介[编辑]百度手机助手「百度手机助手简介[编辑]」
概述百度手机助手是一款运行在Android系统上的手机的资源平台,拥有海量免费优质安卓Android手机应用,提供极速下载,汇集好玩的
1手机系统(l手机系统)
  手机系统——从初步探索到现代应用  随着科技的飞速发展,手机系统已经成为我们日常生活中不可或缺的一部分。手机系统,即
拼实力比颜值 3000元以上热销手机推荐高颜值手机「拼实力比颜值 3000元以上热销手机推荐」
现在市场国产手机开始向高端发力,每一个厂商都想要通过自身的优势打造一款能给用户带来舒适体验的高端产品。而3000元则视为手机
谁是移动办公好“机友”?——WPS 8.0与Office安卓版之全面评测手机wps「谁是移动办公好“机友”?——WPS 8.0与Office安卓版之全面评测」
这两天移动办公软件市场似乎一下子热闹起来,继国产老牌软件厂商金山的WPSforAndroid8.0发布后,微软OfficeforAndroid正式版紧随
苹果android怎么设置关闭,iPhone手机系统更新提醒太烦人,终于知道怎样彻底关闭了!...手机关「苹果android怎么设置关闭,iPhone手机系统更新提醒太烦人,终于知道怎样彻底关闭了!.
因为最新的系统往往是为最新款的手机“量身定制”的,特别是iPhone 用户应该更有感触。但是不想升级又总是收到提醒,
值得购买的3款荣耀手机,从性价比到旗舰,总有一款适合你荣耀手机「值得购买的3款荣耀手机,从性价比到旗舰,总有一款适合你」
独立后的荣耀越来越好,时至今日,荣耀凭借其丰富的产品线与卓越的品质,成功吸引了众多消费者。无论你是预算有限,还是喜欢高端
淘宝手机淘宝「淘宝」
淘宝,一般又称手机淘宝,淘宝买菜app,手淘app,淘宝网上购物商城。
微樂河南麻將手機版手机麻将「微樂河南麻將手機版」
微樂河南麻將是一款非常好玩的具有地方性特色的手機麻將,專為河南及附近麻將愛好者打造的手機麻將平台,同步微信,一鍵約好友,
本企业新闻
推荐企业新闻
发表评论
0评