真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

PinPoint分布式全鏈路監(jiān)控

PinPoint分布式全鏈路監(jiān)控

創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比宏偉網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式宏偉網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋宏偉地區(qū)。費(fèi)用合理售后完善,10余年實(shí)體公司更值得信賴。

安裝需要的所有包下載路徑:

鏈接: https://pan.baidu.com/s/1sl9dP9r 密碼: jsux

介紹:

   PinPoint是一個(gè)開源的APM((Application Performance Management/應(yīng)用性能管理)工具,基于JAVA的大規(guī)模分布式系統(tǒng)。

   仿照GOOLE DAPPER,PinPoint通過跟蹤分布式應(yīng)用之間的調(diào)用來提供解決方案,以幫助分析系統(tǒng)的總體結(jié)構(gòu)和內(nèi)部模塊之間如何相互聯(lián)系

    服務(wù)器地圖(ServerMap):

       通過可視化分布式系統(tǒng)的模塊和他們之間的相互聯(lián)系來理解系統(tǒng)拓?fù)?。點(diǎn)擊某個(gè)節(jié)點(diǎn)會(huì)展示這個(gè)模塊的詳情,比如它當(dāng)前的狀態(tài)和請求數(shù)量。

    實(shí)時(shí)活動(dòng)線程圖表(Realtime Active Thread Chart)

實(shí)時(shí)監(jiān)控應(yīng)用內(nèi)部的活動(dòng)線程。

請求/應(yīng)答分布圖表(Request/Response Scatter Chart)

長期可視化請求數(shù)量和應(yīng)答模式來定位潛在問題。通過在圖表上拉拽可以選擇請求查看更多的詳細(xì)信息

調(diào)用棧(CallStack)

在分布式環(huán)境中為每個(gè)調(diào)用生成代碼級別的可視圖,在單個(gè)視圖中定位瓶頸和失敗點(diǎn)

巡查(Inspector)

查看應(yīng)用上的其他詳細(xì)信息,比如CPU使用率,內(nèi)存/垃圾回收,TPS,和JVM參數(shù) 

分布式系統(tǒng)調(diào)用鏈監(jiān)控特點(diǎn):

    1、應(yīng)用架構(gòu)由集中式向分布式演進(jìn)后,整個(gè)調(diào)用關(guān)系變得復(fù)雜

2、分布式架構(gòu)由復(fù)雜且較大規(guī)模集群構(gòu)成,哥哥應(yīng)用之間相當(dāng)獨(dú)立,可能由不同團(tuán)隊(duì)、不同語言實(shí)現(xiàn)

3、系統(tǒng)一個(gè)完整的調(diào)用過程可能橫跨多個(gè)服務(wù)及數(shù)據(jù)中心

4、復(fù)雜的調(diào)用導(dǎo)致系統(tǒng)出問題后難以定位問題

5、無法準(zhǔn)確知道整體系統(tǒng)性能及運(yùn)行情況

Pinpoint中的數(shù)據(jù)結(jié)構(gòu)

Pinpoint中,核心數(shù)據(jù)結(jié)構(gòu)由Span, Trace, 和 TraceId組成

   1、Span: RPC (遠(yuǎn)程過程調(diào)用/remote procedure call)跟蹤的基本單元; 當(dāng)一個(gè)RPC調(diào)用到達(dá)時(shí)指示工作已經(jīng)處理完成并包含跟蹤數(shù)據(jù)。

   為了確保代碼級別的可見性,Span擁有帶SpanEvent標(biāo)簽的子結(jié)構(gòu)作為數(shù)據(jù)結(jié)構(gòu)。每個(gè)Span包含一個(gè)TraceId

2、Trace: 多個(gè)Span的集合; 由關(guān)聯(lián)的RPC (Spans)組成. 在同一個(gè)trace中的span共享相同的TransactionId。Trace通過SpanId和ParentSpanId整理為繼承樹結(jié)構(gòu).

   3、TraceId: 由 TransactionId, SpanId, 和 ParentSpanId 組成的key的集合. TransactionId 指明消息ID,而SpanId 和 ParentSpanId 表示RPC的父-子關(guān)系。

