介绍
Pinpoint是一款非常优秀的分布式应用性能监控工具,但是手动安装比较繁琐,所以本文将介绍如何使用自动化脚本快速搭建Pinpoint。
环境要求
操作系统:CentOS 7.x
JDK版本:JDK 8
数据库:MySQL 5.5及以上版本
安装步骤
1. 安装MySQL
# 安装MySQL
sudo yum install -y mysql-server
# 启动MySQL
sudo systemctl start mysqld
# 设置MySQL开机自启动
sudo systemctl enable mysqld
# 设置MySQL root用户密码
sudo mysql_secure_installation
2. 创建数据库
# 登录MySQL
mysql -u root -p
# 创建数据库
CREATE DATABASE pinpoint;
# 创建数据库用户
CREATE USER 'pinpoint'@'localhost' IDENTIFIED BY 'password';
# 授权
GRANT ALL PRIVILEGES ON pinpoint.* TO 'pinpoint'@'localhost';
# 刷新权限
FLUSH PRIVILEGES;
# 退出MySQL
exit
3. 下载Pinpoint
# 创建目录
sudo mkdir -p /usr/local/pinpoint
# 下载安装包
sudo wget https://github.com/naver/pinpoint/releases/download/v2.2.3/pinpoint-2.2.3.tar.gz
# 解压安装包
sudo tar -zxvf pinpoint-2.2.3.tar.gz -C /usr/local/pinpoint --strip-components 1
4. 修改配置文件
# 修改MySQL连接配置
sudo sed -i 's/jdbc:mysql:\/\/localhost:3306\/pinpoint/jdbc:mysql:\/\/localhost:3306\/pinpoint?characterEncoding=UTF-8\&useSSL=false\&autoReconnect=true\&useUnicode=true\&useJDBCCompliantTimezoneShift=true\&useLegacyDatetimeCode=false\&serverTimezone=UTC/g' /usr/local/pinpoint/web/hbase/conf/hbase-site.xml
sudo sed -i 's/jdbc:mysql:\/\/localhost:3306\/pinpoint/jdbc:mysql:\/\/localhost:3306\/pinpoint?characterEncoding=UTF-8\&useSSL=false\&autoReconnect=true\&useUnicode=true\&useJDBCCompliantTimezoneShift=true\&useLegacyDatetimeCode=false\&serverTimezone=UTC/g' /usr/local/pinpoint/collector/conf/pinpoint-collector.properties
sudo sed -i 's/jdbc:mysql:\/\/localhost:3306\/pinpoint/jdbc:mysql:\/\/localhost:3306\/pinpoint?characterEncoding=UTF-8\&useSSL=false\&autoReconnect=true\&useUnicode=true\&useJDBCCompliantTimezoneShift=true\&useLegacyDatetimeCode=false\&serverTimezone=UTC/g' /usr/local/pinpoint/collector/conf/profiles/*.yml
# 修改Web服务端口号
sudo sed -i 's/server.port=8080/server.port=80/g' /usr/local/pinpoint/web/src/main/resources/application.properties
# 修改Collector服务端口号
sudo sed -i 's/collector.tcpListenPort=9994/collector.tcpListenPort=7901/g' /usr/local/pinpoint/collector/conf/pinpoint-collector.properties
sudo sed -i 's/collector.stat.port=9995/collector.stat.port=7902/g' /usr/local/pinpoint/collector/conf/pinpoint-collector.properties
sudo sed -i 's/collector.span.port=9996/collector.span.port=7903/g' /usr/local/pinpoint/collector/conf/pinpoint-collector.properties
# 修改Agent启动参数
sudo sed -i 's/# -Dpinpoint.agentId=agentId/-Dpinpoint.agentId=agentId/g' /usr/local/pinpoint/agent/pinpoint.config
sudo sed -i 's/# -Dpinpoint.applicationName=applicationName/-Dpinpoint.applicationName=applicationName/g' /usr/local/pinpoint/agent/pinpoint.config
5. 启动Pinpoint
# 启动HBase
sudo /usr/local/pinpoint/hbase/bin/start-hbase.sh
# 启动Collector
sudo /usr/local/pinpoint/collector/bin/start-collector.sh
# 启动Web
sudo /usr/local/pinpoint/web/bin/start-web.sh
# 启动Agent
# 将以下命令添加到应用启动脚本中
# -javaagent:/usr/local/pinpoint/agent/pinpoint-bootstrap-2.2.3.jar -Dpinpoint.agentId=agentId -Dpinpoint.applicationName=applicationName
6. 访问Web界面
在浏览器中输入http://服务器IP即可访问Pinpoint的Web界面。
配置Pinpoint
在完成了自动化搭建Pinpoint后,需要进行相应的配置才能正常使用,包括应用监控和告警功能的配置。
应用监控
1. 配置Agent
在需要监控的应用服务器上安装Pinpoint Agent,并修改agent配置文件/usr/local/pinpoint/agent/pinpoint.config
,设置profiler.applicationservertype
为应用服务器的类型,例如Tomcat
、Jetty
、SpringBoot
等。
2. 添加应用
在Pinpoint的Web界面中,点击左侧菜单的“应用管理”-“新增应用”,填写应用信息,例如应用名称、应用服务器类型、应用服务器地址、应用服务器端口等。
3. 查看应用监控数据
在Pinpoint的Web界面中,点击左侧菜单的“实时画面”,选择已添加的应用,即可查看应用监控数据,例如应用实时流量、应用拓扑图、应用性能指标等。
告警配置
1. 添加告警规则
在Pinpoint的Web界面中,点击左侧菜单的“告警中心”-“告警规则”,点击“新增规则”,添加告警规则,设置告警类型、告警阈值、告警接收人等信息。
2. 查看告警信息
当监控数据触发告警规则时,会发送告警信息给指定的接收人,接收人可以在Pinpoint的Web界面中,点击左侧菜单的“告警中心”-“告警历史”,查看告警历史信息。
结语
通过自动化脚本可以快速搭建Pinpoint,极大地提高了安装的效率。