几个工具的下载地址:
下载地址:
wget https://github.com/naver/pinpoint/releases/download/1.6.2/pinpoint-agent-1.6.2.tar.gz
wget https://github.com/naver/pinpoint/releases/download/1.6.2/pinpoint-collector-1.6.2.war
wget https://github.com/naver/pinpoint/releases/download/1.6.2/pinpoint-web-1.6.2.war
wget https://raw.githubusercontent.com/naver/pinpoint/master/hbase/scripts/hbase-create.hbase
这是官方的原理图:
Pinpoint安装过程及注意事项:
1、JDK
建议安装1.7以上版本
2、Hbase
a、tar.gz包解压
b、修改hbase-env.sh的JAVA_HOME环境变量位置,在path-to-hbase/conf/目录
c、修改hbase-site.xml,指定Hbase存储数据的地方,参考配置:
<configuration>
<property>
<name>hbase.rootdir</name>
<value>file:///data/hbase</value>
</property>
</configuration>
d、启动Hbase,启动成功的话,jps命令查看会看到HMaster进程
cd path-to-hbase/bin
./start-hbase.sh
e、初始化Hbase(未成功)
path-to-hbase/bin ./hbase shell hbase-create.hbase
报错信息:
[main] util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
LoadError: No such file to load -- hbase-create.hbase
load at org/jruby/RubyKernel.java:1087
(root) at /home/pengx/pinpoint/hbase-1.1.9/bin/../bin/hirb.rb:163
f、浏览器查看HbaseWeb : http://your_ip:16010/master-status
3、pinpoint-collector
a、下载war包,放入指定的目录:pp-col/tomcat/webapps/
b、修改tomcat的端口号,避免与其他项目冲突
cd /data/service/pp-col/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
server.xml文件中的'localhost'改成本机的ip
c、启动tomcat
cd /data/service/pp-web/bin/
./startup.sh
d、验证:日志中出现下面这句话,说明已经启动成功了,日志在tomcat/logs/catlina.out文件
org.apache.catalina.startup.Catalina.start Server startup in 79531 ms
4、pinpoint-web
a、下载war包,放入指定的目录:pp-web/tomcat/webapps/
b、修改tomcat的端口号,避免与其他项目冲突
cd /data/service/pp-col/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
server.xml文件中的'localhost'改成本机的ip
c、启动tomcat
d、验证,一是看日志,二是访问"http://192.168.245.136:28080" ,可以看到以下页面
如果访问不了的话,考虑关闭防火墙。
5、pinpoint-agent
a、下载tar.gz包,解压
b、编辑配置文件:
cd /pp-agent/
vi pinpoint.config
修改IP,指定到安装pp-col的IP:
profiler.collector.ip={your-ip}
6、启动测试项目
a、项目打包放到指定的tomcat目录:/tomcat/webapps/
b、修改tomcat/config/server/xml文件,localhost改成本机的ip
c、修改测试项目下的tomcat启动文件"catalina.sh",修改这个只要是为了监控测试环境的Tomcat,增加探针
cd /pp-test/bin
vi catalina.sh
在20行增加如下字段
第一行是pp-agent的jar包位置
第二行是agent的ID,这个ID是唯一的,我是用pp + 今天的日期命名的,只要与其他的项目的ID不重复就好了
第三行是采集项目的名字,这个名字可以随便取,只要各个项目不重复就好了
CATALINA_OPTS="$CATALINA_OPTS -javaagent:/data/pp-agent/pinpoint-bootstrap-1.5.2.jar"
CATALINA_OPTS="$CATALINA_OPTS -Dpinpoint.agentId=pp20161122"
CATALINA_OPTS="$CATALINA_OPTS -Dpinpoint.applicationName=MyTestPP
d、启动修改之后的 ./start.sh
e、查看日志,确保启动成功: tail -f ../logs/catalina.out
f、验证:
访问测试环境 : http://{your_ip}:8080
再次方位pp-web,下拉框多了一个项目:
因为我访问了两次,所以他显示有两条请求记录,可以在右上角的框查看详情。
【注意】鼠标点击右上角箭头位置,鼠标左键按住不动,拉框查看。我被这个坑,坑懵逼了,特此写清楚。
这时候就弹出了新页面,可以看到,我访问了一次主页,访问了一次test的servlet。而且详细信息都记录在下表中。
总结:
到这里,整个部署过程就完了。值得要注意的地方:
- 如果Hbase不是与pp-web, pp-col装在一台机器上,需要安装zookeeper,只要安装就好,确实2181端口启动就好。
- 如果zookeeper安装在独立机器上,这里需要修改一下pp-colletor 和 pp-web的配置文件pinpoint-collector.properties,pinpoint-web.properties,不然会导致俩个模块启动失败。
- 发现pinpoint还是有些缺陷,异步的操作监控不到,比如我写了个多线程来发送HttpClient4的请求,但是pinpoint监控不到。但是它介绍又说可以监控到Httpclient4的请求。现在都是分布式系统,异步拿数据再常见不过来,如果监控不到异步的操作,就很鸡肋了。看pp1.6会不会修复这个问题
- 在pp1.6部署,Hbase中的默认字段有增加,如果没有加上默认字段,取得的数据就会变得相当少了。