TransactionId (TxId): 在分布式系統(tǒng)間單個(gè)事務(wù)發(fā)送/接收的消息的ID; 必須跨整個(gè)服務(wù)器集群做到全局唯一.

SpanId: 當(dāng)收到RPC消息時(shí)處理的工作的ID; 在RPC請求到達(dá)節(jié)點(diǎn)時(shí)生成。

ParentSpanId (pSpanId): 發(fā)起RPC調(diào)用的父span的SpanId. 如果節(jié)點(diǎn)是事務(wù)的起點(diǎn),這里將沒有父span - 對于這種情況, 使用值-1來表示這個(gè)span是事務(wù)的根span。

Google Dapper 和 NAVER Pinpoint在術(shù)語上的不同

全鏈路性能監(jiān)控

    一個(gè)請求完整的調(diào)用鏈可能如下圖,經(jīng)過多個(gè)系統(tǒng)服務(wù),調(diào)用關(guān)系:

       PinPoint分布式全鏈路監(jiān)控

關(guān)注各個(gè)調(diào)用的各項(xiàng)性能指標(biāo),比如吞吐量(TPS),響應(yīng)時(shí)間及錯(cuò)誤記錄等

吞吐量:根據(jù)拓?fù)淇上鄳?yīng)計(jì)算組件、平臺、物理設(shè)備的實(shí)際吞吐量

響應(yīng)時(shí)間:包括整體調(diào)用的響應(yīng)時(shí)間和各個(gè)服務(wù)的相應(yīng)時(shí)間等

錯(cuò)誤記錄:根據(jù)服務(wù)返回統(tǒng)計(jì)單位時(shí)間異常次數(shù)

全鏈路性能監(jiān)控從整體維度到局部維度展示各項(xiàng)指標(biāo),將跨應(yīng)用的所有調(diào)用鏈性能信息集中展現(xiàn),可方便度量整體和局部性能,

并且方便找到故障產(chǎn)生的源頭,生產(chǎn)上可極大縮短故障排除時(shí)間。

環(huán)境準(zhǔn)備:

系統(tǒng)環(huán)境:centos 6.X以上,不要太低

JDK最好是7或8

部署HBASE(分布式用ZOOKEEPER可以使用內(nèi)置的,單點(diǎn)就不需要)

搭建過程:

Pinpoint由4部分組成

1.Pinpoint Agent, 2. Pinpoint Collector, 3. HBase, 4.Pinpoint Web UI

    1、部署JDK

具體過程略:

a、配置環(huán)境變量vim /etc/profile

export JAVA_HOME=/usr/local/jdk

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${jre_home}/lib

export PATH=${JAVA_HOME}/bin:$PATH

##配置環(huán)境變量執(zhí)行:source /etc/profile

b、檢查配置是否成功

[root@MySQL-jiachi local]# java -version

java version "1.8.0_112"

Java(TM) SE Runtime Environment (build 1.8.0_112-b15)

Java HotSpot(TM) Server VM (build 25.112-b15, mixed mode)

2、安裝并啟動(dòng)hbase

解壓hbase-1.1.11-bin.tar.gz

1、tar -zxvf /root/pp/hbase-1.1.11-bin.tar.gz  -C /usr/local/   ##建議重命名為hbase ===>/usr/local/hbase

2、cd /usr/local/hbase/conf

vim hbase-env.sh

27  export JAVA_HOME=/usr/local/jdk    # 指到自己對應(yīng)的JAVA_HOME,默認(rèn)使用java6

vim hbase-site.xml

 

hbase.rootdir

file:///data/hbase        # 這里我們指定Hbase本地來存儲數(shù)據(jù),生產(chǎn)環(huán)境將數(shù)據(jù)建議存入HDFS中。

 

