1. 程式人生 > >skyWalking分散式鏈路追蹤部署

skyWalking分散式鏈路追蹤部署

使用環境

centos7.3

JKD1.8

elasticsearch5.6.8

skyWalking3.2.6

筆者把所有的環境都打包在這百度網盤裡面

下載完之後筆者是把檔案放在下面這個目錄

mv sky/ /usr/local

1.首先安裝elasticsearch

1.1百度elasticsearch,點選官網網址

1.2點選Downloads,選擇past releases

1.3找到想要的版本

1.4右鍵點選RPM選擇 – 複製連線地址

1.5直接解壓安裝,超級方便,一步到位

rpm -ivh elasticsearch-5.6.8.rpm

systemctl daemon-reload

1.6啟動並檢視安裝狀態

systemctl start elasticsearch

systemctl status elasticsearch

1.7本地檢視版本資訊

curl -XGET "127.0.0.1:9200"

1.8查詢elasticsearch 安裝路徑與配置路徑,並且配置

whereis elasticsearch

vim /etc/elasticsearch/elasticsearch.yml

修改elasticsearch監控ip:
network.host: 0.0.0.0
http.port:9200


cluster_name:這裡的叢集名一定要跟你收集器中es的名稱保持一致
預設就是這個埠儲存退出後重啟

elasticsearch systemctl restart elasticsearch

在瀏覽器訪問虛擬機器ip:9200

2.部署collector

- tar -zxvf skywalking-collector.tar.gz
- cd skywalking-collector/config
- vim application.yml

cluster:
# 配置zookeeper叢集資訊
  zookeeper:
    hostPort: ip:2181
    sessionTimeout: 100000
naming:
# 配置探針使用的host和port
  jetty:
    host: ip
    port: 10800
    context_path: /
remote:
  gRPC:
    host: ip
    port: 11800
agent_gRPC:
  gRPC:
    host: ip
    port: 11800
agent_jetty:
  jetty:
    host: ip
    port: 12800
    context_path: /
analysis_register:
  default:
analysis_jvm:
  default:
analysis_segment_parser:
  default:
    buffer_file_path: ../buffer/
    buffer_offset_max_file_size: 10M
    buffer_segment_max_file_size: 500M
ui:
  jetty:
    host: ip
    port: 12800
    context_path: /
# 配置 Elasticsearch 叢集連線資訊
storage:
  elasticsearch:
    cluster_name: CollectorDBCluster
    cluster_transport_sniffer: true
    cluster_nodes: localhost:9300
    index_shards_number: 2
    index_replicas_number: 0
    ttl: 7

cd skywalking-collector/bin

./startup.sh

3.部署web

-cd /usr/local/sky/skywalking-web/bin
-./web-service.sh

4.部署agent

- tar -zxvf skywalking-web.tar.gz
- cd/usr/local/sky/skywalking-agent/config
- vim agent.config

  # 當前的應用編碼,最終會顯示在webui上。
  # 建議一個應用的多個例項,使用有相同的application_code。請使用英文
  agent.application_code=Your_ApplicationName
  # 每三秒取樣的Trace數量
  # 預設為負數,代表在保證不超過記憶體Buffer區的前提下,採集所有的Trace
  # agent.sample_n_per_3_secs=-1

  # 設定需要忽略的請求地址
  # 預設配置如下
  # agent.ignore_suffix=.jpg,.jpeg,.js,.css,.png,.bmp,.gif,.ico,.mp3,.mp4,.html,.svg

  # 探針除錯開關,如果設定為true,探針會將所有操作位元組碼的類輸出到/debugging目錄下
  # skywalking團隊可能在除錯,需要此檔案
  # agent.is_open_debugging_class = true

  # 對應Collector的config/application.yml配置檔案中 agent_server/jetty/port 配置內容
  # 例如:
  # 單節點配置:SERVERS="127.0.0.1:8080" 
  # 叢集配置:SERVERS="10.2.45.126:8080,10.2.45.127:7600" 
  collector.servers=127.0.0.1:10800

  # 日誌檔名稱字首
  logging.file_name=skywalking-agent.log

  # 日誌檔案最大大小
  # 如果超過此大小,則會生成新檔案。
  # 預設為300M
  logging.max_file_size=314572800

  # 日誌級別,預設為DEBUG。
  logging.level=DEBUG

如圖筆者的配置
這裡寫圖片描述

接下來部署專案,有兩種方式

第一種是Jar包部署方式的探針配置

java -javaagent:/usr/local/sky/skywalking-agent/skywalking-agent.jar -jar common-service-0.0.1-SNAPSHOT.jar

java -javaagent:/usr/local/sky/skywalking-agent/skywalking-agent.jar -jar user-service-0.0.1-SNAPSHOT.jar

第二種方式是tomcat部署方式

Tomcat配置探針

Tomcat 7 修改tomcat/bin/catalina.sh,在首行加入如下資訊
CATALINA_OPTS="$CATALINA_OPTS -javaagent:/path/to/skywalking-agent/skywalking-agent.jar"; export CATALINA_OPTS

Tomcat 8 修改tomcat/bin/catalina.sh,在首行加入如下資訊
set "CATALINA_OPTS=... -javaagent:E:\apache-tomcat-8.5.20\skywalking-agent\skywalking-agent.jar"

skyWalking的高階特性
外掛會被統一放置在plugins目錄中,新的外掛,也只需要在啟動階段,放在目錄中,就自動生效。刪除則失效。
配置除了通過/config/agent.config檔案外,可以通過環境變數和VM引數(-D)來進行設定
引數的key = skywalking. + agent.config檔案中的key
優先順序:系統環境變數 > VM引數(-D) >/config/agent.config中的配置
Log預設使用檔案輸出,輸出到/log目錄中

* 然後訪問http://192.168.30.100:8080/出現如下圖代表部署成了
* 下圖是筆者監控到的專案

這裡寫圖片描述
這是筆者監控的專案
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述
APM之skyWalking到這就結束了,有問題在下面留言筆者看到就會回覆 。謝謝支援!

by cks