您的位置:首页 > 产品设计 > 产品经理

APM之pinppoint分布式链路追踪部署以及简单操作篇

2018-03-09 10:59 781 查看
1.环境centos7.32.JKD1.83.Tomcat8.x以上三个步骤自行安装我就不说了。首先安装Hbase,笔者用的Hbase1.2.61.cd /usr/local    ->mkdir pinpoint  或者下载笔者准备好的环境 直接mv 到/usr/local  链接:https://pan.baidu.com/s/1YJ2RU5MImXX4UUjRuyP-7Q 密码:xhcr 
2.解压出Hbase的文件  tar -zxvf Hbase1.2.6 
3.把Hbase1.2.6的文件名称修改下改成hbase
4.cd /usr/local/pinpoint/pp_res/hbase/conf  vim hbase-env.sh   4.1 在27行左右修改JDK的HOME路径  ->如图  


   4.2下面的配置修改有两种情况。   一、你本机有zookeeper的请。那你就不能启动Hbase自带的zk。那么配置就要这样修改

   二、本机没有zk想偷懒不装zk,那就把上图的那个false修改成true
5.vim hbase-site.xml  注意->笔者是用的自己的zk所以比用Hbase自带的zk要多两个property就是下面标红的。下面标蓝的代表存在本地每次重启之后数据就会消失、所以生产环境要存在HDFS上。笔者这里就不做概述、自己去了解Hbase<configuration>  <property>    <name>hbase.rootdir</name>    <value>file:///usr/local/pinpoint/data</value>  </property>  <property>    <name>hbase.zookeeper.quorum</name>    <value>192.168.30.100,192.168.10.30.101,192.168.30.103</value>  </property>  <property>    <name>hbase.cluster.distributed</name>    <value>true</value>  </property></configuration>
6.启动hbasecd /usr/local/pinpoint/pp_res/hbase/bin./start-hbase.sh然后执行jps命令出现HMaster代表启动成功了
7.初始化Hbase的表。都在hbase-create.hbase里脚本写好了./hbase shell /usr/local/pinpoint/pp_res/hbase-create.hbase
然后在浏览器访问 http://192.168.30.100:16010/ma 4000
ster-status出现如下图这样的UI界面以及这些表代表成功


8.安装pinpoint-collector

