美文网首页
pinpoint介绍以及安装文档

pinpoint介绍以及安装文档

作者: dinel | 来源:发表于2020-09-15 09:17 被阅读0次

    一.Pinpoint是什么?

    Pinpoint是一款全链路分析工具,提供了无侵入式的调用链监控、方法执行详情查看、应用状态信息监控等功能。基于GoogleDapper论文进行的实现,与另一款开源的全链路分析工具Zipkin类似,但相比Zipkin提供了无侵入式、代码维度的监控等更多的特性。 Pinpoint支持的功能比较丰富,可以支持如下几种功能:

    1.服务拓扑图:对整个系统中应用的调用关系进行了可视化的展示,单击某个服务节点,可以显示该节点的详细信息,比如当前节点状态、请求数量等

    2.实时活跃线程图:监控应用内活跃线程的执行情况,对应用的线程执行性能可以有比较直观的了解

    3.请求响应散点图:以时间维度进行请求计数和响应时间的展示,拖过拖动图表可以选择对应的请求查看执行的详细情况

    4.请求调用栈查看:对分布式环境中每个请求提供了代码维度的可见性,可以在页面中查看请求针对到代码维度的执行详情,帮助查找请求的瓶颈和故障原因。

    5.应用状态、机器状态检查:通过这个功能可以查看相关应用程序的其他的一些详细信息,比如CPU使用情况,内存状态、垃圾收集状态,TPS和JVM信息等参数。

    二.架构组成

    Pinpoint 主要由 3 个组件外加 Hbase 数据库组成,三个组件分别为:Agent、Collector 和 Web UI。

    1.Agent组件:用于收集应用端监控数据,无侵入式,只需要在启动命令中加入部分参数即可

    2.Collector组件:数据收集模块,接收Agent发送过来的监控数据,并存储到HBase

    3.WebUI:监控展示模块,展示系统调用关系、调用详情、应用状态等,并支持报警等功能

    图片.png

    三.各组件兼容性

    1.Java要求的版本

    图片.png
    1. HBase 兼容性表
    图片.png
    1. Agent - Collector 兼容性表
    图片.png
    1. Flink 兼容性表
    图片.png
    1. 本次安装版本说明

    2. tomcat:apache-tomcat-8.0.36

    3. Hbase:hbase-1.2.12

    4. pinpoint-agent:pinpoint-agent-1.7.3

    5. pinpoint-collector:pinpoint-collector-1.7.3

    6. pinpoint-web:pinpoint-web-1.7.3

    7. jdk:java-1.8

    8. Flink:本次版本安装未使用flink

    四.安装规划

    图片.png

    五.安装步骤

    说明:该文档不包含jdk安装说明

    1. 192.168.229.128节点内容安装

    图片.png

    1)安装Hbase

    pinpoint收集来的测试数据,主要是存在Hbase数据库的。所以它可以收集大量的数据,可以进行更加详细的分析。

    1.1解压hbase文件

            [root@master pp_res]# tar -zxvf hbase-1.2.12-bin.tar.gz
            [root@master pp_res]# mkdir -p /data/service
            [root@master pp_res]# mv hbase-1.2.12/ /data/service/hbase
    

    1.2

    
    [root@master pp_res]# echo $JAVA_HOME
    /home/jdk/jdk1.8.0_161
    [root@master pp_res]#cd /data/service/hbase/conf/
    [root@master pp_res]# vi hbase-env.sh
    

    增加

    export JAVA_HOME=/home/jdk/jdk1.8.0_161
    

    1.3 修改Hbase的配置信息

    [root@master conf]# vi hbase-site.xml
    
    增加内容: 用于指定HBase数据的存储位置
    
    <configuration>
     <property>
     <name>hbase.rootdir</name>
     <value>file:///data/hbase</value>
     </property>
    </configuration>
    

    1.4启动hbase

    [root@master conf]# cd /data/service/hbase/bin
    [root@master bin]# ./start-hbase.sh
    [root@master bin]# jps
    

    2235 HMaster

    9115 Jps

    1.5 初始化Hbase的pinpoint库

    Github上提供了pinpoint在Hbase中初始化的脚步

    [root@master conf]# cd /data/service/hbase/bin
    [root@master conf]#
    ./hbase shell /home/pp_res/hbase-create.hbase
    
    
    图片.png

    2)安装pinpoint-collector

    pinpoint-collector该文档中使用了tomcat进行部署,而且与pinpoint-web分别使用了一套tomcat进行部署,此处可确认是否有其他方式部署。

    3.1部署tomcat

    [root@master pp_res]# tar -zxvf apache-tomcat-8.0.36.tar.gz
    
    [root@master pp_res]#
    
    mv apache-tomcat-8.0.36/ /data/service/pp-col
    
    

    3.2 由于collector 与web 个使用一套tomcat部署此处修改tomcat端口映射关系

    [root@master pp_res]# cd /data/service/pp-col/conf/
    [root@master 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/192.168.229.128/`ifconfig eth0 | grep 'inet addr' | awk '{print $2}' | awk -F: '{print $2}'`/g" server.xml
    

    3.3

        [root@master conf]# cd /home/pp_res/
        [root@master pp_res]# rm -rf /data/service/pp-col/webapps/*
        [root@master pp_res]# unzip pinpoint-collector-1.7.3.war -d /data/service/pp-col/webapps/ROOT
        [root@master pp_res]# cd /data/service/pp-col/bin/
    [root@master bin]# ./startup.sh
    

    3.3配置快速启动(略)

    3)安装pinpoint-web

    3.1部署tomcat

    [root@master pp_res]# tar -zxvf apache-tomcat-8.0.36.tar.gz
    
    [root@master pp_res]#
    
    mv apache-tomcat-8.0.36/ /data/service/pp-web
    

    3.2 由于collector 与web 个使用一套tomcat部署此处修改tomcat端口映射关系

    [root@master pp_res]# cd /data/service/pp-col/conf/
    [root@master 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/192.168.229.128/`ifconfig eth0 | grep 'inet addr' | awk '{print $2}' | awk -F: '{print $2}'`/g" server.xml
    
    
    
        3.3 
    
        [root@master conf]# cd /home/pp_res/
        [root@master pp_res]# rm -rf /data/service/pp-web/webapps/*
        [root@master pp_res]# 
     unzip pinpoint-web-1.7.3.war -d /data/service/pp-web/webapps/ROOT
        [root@master pp_res]# cd /data/service/pp-web/bin/
            [root@master bin]# ./startup.sh
    

    3.3 配置快速启动(略)

    2. 192.168.229.129/192.168.229.130节点内容安装

    两个节点分别部署不同的项目,此处只对192.168.229.129进行说明

    图片.png
    1. 安装pinpoint-agent
    [root@slave1 pp_test]#mkdir pinpoint-agent-1.7.3
    [root@slave1 pp_test]# 
    tar -zxvf pinpoint-agent-1.7.3.tar.gz -C pinpoint-agent-1.7.3
    [root@slave1 pp_test]# mv pinpoint-agent-1.7.3 /data/pp-agent
    
    [root@slave1 pp_test]# cd /data/pp-agent/
    
    [root@slave1 pp_test]#  vi pinpoint.config
        修改配置用于识别 pinpoint-collector
        profiler.collector.ip=192.168.229.128
    

    2)启动业务项目

            java -javaagent:/data/pp-agent/pinpoint-bootstrap-1.7.3.jar         -Dpinpoint.applicationName=AppMember    -Dpinpoint.agentId=AppMember 
             -jar /home/pp_test/springcloud-2.0-member-0.0.1-SNAPSHOT.jar 
    
    1.  -javaagent:/data/pp-agent/pinpoint-bootstrap-1.7.3.jar
        pinpoint-agent探针所在jar位置
    2.-Dpinpoint.applicationName=AppMember
           采集项目的名字,这个名字可以随便取,只要各个项目不重复就好了
        3.-Dpinpoint.agentId=AppMember
          第二行是agent的ID,这个ID是唯一的
        4.-jar /home/pp_test/springcloud-2.0-member-0.0.1-SNAPSHOT.jar
          运行jar所在位置
        
        说明:由于其他节点安装步骤相同,此处不做说明。目前没有找到在数据库服务器增加探针的说明
    

    3. 安装效果

    图片.png

    相关文章

      网友评论

          本文标题:pinpoint介绍以及安装文档

          本文链接:https://www.haomeiwen.com/subject/dzuxyktx.html