分布式跟踪工具Pinpoint技术入门

本文初衷

 

Pinpoint是什么

 

同类工具

  • google的Dapper 中文翻译
  • twitter的Zipkin
  • 淘宝的鹰眼(EgleEye)
  • 大众点评的CAT CAT的安装和配置

为什么要用Pinpoint

 

Pinpoint架构图

分布式跟踪工具Pinpoint技术入门_第1张图片

 

  • Pinpoint-Collector:收集各种性能数据
  • Pinpoint-Agent:和自己运行的应用关联起来的探针
  • Pinpoint-Web:将收集到的数据显示成WEB网页形式
  • HBase Storage:收集到的数据存到HBase中

开始部署

 

  • maven 3.2.x+
  • git
  • java 6+

0. 开始

  • 下载:git clone https://github.com/naver/pinpoint.git
  • 进入Pinpoint目录后编译:mvn install -Dmaven.test.skip=true
  • 如果不想自己手动打包,则可以在这里直接下载打包好的。下载

1. 部署Hbase

 

  • 下载Hbase:http://apache.mirror.cdnetworks.com/hbase/
  • 解压后编辑:conf/hbase-env.sh,添加JAVA_HOME配置:,在27行左右:
 
  • 编辑hbase-site.xml:
 

 

 

  • 进入hbase/bin目录启动hbase:./start-hbase.sh
  • jps命令查看Hbase是否启动成功,如果启动成功的会看到”HMaster”的进程
  • 初始化pinpoint需要的表:./hbase shell hbase-create.hbase (这里的hbase-create.hbase在源码pinpoint/hbase/scripts/hbase-create.hbase)
  • 访问页面测试是否成功:http://localhost:16010/master-status ,如果成功在页面的tables标签下能看到导入的表。
  • 也可以用命令来查看是否导入表成功,进入hbase,输入”status ‘detailed'”可以查看初始化的表
 

2. 部署Pinpoint-collector

  • 将pinpoint-collector-1.6.0-SNAPSHOT.war放到tomcat-collector-8086/webapps/下,并重命名为ROOT.war
  • 启动tomcat,配置ROOT/WEB-INF/classes/hbase.properties:
 

 

  • 配置上面后,重启tomcat(端口8086)

3. 部署Pinpoint-web

 

  • 将pinpoint-web-1.6.0-SNAPSHOT.war放到tomcat-web-8085/webapps/下,并重命名为ROOT.war
  • 启动tomcat,配置ROOT/WEB-INF/classes/hbase.properties:
 

 

  • 配置上面后,重启tomcat(端口8085)

4. 部署Pinpoint-agent

  • 新建目录:mkdir pp-agent
  • 将pinpoint-agent-1.6.0-SNAPSHOT.tar.gz 拷贝到pp-agent目录并解压
  • 配置pinpoint.config:profiler.collector.ip=127.0.0.1这是指pinpoint-collector的地址,如果是同一服务器,则不用修改。其它默认。
  • 安装pinpoint-collector启动后,自动就开启了9994,9995,9996的端口了,这里默认即可。如果有端口需求,要去pinpoint-collector的配置文件(“pinpoint-collector/webapps/ROOT/WEB-INF/classes/pinpoint-collector.properties”)中,修改这些端口。

5. 部署TestApp

  • 官方提供了一个测试用的应用,pinpoint-quickstart-testapp-null.war,将其重命名为ROOT.war,部署到tomcat-testapp-8084
  • 修改此tomat的/bin/catalina.sh,在106行左右加入启动参数:
 

 

 

 

6. springboot包部署

 

 

7.效果演示

 

分布式跟踪工具Pinpoint技术入门_第2张图片

结束语

 

参考文章

  • Dapper,大规模分布式系统的跟踪系统
  • Pinpoint – 应用性能管理(APM)平台实践之部署篇
  • 有什么知名的开源apm(Application Performance Management)工具(知乎)
  • 分布式跟踪系统调研
  • pinpoint安装与配置
  • pinpoint安装部署
  • 官网翻译

你可能感兴趣的:(spring,cloud,spring,boot)