3、啟動(dòng)服務(wù)

/usr/local/hbase/bin/start-hbase.sh

        注意: 這里說明一下,我們是最簡方式啟動(dòng)的Hbase,

沒有單獨(dú)部署Hbase集群管理的zookeeper,而是直接使用Hbase自帶的zk模塊。另外,Hbase強(qiáng)烈建議將數(shù)據(jù)存入HDFS里面,目前我們是存在Hbase本地的

4、驗(yàn)證HBASE是否啟動(dòng)成功

jps

8114 Jps

7820 HMaster

5、HBASE初始化表語句

/usr/local/hbase/bin/hbase shell  /usr/local/hbase-create.hbase   ##建表數(shù)據(jù)自己指定位置

最后輸出幾個(gè)表名字,沒有異常說明成功了,自己看日志.....

3、安裝 Pinpoint-collector,它的服務(wù)是基于tomcat的服務(wù),所以在部署前需要解壓tomcat包

1、tar -zxvf apache-tomcat-8.0.36.tar.gz   -C /usr/local/   ##建議重命名為pinpoint-collector ===>/usr/local/pinpoint-collector

2、修改pinpoint-collector的Tomcat的配置,主要修改端口,避免與pp-web的Tomcat的端口沖突(若有多臺機(jī)器部署TOMCAT,就不需要修改端口)

3、cd /usr/local/pinpoint-collector/conf

sed -i 's/port="8005"/port="18005"/g' server.xml

sed -i 's/port="8080"/port="18080"/g' server.xml

sed -i 's/port="8443"/port="18443"/g' server.xml

sed -i 's/port="8009"/port="18009"/g' server.xml

sed -i 's/redirectPort="8443"/redirectPort="18443"/g' server.xml

sed -i "s/localhost/`ifconfig eth0 | grep 'inet addr' | awk '{print $2}' | awk -F: '{print $2}'`/g" server.xml

