天天看點

skywalking 安裝_Linux搭建SkyWalking做分布式跟蹤

Apache Skywalking簡介

Skywalking是一個可觀測性分析平台(Observability Analysis Platform簡稱OAP)和應用性能管理系統(Application Performance Management簡稱APM)。提供分布式鍊路追蹤、服務網格(Service Mesh)遙測分析、度量(Metric)聚合和可視化一體化解決方案。下面是Skywalking的幾大特點:

  • 多語言自動探針,Java,.NET Core和Node.JS。
  • 多種監控手段,語言探針和service mesh。
  • 輕量高效。不需要額外搭建大資料平台。
  • 子產品化架構。UI、存儲、叢集管理多種機制可選。
  • 支援告警。
  • 優秀的可視化效果。

Skywalking整體架構如下:

skywalking 安裝_Linux搭建SkyWalking做分布式跟蹤
skywalaking總體架構分為三部分
  • skywalking-collector:鍊路資料歸集器,資料可以落地ElasticSearch,單機也可以落地H2,不推薦,H2僅作為臨時示範用
  • skywalking-web:web可視化平台,用來展示落地的資料
  • skywalking-agent:探針,用來收集和發送資料到歸集器

Apache Skywalking(Incubator)共提供兩種部署模式:單節點模式和叢集模式,以下為單節點模式部署步驟。

依賴第三方元件
  • JDK8+
  • Mysql5.6 (不推薦)
  • ElasticSearch: 6.x.
環境配置
  • skywalking-collector服務:192.168.1.100
  • skywalking-web服務:192.168.1.101
  • ES叢集:192.168.1.102

安裝ES

Linux無坑安裝Elasticsearch

配置 Skywalking Collector服務

cd /usr/lib/skywalking/wget https://mirrors.bfsu.edu.cn/apache/skywalking/8.1.0/apache-skywalking-apm-8.1.0.tar.gztar zxvf apache-skywalking-apm-8.1.0.tar.gzmv apache-skywalking-apm-bin skywalking-apcd skywalking-ap           
skywalking 安裝_Linux搭建SkyWalking做分布式跟蹤
  • 配置ES 存儲監控資料(推薦)

vi config/application.yml           
storage:  selector: ${SW_STORAGE:h2}  elasticsearch:    nameSpace: ${SW_NAMESPACE:""}    # 主要配置es節點位址    clusterNodes: 113.143.100.157:9200           
  • 啟動collector服務
#初始化./bin/oapServiceInit.sh #啟動collector服務./bin/oapService.sh           

配置 Skywalking Web服務

  • 修改配置
vi webapp/webapp.yml            
server:  port: 18188collector:  path: /graphql  ribbon:    ReadTimeout: 10000    # Point to all backend's restHost:restPort, split by     # 配置collector位址,預設d的rest端口12800    listOfServers: 127.0.0.1:12800           
  • 2、啟動web服務
./bin/webappService.sh           

通路http://113.143.100.157:18188/來檢視 SkyWalking UI 

探針配置(agent)

  • 被監控端下載下傳skywalking
  • 探針的配置 修改agent.config配置如下:
vi agent/config/agent.config-------------------------------------------------------------agent.service_name=Your_ApplicationName  #改為你的項目名字collector.backend_service=127.0.0.1:11800   #collector的端口服務位址;logging.level=info           
  • 啟動Agent
    • 基于JAR file的服務(SpringBoot)

      在啟動你的應用程式的指令行中添加 -javaagent 參數. 并確定在-jar參數之前添加它. 例如:

java -javaagent:/usr/lib/skywalking/skywalking-apm/agent/skywalking-agent.jar -jar test-0.0.1-SNAPSHOT.jar           

監控圖:

skywalking 安裝_Linux搭建SkyWalking做分布式跟蹤
skywalking 安裝_Linux搭建SkyWalking做分布式跟蹤
skywalking 安裝_Linux搭建SkyWalking做分布式跟蹤