cd /usr/local/pinpoint/pp_res
mkdir pp-col
将你的tomcat移动到pp-col/ 目录下
【注意】最后一条是将tomcat的私有ip开放,需要将localhost替换成本机的ip,我本机的网卡是默认的,如果你本机的网卡不是eth0,需要进行相关的修改。或者直接用"vim"进去,修改localhost为你的ip地址cd /usr/local/pinpoint/pp_res/pp-col/apache-tomcat-8.0.36 /confsed -i 's/port="8005"/port="18005"/g' server.xmlsed -i 's/port="8080"/port="18080"/g' server.xmlsed -i 's/port="8443"/port="18443"/g' server.xmlsed -i 's/port="8009"/port="18009"/g' server.xmlsed -i 's/redirectPort="8443"/redirectPort="18443"/g' server.xml
rm -rf /usr/local/pinpoint/pp_res/pp-col/apache-tomcat-8.0.36/webapps/*
unzip pinpoint-collector-1.5.2.war -d /usr/local/pinpoint/pp_res/pp-col/apache-tomcat-8.0.36/webapps/ROOT
cd /usr/local/pinpoint/pp_res/pp-col/apache-tomcat-8.0.36/bin
./startup.sh
查看日志,是否成功启动tail -f ../logs/catalina.out
9. 配置快速启动->这一步骤可以不要只是为了快速启动配置快速启动需要修改pp-collector.init的路径( pp-collector在网盘里面有 ),可以"vim"进去,大概在18,24,27行处,修改相关的路径。我这边为了方便,直接就用替换的shell做了,如果路径与我的不一致,需要将路径修改成自己的路径。
cd /usr/local/pinpoint/pp_res sed -i "s/JAVA_HOME=\/usr\/java\/default\//JAVA_HOME=\/usr\/java\/jdk17\//g" pp-collector.initsed -i "s/CATALINA_HOME=\/data\/service\/pinpoint-collector\//CATALINA_HOME=\/data\/service\/pp-col\//g" pp-collector.initsed -i "s/CATALINA_BASE=\/data\/service\/pinpoint-collector\//CATALINA_BASE=\/data\/service\/pp-col\//g" pp-collector.init
将文件赋予"执行"的权限,把它放到"init.d"中去。以后就可以restart快速重启了。
chmod 777 pp-collector.initmv pp-collector.init /etc/init.d/pp-col# 测试一下restart[root@localhost pp_res]# /etc/init.d/pp-col restartStoping TomcatUsing CATALINA_BASE:   /data/service/pp-col/Using CATALINA_HOME:   /data/service/pp-col/Using CATALINA_TMPDIR: /data/service/pp-col//tempUsing JRE_HOME:        /usr/java/jdk18/Using CLASSPATH:       /data/service/pp-col//bin/bootstrap.jar:/data/service/pp-col//bin/tomcat-juli.jarwaiting for processes to exitStarting tomcatUsing CATALINA_BASE:   /data/service/pp-col/Using CATALINA_HOME:   /data/service/pp-col/Using CATALINA_TMPDIR: /data/service/pp-col//tempUsing JRE_HOME:        /usr/java/jdk17/Using CLASSPATH:       /data/service/pp-col//bin/bootstrap.jar:/data/service/pp-col//bin/tomcat-juli.jarTomcat started.Tomcat is running with pid: 22824

10. 安装pinpoint-web

10.1 部署war包解压Tomcat,将Tomcat重命名移动到指定位置
cd /usr/local/pinpoint/pp_res tar -zxvf apache-tomcat-8.0.36.tar.gzmv apache-tomcat-8.0.36/ /usr/local/pinpoint/pp_res/pp-web
修改pp-web的Tomcat的配置,主要修改端口,避免与pp-col的Tomcat的端口冲突。我在原本默认的端口前都加了2,下面是替换的shell命令
【注意】最后一条是将tomcat的私有ip开放,需要将localhost替换成本机的ip,我本机的网卡是默认的,如果你本机的网卡不是eth0,需要进行相关的修改。或者直接用"vi"进去,修改localhost为你的ip地址
cd /usr/local/pinpoint/pp_res/apache-tomcat-8.0.36/pp-web/conf/sed -i 's/port="8005"/port="28005"/g' server.xmlsed -i 's/port="8080"/port="28080"/g' server.xmlsed -i 's/port="8443"/port="28443"/g' server.xmlsed -i 's/port="8009"/port="28009"/g' server.xmlsed -i 's/redirectPort="8443"/redirectPort="28443"/g' server.xmlsed -i "s/localhost/`ifconfig eth0 | grep 'inet addr' | awk '{print $2}' | awk -F: '{print $2}'`/g" server.xml
部署pinpoint-collector.war包
【注意:如果没有unzip命令,可以 "yum install unzip" 】
cd /usr/local/pinpoint/pp_res /
rm -rf /usr/local/pinpoint/pp_res /pp-web/apache-tomcat-8.0.36/webapps/*
unzip pinpoint-web-1.6.2.war -d /usr/local/pinpoint/pp_res /pp-web/apache-tomcat-8.0.36/webapps/ROOT
查看war包是否解压成功
[root@localhost conf]# ll /usr/local/pinpoint/pp_res/pp-web/webapps/ROOT/WEB-INF/classes/total 88-rw-rw-r--. 1 root root 2164 Apr  7  2016 applicationContext-cache.xml-rw-rw-r--. 1 root root 3649 Apr  7  2016 applicationContext-dao-config.xml-rw-rw-r--. 1 root root 1490 Apr  7  2016 applicationContext-datasource.xml-rw-rw-r--. 1 root root 6680 Apr  7  2016 applicationContext-hbase.xml-rw-rw-r--. 1 root root 1610 Apr  7  2016 applicationContext-websocket.xml-rw-rw-r--. 1 root root 6576 Apr  7  2016 applicationContext-web.xmldrwxrwxr-x. 2 root root 4096 Apr  7  2016 batch-rw-rw-r--. 1 root root  106 Apr  7  2016 batch.propertiesdrwxrwxr-x. 3 root root 4096 Apr  7  2016 com-rw-rw-r--. 1 root root  682 Apr  7  2016 ehcache.xml-rw-rw-r--. 1 root root 1001 Apr  7  2016 hbase.properties-rw-rw-r--. 1 root root  153 Apr  7  2016 jdbc.properties-rw-rw-r--. 1 root root 3338 Apr  7  2016 log4j.xmldrwxrwxr-x. 2 root root 4096 Apr  7  2016 mapper-rw-rw-r--. 1 root root 1420 Apr  7  2016 mybatis-config.xmldrwxrwxr-x. 3 root root 4096 Apr  7  2016 org-rw-rw-r--. 1 root root  630 Apr  7  2016 pinpoint-web.properties-rw-rw-r--. 1 root root  141 Apr  7  2016 project.properties-rw-rw-r--. 1 root root 3872 Apr  7  2016 servlet-context.xmldrwxrwxr-x. 2 root root 4096 Apr  7  2016 sql这里说明一下:
hbase.properties 配置我们pp-web从哪个数据源获取采集数据,这里我们用的自己的zookeeper地址。jdbc.properties pp-web连接自身Mysql数据库的连接认证配置。sql目录 pp-web本身有些数据需要存放在MySQL数据库中,这里需要初始化一下表结构。pinpoint-web.properties 这里pp-web集群的配置文件,如果你需要pp-web集群的话。applicationContext-* .xml 这些文件在后续的调优工作中会用到。log4j.xml 日志相关配置。
启动Tomcat
cd /usr/local/pinpoint/pp_res/pp-web/apache-tomcat-8.0.36/bin/./startup.sh
查看日志,Tocmat是否启动成功
tail -f ../logs/catalina.out
日志中出现下面这句话,说明已经启动成功了
org.apache.catalina.startup.Catalina.start Server startup in 79531 ms
然后访问28080端口出现如下图这样的界面。这里provider跟web是笔者的监控项目,你们进来是没有的


11. 配置快速启动不是必须的

需要修改"pp-web.init",与上面的步骤一致

cd /usr/local/pinpoint/pp_res/pp-web/apache-tomcat-8.0.36/confsed -i "s/JAVA_HOME=\/usr\/java\/default\//JAVA_HOME=\/usr\/java\k17\//g" pp-web.initsed -i "s/CATALINA_HOME=\/data\rvice\/pinpoint-web\//CATALINA_HOME=\/data\rvice\-web\//g" pp-web.initsed -i "s/CATALINA_BASE=\/data\rvice\/pinpoint-web\//CATALINA_BASE=\/data\rvice\-web\//g" pp-web.init 
将文件赋予"执行"的权限,把让放到"init.d"中去。以后就可以restart快速重启了。
chmod 777 pp-web.initmv pp-web.init /etc/init.d-web  # 测试一下restart[root@localhost pp_res]# /etc/init.d-web restartStoping TomcatUsing CATALINA_BASE:   /datarvice-web/Using CATALINA_HOME:   /datarvice-web/Using CATALINA_TMPDIR: /datarvice-web//tempUsing JRE_HOME:        /usr/javak17/Using CLASSPATH:       /datarvice-web//bin/bootstrap.jar:/datarvice-web//bin/tomcat-juli.jar waiting for processes to exitStarting tomcatUsing CATALINA_BASE:   /datarvice-web/Using CATALINA_HOME:   /datarvice-web/Using CATALINA_TMPDIR: /datarvice-web//tempUsing JRE_HOME:        /usr/javak17/Using CLASSPATH:       /datarvice-web//bin/bootstrap.jar:/datarvice-web//bin/tomcat-juli.jarTomcat started.Tomcat is running with pid: 22703

12. 部署pp-agent采集监控数据

部署采集器就很简单了,只需要加3句话就好了。我这边做一个测试的Tomcat,来模拟部署。
cd /usr/local/pinpoint/pp_testtar -zxvf apache-tomcat-8.0.36.tar.gzmkdir pp-agent  ->将ponpint-agent移动到pp-agent文件夹中解压rm -rf /usr/local/pinpoint/pp_test/apache-tomcat-8.0.36/web/*进入pp-agent文件夹中vim pinpoint.configprofiler.collector.ip=192.168.30.100  ->注意这里是改成你collector那台机器的ipprofiler.sampling.rate=1 这是修改采集率1是代表每个请求都采集数据。这边测试为了让你更直观的看到数据监控以及变化,生产环境根据你自身业务需求修改、生产环境不建议用1、建议默认的20或者1然后修改测试项目下的tomcat启动文件"catalina.sh",修改这个只要是为了监控测试环境的Tomcat,增加探针cd /usr/local/pinpoint/pp_test/apache-tomcat-8.0.36/binvim catalina.sh在20行增加如下字段
第一行是pp-agent的jar包位置第二行是agent的ID,这个ID是唯一的,我是用pp + 今天的日期命名的,只要与其他的项目的ID不重复就好了第三行是采集项目的名字,这个名字可以随便取,只要各个项目不重复就好了CATALINA_OPTS="$CATALINA_OPTS -javaagent:/usr/local/pinpoint/pp_test/pp-agent/pinpoint-bootstrap-1.6.2.jar"CATALINA_OPTS="$CATALINA_OPTS -Dpinpoint.agentId=pp20180303"CATALINA_OPTS="$CATALINA_OPTS -Dpinpoint.applicationName=MyTestPP

jar包部署的方式,增加探针 java -javaagent:/usr/local/pinpoint/pp_test/pp-agent/pinpoint-bootstrap-1.6.2.jar -Dpinpoint.agentId=20180307 -Dpinpoint.applicationName=Common-Service -jar common-service-0.0.1-SNAPSHOT.jar

13 监控Tomcat

配置好了。就可以开始监控了,我们启动测试用的Tomcat的服务器cd /usr/local/pinpoint/pp_test/apache-tomcat-8.0.36/bin/./startup.sh然后访问192.168.30.100:8080/test  出现Hello World!!!那么恭喜你部署成功这时候我们在访问pp-web,可以发现它的下拉框中,多了一个app




接下来是使用篇


如图第一个直角坐标图部署点击的 是鼠标右键然后拖拉之后会进去详情界面 是拖拉拖拉拖拉!!!重要的事情要说三遍 笔者就被坑了N次一直不懂操作然后会进来一个详情界面,里面显示着请求时间,sql,sql执行时间等等。 其它操作没啥好说的,看见按钮就点击。


pp讲解到这就结束了。希望大家多多支持 --By cks
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