4、rm -rf /usr/local/pinpoint-collector/webapps/* 

5、把包pinpoint-collector-1.5.2.war解壓

#mkdir /usr/local/pinpoint-collector/webapps/ROOT

#unzip pinpoint-collector-1.5.2.war -d  /usr/local/pinpoint-collector/webapps/ROOT

6、啟動(dòng)tomcat

#/usr/local/pinpoint-collector/bin/startup.sh

4、安裝pinpoint-web,具體過程和Pinpoint-collector完全相同,在解壓一個(gè)tomcat的包。

1、tar -zxvf apache-tomcat-8.0.36.tar.gz   -C /usr/local/   ##建議重命名為pinpoint-web ===>/usr/local/pinpoint-web

2、修改pinpoint-web的Tomcat的配置,主要修改端口,避免與pinpoint-collector的Tomcat的端口沖突(若有多臺機(jī)器部署TOMCAT,就不需要修改端口)

3、cd /usr/local/pinpoint-web/conf

sed -i 's/port="8005"/port="28005"/g' server.xml

sed -i 's/port="8080"/port="28080"/g' server.xml

sed -i 's/port="8443"/port="28443"/g' server.xml

sed -i 's/port="8009"/port="28009"/g' server.xml

sed -i 's/redirectPort="8443"/redirectPort="28443"/g' server.xml

sed -i "s/localhost/`ifconfig eth0 | grep 'inet addr' | awk '{print $2}' | awk -F: '{print $2}'`/g" server.xml

4、rm -rf /usr/local/pinpoint-web/webapps/* 

5、把包pinpoint-web-1.5.2.war解壓

#mkdir /usr/local/pinpoint-web/webapps/ROOT

#unzip pinpoint-web-1.5.2.war -d  /usr/local/pinpoint-web/webapps/ROOT

####這里說明一下:

hbase.properties 配置我們pp-web從哪個(gè)數(shù)據(jù)源獲取采集數(shù)據(jù),這里我們只指定Hbase的zookeeper地址。

jdbc.properties pp-web連接自身Mysql數(shù)據(jù)庫的連接認(rèn)證配置。

sql目錄 pp-web本身有些數(shù)據(jù)需要存放在MySQL數(shù)據(jù)庫中,這里需要初始化一下表結(jié)構(gòu)。

pinpoint-web.properties 這里pp-web集群的配置文件,如果你需要pp-web集群的話。

applicationContext-* .xml 這些文件在后續(xù)的調(diào)優(yōu)工作中會(huì)用到。

log4j.xml 日志相關(guān)配置

6、啟動(dòng)tomcat

#/usr/local/pinpoint-web/bin/startup.sh

5、部署pinpoint-agent采集監(jiān)控?cái)?shù)據(jù)

1、解壓包tar -zxvf pinpoint-agent-1.5.2.tar.gz

2、mv pinpoint-agent-1.5.2 /data/pp-agent

3、編輯配置文件vim pinpoint.config  #測試環(huán)境都在一臺機(jī)器上不做修改,走默認(rèn)

主要修改IP,只需要指定到安裝Pinpoint-collector的IP就行了,安裝Pinpoint-collector啟動(dòng)后,自動(dòng)就開啟了9994,9995,9996的端口了。

這里就不需要操心了,如果有端口需求,要去Pinpoint-collector的配置文件("Pinpoint-collector/webapps/ROOT/WEB-INF/classes/pinpoint-collector.properties")中,修改這些端口

profiler.collector.ip=192.168.245.136(這里需要確定)

5、增加探針,在服務(wù)的用戶的訪問的入口處添加文件,一般在啟動(dòng)目錄下添加文件名為" vim  catalina.sh"

  ######部署采集器就很簡單了,只需要加3句話就好了。我這邊做一個(gè)測試的Tomcat,來模擬部署 把catalina.sh 文件存放在tomcat 下的bin目錄下

  #pinpoint agent路徑

CATALINA_OPTS="$CATALINA_OPTS -javaagent:/usr/local/pinpoint-agent-1.5.1/pinpoint-bootstrap-1.5.1.jar"

#被監(jiān)控工程使用agent的標(biāo)識號

CATALINA_OPTS="$CATALINA_OPTS -Dpinpoint.agentId=0000002"

#被監(jiān)控工程名字

CATALINA_OPTS="$CATALINA_OPTS -Dpinpoint.applicationName=172.16.10.43_3306_自定義"

#####

第一行是pp-agent的jar包位置

第二行是agent的ID,這個(gè)ID是唯一的,我是用pp + 今天的日期命名的,只要與其他的項(xiàng)目的ID不重復(fù)就好了

第三行是采集項(xiàng)目的名字,這個(gè)名字可以隨便取,只要各個(gè)項(xiàng)目不重復(fù)就好了

配置完catalina.sh這個(gè)文件啟動(dòng)tomcat文件

6、訪問pinpoint-web服務(wù)

PinPoint分布式全鏈路監(jiān)控

其他細(xì)節(jié)可以更多的研究......

到這里,整個(gè)部署過程就完了。值得要注意的地方:

如果Hbase不是與pinpoint-web, Pinpoint-collector裝在一臺機(jī)器上,需要安裝zookeeper,只要安裝就好,確實(shí)2181端口啟動(dòng)就好。

如果zookeeper安裝在獨(dú)立機(jī)器上,這里需要修改一下Pinpoint-collector 和 pinpoint-web的配置文件pinpoint-collector.properties,pinpoint-web.properties,不然會(huì)導(dǎo)致倆個(gè)模塊啟動(dòng)失敗。

如果有最新版本建議使用新的版本,老版本存在一些問題。


名稱欄目:PinPoint分布式全鏈路監(jiān)控
鏈接分享:http://weahome.cn/article/pcjdhd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部