当前位置 主页 > 服务器问题 > Linux/apache问题 >

    详解Java中的pinpoint1.8.5安装及使用指南

    栏目:Linux/apache问题 时间:2019-10-29 09:53

    pinpoint1.8.5安装及使用指南

    简介

    pinpoint是开源在github上的一款APM监控工具,它是用Java编写的,用于大规模分布式系统监控。它对性能的影响最小(只增加约3%资源利用率),安装agent是无侵入式的。

    各大APM工具,几乎都是根据google这篇经典的Dapper论文而来,一定要读一读。这里是它的源文地址:https://research.google.com/pubs/pub36356.html,感谢这位同学的翻译:http://bigbully.github.io/Dapper-translation/

    pinpoint提供了一些功能:

    服务映射:通过可视化其组件如何互连来了解任何分布式系统的关联关系。单击节点可显示有关组件的详细信息,例如其当前状态和事务计数。

    实时的活跃线程数

    请求/响应散点图

    调用栈

    查看有关应用程序的其他详细信息,例如CPU使用率,内存/垃圾收集,TPS和JVM参数

    整个pinpoint架构分为3部分:pinpoint-collector、pinpoint-agent、pinpoint-webUI。

    pinpoint-agent:用来收集单个应用的信息,并将收集好的应用信息发送到pinpoint-collector中
    pinpoint-collector:用来处理pinpoint-agent发送过来的信息,并将信息收集好之后存储到HBase中
    pinpoint-webUI:查找出HBase中的数据并展示

    所以我这里需要准备两台机器:

    10.200.201.xxx:用于安装pinpoint-collector、pinpoint-webUI、HBase
    10.200.201.yyy:用于安装pinpoint-agent,负责收集应用的信息

    环境安装

    安装jdk

    我这里用的是rpm包直接安装的:rpm -ivh jdk-8u171-linux-x64.rpm

    安装好后配置一下JAVA_HOME:

    使用vim配置一下环境变量:

    vim /etc/profile
    
    export JAVA_HOME=/usr/java/jdk1.8.0_45
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    export PATH=$PATH:$JAVA_HOME/bin

    然后加载一些profile文件:

    source /etc/profile

    安装HBase

    这里有个对照图:


    由上面我们可以看到HBase我们需要安装1.2.x版本的

    下载地址:
    http://archive.apache.org/dist/hbase/

    我这里下载的是1.2.12版本的。

    将Hbse放到指定目录

    cd /app/install
    tar -zxvf hbase-1.2.12-bin.tar.gz

    修改配置信息

    修改hbase-env.sh

    vim /app/install/hbase-1.2.12/conf/hbase-env.sh
    
    #加入JAVA_HOME
    export JAVA_HOME=/usr/java/jdk1.8.0_45
    

    修改hbase-site.xml

    vim /app/install/hbase-1.2.12/conf/hbase-site.xml
    
    <configuration>
      <property>
       <name>hbase.rootdir</name>
       <value>file:///app/data/hbase</value>
      </property>
      <property>
       <name>hbase.zookeeper.property.dataDir</name>
       <value>/app/data/zookeeper</value>
      </property>
      <property>
       <name>hbase.zookeeper.property.clientPort</name>
       <value>2181</value>
       <description>Property from ZooKeeper'sconfig zoo.cfg. The port at which the clients will connect.
       </description>
      </property>
      <!-- false是单机模式,true是分布式模式 -->
      <property>
       <name>hbase.cluster.distributed</name>
       <value>false</value>
      </property>
    </configuration>