Skywalking 的使用


本文為博主原創,未經允許不得轉載:

官網:http://skywalking.apache.org/
下載:http://skywalking.apache.org/downloads/
Github:https://github.com/apache/skywalking
文檔: https://skywalking.apache.org/docs/main/v8.4.0/readme/
中文文檔: https://skyapm.github.io/document-cn-translation-of-skywalking/

 

1.skywalking 簡介

  skywalking是國產開源框架,是分布式系統的應用程序性能監視工具,專為微服務、雲原生架構和基於容器(Docker、K8s、Mesos)架構而設計。SkyWalking 是觀察性分析平台和應用性能管理系統,提供分布式追蹤、服務網格遙測分析、度量聚合和可視化一體化解決方案。

2.Skywalking 與 Zipkin 比較

  Zipkin是Twitter開源的調用鏈分析工具,目前基於springcloud sleuth得到了廣泛的使用,特點是輕量,使用部署簡單。其通過攔截請求,發送數據至zipkin 服務,發送(http)數據到zipkin服務。缺點在於不支持告警,不支持JVM監控,通信方式使用Http請求向Zipkin上報信息,比較耗性能。

  SkyWalking是本土開源的基於字節碼注入的調用鏈分析,以及應用監控分析工具。特點是支持多種插件,UI功能較強,接入端無代碼侵入。目前已加入Apache孵化器。其通過探針,字節碼增強實現。通信方式采用GRPC,性能較好,實現方式是java探針,支持告警,支持JVM監控,支持全局調用統計等等,功能較完善。缺點是依賴較多,需要ElasticSearch,JDK環境,Nacos注冊中心等。

  且skywalking 的探針對吞吐量的影響最小,zipkin 的吞吐量居中。

 3. 下載及文件目錄說明

  下載 Skywalking :http://skywalking.apache.org/downloads/

  

   linux 下載及解壓

-- 下載 skywalking 的安裝包
wget https://archive.apache.org/dist/skywalking/8.6.0/apache-skywalking-apm-8.6.0.tar.gz

-- 解壓安裝包
tar -zxvf apache-skywalking-apm-8.6.0.tar.gz

  解壓之后的目錄說明:

  

   webapp:UI 前端及web 監控頁面的 jar 包和配置文件

  oap-libs : 后台應用的jar 包,以及它的依賴jar 包,里面有一個 server-starter-8.6.0.jar 就是啟動程序

  bin : 各種啟動腳本,一般使用 startup.sh 來啟動web 頁面和對應的后台應用

  agent : skywalking-agent 需要依賴的jar 包,配置以及插件等

4. 搭建Skywalking OAP 服務

  先使用默認的H2數據庫存儲,不用修改配置:config/application.yml

  

   啟動腳本bin/startup.sh

  

   啟動成功后會啟動兩個服務,一個是skywalking-oap-server,一個是skywalking-web-ui

  skywalking-oap-server服務啟動后會暴露11800 和 12800 兩個端口,分別為收集監控數據的端口11800和接受前端請求的端口12800,修改端口可以修改config/applicaiton.yml

  skywalking-web-ui服務會占用 8080 端口, 修改端口可以修改webapp/webapp.yml

  

   訪問skywalking UI  

                     

   SkyWalking中三個概念

    服務(Service) :表示對請求提供相同行為的一系列或一組工作負載,在使用Agent時,可以定義服務的名字;

    服務實例(Service Instance) :上述的一組工作負載中的每一個工作負載稱為一個實例, 一個服務實例實際就是操作系統上的一個真實進程;

    端點(Endpoint) :對於特定服務所接收的請求路徑, 如HTTP的URI路徑和gRPC服務的類名 + 方法簽名;

6. Skywalking Agent 跟蹤微服務

  在使用java -jar 啟動微服務時,指定啟動參數的屬性:

java -javaagent:/opt/skywalking/apache-skywalking-apm-bin/agent/skywalking-agent.jar -jar springboot-skywalking-demo-0.0.1-SNAPSHOT.jar

   Skywalking跨多個微服務跟蹤,只需要每個微服務啟動時添加javaagent參數即可。

  此時打開 Skywalking 的監控頁面,可以看到調用的數據顯示:

 

 

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM