分布式系统监控pinpoint搭建

  • A+
所属分类:服务相关
环境确认:
    centos 7.4
    需要实施监控java spring boot的链路
注意:
    1.如果是spring boot采用的不是默认tomcat而是undertow,那么采用的版本至少1.8以上,目前官网打包的是1.7.3,所以需要自己打包成war包。这是一个坑,不然会web出现能看到服务,但是没有数据
    2.agentId不能太长,不支持大于24字符,不然会失败
    3.默认pinpoint需要开启tcp9994 udp 9995 9996,等,如果需要做安全,需要考虑这个tcp udp
由于官网没有最新的1.8war包,手动编译war包
安装过程:
    1.下载最新的包文件,如果很慢可以去打包下载zip然后上传
        git clone https://github.com/naver/pinpoint.git
2.安装jdk,需要jdk6,7 ,8,9版本(由于9官网没有下载地址了,我改为10也木有报错)
    ①下载jdk 6 7 8
        yum -y install java-1.* # 包含jdk1.6,1.7,1.8
    ②jdk9的安装(没有 ,我用的10)
        rpm包安装即可
    ③设置各个版本jdk环境变量(jdk1.8是默认JAVA_HOME),然后source更新           
3.编译打包pinpoint最新版
    进入下载的pinpoint目录:
    ./mvnw install -DskipTests=true #注意 ,这个是debug模式打包,日志量非常大
    ./mvnw install -Prelease -DskipTests=true #生产环境用这个打包,INFO级别
    耐心等待,我这里打包了2个半小时
    打包完成后截图
分布式系统监控pinpoint搭建
    打包后我们需要用的war包分别在
        ./collector/target/pinpoint-collector-1.8.0-SNAPSHOT.war # --- pp的控制器
        ./web/target/pinpoint-web-1.8.0-SNAPSHOT.war #--- pp展示页面
        agent采集端的zip:
        ./agent/target/pinpoint-agent-1.8.0-SNAPSHOT.zip
4.安装hbase用来做存储
    下载地址:https://hbase.apache.org/
    解压进入目录
    修改conf/hbase-site.xml


    启动hbase:
    ./bin/start-hbase.sh
    jps查看是否启动成功,如果有HMaster代表启动成功
    导入初始表结构数据,初始数据在pinpoint的源码目录下面的hbase/scripts/hbase-create.hbase
        /usr/local/hbase-1.2.6.1/bin/hbase shell hbase-create.hbase
    查看是否创建成功
        /usr/local/hbase-1.2.6.1/bin/hbase shell
        hbase(main):001:0> status 'detailed'
5.安装tomcat:
    下载tomcat8 最新版然后将
        ./collector/target/pinpoint-collector-1.8.0-SNAPSHOT.war
        ./web/target/pinpoint-web-1.8.0-SNAPSHOT.war
    放入tomcat下面 webapp,由于hbase和pinpoint都是本机,所以都不需要修改
    直接启动tomcat,查看日志,确保启动成功,然后访问pinpoint-web-1.8.0-SNAPSHOT这个项目就能看到界面
6.用户端安装pinpoint-agent-1.8.0-SNAPSHOT.zip
    将./agent/target/pinpoint-agent-1.8.0-SNAPSHOT.zip发送到客户端,然后解压修改pinpoint.config
    profiler.collector.ip=172.18.11.195 #pinpoint服务器IP
7.启动spring boot加入参数:
    java -server -Xms3000m -Xmx3000m -javaagent:/usr/local/pinpoint/pinpoint-bootstrap-1.8.0-SNAPSHOT.jar -Dpinpoint.agentId=product-server-01 -Dpinpoint.applicationName=product-server -jar product-server.jar --spring.profiles.active=prod
    #说明:
    -javaagent:指定解压出来的pinproint的agent的jar包
    -Dpinpoint.agentId:这个全局唯一,不能和其他一样(不能大于24字符,坑我一天
    -Dpinpoint.applicationName:这个是应用组,比如一个应用部署了多台,这个名字一样就行
最后来个图

分布式系统监控pinpoint搭建

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
admin

发表评论

您必须登录才能发表评论!