PinPoint全鏈路監控環境搭建


PinPoint全鏈路監控

簡介

Pinpoint是一個開源的 APM (Application Performance Management/應用性能管理)工具,用於基於java的大規模分布式系統,基於Google Dapper論文。

仿照 Google Dapper , Pinpoint 通過跟蹤分布式應用之間的調用來提供解決方案, 以幫助分析系統的總體結構和內部模塊之間如何相互聯系。

如今的服務通常由很多不同模塊組成,前端向后台發起一個查詢請求,后台服務可能要調用多個服務,每個服務可能又會調用其它服務,最終將結果返回,匯總到頁面上。如果某個環節發生異常,工程師很難准確定位這個問題到底是由哪個服務調用造成的,Pinpoint的作用就是追蹤每個請求的完整調用鏈路,收集調用鏈路上每個服務的性能數據,方便工程師能夠快速定位問題。

 

架構圖

 

 

 

如圖所示,為Pinpoint的架構圖,主要由四部分組成:

 

Pinpoint-Collector:收集器,收集各種性能數據

Pinpoint-Agent:探針,與應用服務器關聯,采集性能數據,傳給Collector

Pinpoint-Web:UI,展示性能數據

HBase Storage:存儲,保存性能數據

 

優點

1、分布式事務跟蹤,跟蹤跨分布式應用的消息

2、自動檢測應用拓撲,幫助你搞清楚應用的架構

3、水平擴展以便支持大規模服務器集群

4、提供代碼級別的可見性以便輕松定位失敗點和瓶頸

5、使用字節碼增強技術,添加新功能而無需修改代碼

 

功能

1、故障快速定位

2、各個調用環節的性能分析

3、數據分析等

4、生成服務調用拓撲圖

 

支持的模塊

ü  JDK 6+

ü  Tomcat 6/7/8, Jetty 8/9, JBoss EAP 6

ü  Spring, Spring Boot

ü  Apache HTTP Client 3.x/4.x, JDK HttpConnector, GoogleHttpClient, OkHttpClient, NingAsyncHttpClient

ü  Thrift Client, Thrift Service, DUBBO PROVIDER, DUBBO CONSUMER

ü  MySQL, Oracle, MSSQL, CUBRID, DBCP, POSTGRESQL, MARIA

ü  Arcus, Memcached, Redis, CASSANDRA

ü  iBATIS, MyBatis

ü  gson, Jackson, Json Lib

ü  log4j, Logback

 

環境搭建所需要的工具

1、JDK 1.8

2、Tomcat 8.5.3    發布用

3、Pinpoint-Web   將收集到的數據顯示成WEB網頁形式

4、Pinpoint-Collector 收集各種性能數據

5、Pinpoint-Agent 和自己運行的應用關聯起來的探針

6、HBase Storage  收集到的數據存到HBase中

7、hbase_scripts  Pinpoint初始化數據庫

 

HBase腳本介紹

l  hbase-create.hbase - 創建pinpoint必須的表。

l  hbase-drop.hbase - 刪除pinpoint必須的所有表

l  hbase-flush-table.hbase - 刷新所有表

l  hbase-major-compact-htable.hbase- 壓縮主要的所有表

 

JDK和Tomcat的搭建這里就不再介紹了。

 

1、安裝HBase

下載地址:http://archive.apache.org/dist/hbase/

 

這里下載hbase-1.4.12來進行安裝

將hbase-1.4.12-bin.tar.gz包移動到/apps/software目錄下,然后解壓

 

接下來進入到hbase目錄下的conf文件夾夾中修改hbase-env.sh文件對JAVA的配置,找到JAVA_HOME的位置,打開JAVA_HOME的注釋行並修改,或者直接添加一行,如下圖

 

然后回到bin目錄下啟動hbase服務 sh start-hbase.sh

啟動如果遇到錯誤,可以檢查一下虛擬機cpu的核心數,貌似至少得雙核以上才能起得來。啟動成功會顯示如下畫面

 

Hbase默認端口是16010,在網頁上訪問http://192.168.3.31:16010

 

然后初始化Hbase的pinpoint庫,執行

 

登錄web,來查看HBase的數據是否初始化成功

 

2、安裝pinpoint

為了方便省事,我們把pinpoint-web 和 pinpoint-collector 都放進一個Tomcat中

 

為了方便訪問將pinpoint-web-1.1.2.war改名為pinpoint

 

啟動tomcat然后訪問http://192.168.3.31:8080/pinpoint

 

到這里我們的環境就發布好了


免責聲明!

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



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