Linux安裝pinpoint監控,保姆級安裝攻略,沒有之一
pinpoint介紹
Pinpoint是一個開源的 APM (Application Performance Management/應用性能管理)工具,用于基于java的大規模分布式系統,基于Google Dapper論文。
架構組成 Pinpoint主要由四部分組成:
Pinpoint-Collector:數據收集模塊,接收Agent發送過來的監控數據,并存儲到HBase數據庫
Pinpoint-Agent:用于收集應用端監控數據,無侵入式,只需要在啟動命令中加入部分參數即可
Pinpoint-Web:UI,展示性能數據
HBase Storage:監控展示模塊,展示系統調用關系、調用詳情、應用狀態等,并支持報警等功能
優點: 1、分布式事務跟蹤,跟蹤跨分布式應用的消息 2、自動檢測應用拓撲,幫助你搞清楚應用的架構 3、水平擴展以便支持大規模服務器集群 4、提供代碼級別的可見性以便輕松定位失敗點和瓶頸 5、使用字節碼增強技術,添加新功能而無需修改代碼
功能: 1、故障快速定位 2、各個調用環節的性能分析 3、數據分析等 4、生成服務調用拓撲圖
1.前期準備
分別進入https://github.com/pinpoint-apm/pinpoint/releases/tag/v2.1.1 和 http://archive.apache.org/dist/hbase/1.2.6/兩個網站,下載安裝部署所需的全部組件
- pinpoint-web-boot-2.1.1.jar
- pinpoint-collector-boot-2.1.1.jar
- pinpoint-agent-2.1.1.tar.gz
- hbase-create.hbase
- hbase-1.2.6-bin.tar.gz
2.安裝Hbase數據庫
/home目錄下新增一個pinpoint文件夾,將下載的文件全部上傳上去
cd /home
mkdir pinpoint
cd pinpoint
解壓hbase-1.2.6-bin.tar.gz
tar -zxvf hbase-1.2.6-bin.tar.gz
2.1、修改相關配置文件
增加hbase環境變量
vim /etc/profile
# HBase環境變量
export HBASE_HOME=/home/pinpoint/hbase-1.2.6
export PATH=$PATH:$HBASE_HOME/bin
保存后編譯 使環境變量生效
source /etc/profile
修改hbase-env.sh中的JAVA_HOME環境變量
cd /home/pinpoint/hbase-1.2.6/conf
vim hbase-env.sh
# 修改jdk位置
export JAVA_HOME=/usr/local/java/jdk1.8
# 開啟自帶zookeeper
export HBASE_MANAGES_ZK=true
修改HBase配置文件hbase-site.xml
注:由于是單機部署,故不使用HDFS存儲數據,直接將數據存儲在本地服務器中
<configuration>
<property>
<name>hbase.rootdir</name>
<value>file:///home/data/hbase</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/data/zookeeper</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>false</value>
</property>
</configuration>
2.2 啟動hbase數據庫
cd /home/pinpoint/hbase-1.2.6/bin
./start-hbase.sh
查看是否啟動成功
輸入jps命令,當hbase數據庫啟動成功,則會顯示HMaster進程
2.3、初始化HBase的pinpoint庫
cd /home/pinpoint/hbase-1.2.6/bin
./hbase shell /home/pinpoint/hbase-create.hbase
驗證pinpoint庫是否初始化成功,有兩種方法
方法1:進入數據庫,查看初始化表
#進入數據庫
cd /home/hbase-1.2.6/bin
./hbase shell
#查看初始化表
list
方法2:登錄web,查看初始化數據是否成功,web地址為:服務器http://IP:16010/master-status
3、pinpoint安裝
如果沒有/var/logs目錄得先創建/var/logs目錄
3.1、安裝pinpoint-collector
cd /home/pinpoint nohup java -Dpinpoint.zookeeper.address=localhost -jar /home/pinpoint/pinpoint-collector-boot-2.1.1.jar >/var/logs/pinpoint-collector.log 2>&1 &
3.2、安裝pinpoint-web
cd /home/pinpoint nohup java -Dpinpoint.zookeeper.address=localhost -jar /home/pinpoint/pinpoint-web-boot-2.1.1.jar >/var/logs/pinpoint-web.log 2>&1 &
此時pinpoint服務端已啟動,輸入服務器http://ip:8080/main 即可查看
3.3、安裝pinpoint-agent
修改agent配置文件
vim /home/pinpoint-agent-2.1.1/profiles/release/pinpoint.config
profiler.collector.ip=xxx.xxx.xxx.xxx #hbase服務器地址
profiler.transport.grpc.collector.ip=xxx.xxx.xxx.xxx # 即安裝pinpoint-collector的虛擬機IP
profiler.sampling.counting.sampling-rate=1 #采樣率配置,訪問量不大的情況,建議全部采集
與被測服務一起啟動 將pinpoint-agent組件放到被測系統服務器上,并將啟動命令集成到被測服務啟動腳本中,隨著被測服務一起啟動
Helloworld.jar 則需要自己上傳上去
nohup java -javaagent:/home/pinpoint/pinpoint-agent-2.1.1/pinpoint-bootstrap-2.1.1.jar -Dpinpoint.agentId=retail -Dpinpoint.applicationName=helloworld -jar helloworld.jar > nohup.out 2>&1 &