如何在Linux中安装并配置Pinpoint Linux监控分布式链路的方法

夏涛同学_8556

夏涛同学_8556

2026-05-31

686人浏览

原创

pinpoint是java应用分布式链路追踪apm工具,非系统监控工具;安装失败或数据不显示主因是hbase初始化失败、agent参数错误或端口冲突,需逐层验证agent→collector→hbase双向通信可达性。

如何在linux中安装并配置pinpoint linux监控分布式链路的方法

Pinpoint 不是传统意义上的“Linux监控工具”,它不采集 CPU、内存、磁盘等系统指标,而是专用于 Java 应用的**分布式链路追踪(APM)**。安装失败或数据不显示,90% 出在 HBase 初始化、Agent 启动参数或端口冲突上。

为什么 hbase shell hbase-create.hbase 执行后没反应或报错

这不是脚本卡住,而是 HBase 服务未就绪或 ZooKeeper 未正常响应。常见现象包括:ERROR: org.apache.hadoop.hbase.ZooKeeperConnectionException 或长时间无输出。

  • 先确认 HMaster 进程存活:jps | grep HMaster,没有则 ./start-hbase.sh 后等 10–20 秒再试
  • hbase-create.hbase 必须是与当前 pinpoint 版本严格匹配的脚本(如 v2.3.3 就得用 v2.3.3 分支下的脚本),不能混用 1.x 和 3.x 的脚本
  • 检查 hbase-site.xml 中 hbase.zookeeper.quorum 是否显式设为 localhost(单机部署必须写死,不能留空或注释掉)
  • 执行前手动进 shell 测试连通性:./hbase shell → 输入 status,返回 1 active master, 0 backup masters... 才算真正就绪

pinpoint-agent 加了 JVM 参数但 Web UI 看不到应用节点

Agent 启动成功 ≠ 数据已送达 Collector。最常被忽略的是 Collector 地址配置和防火墙。

Obsidian (Linux)
Obsidian (Linux)

操作 Obsidian 库(纯 Markdown 笔记),并通过 notesmd-cli 实现自动化。

下载
  • JVM 参数中 -Dpinpoint.collector.ip=192.168.204.233 的 IP 必须是 Collector 主机的**实际监听 IP**(不是 127.0.0.1 或 localhost),且该主机的 9991 端口需开放(v2.3+ 默认用此端口接收 span 数据)
  • Agent 日志(logs/pinpoint.log)里出现 Failed to connect to collector 或 Connection refused,优先查 Collector 进程是否运行、端口是否被占用(netstat -tuln | grep 9991)
  • Collector 启动日志末尾必须有 Started PinpointWebApplication in ... seconds(boot 版本)或 INFO: Server startup in ... ms(war 版本),否则只是假启动
  • Spring Boot 应用加 Agent 时,-javaagent 必须放在 -jar 之前,顺序错误会导致静默失效

pinpoint-web-boot 启动后页面空白或 500 错误

Web 服务本身跑起来了,但无法连接后端存储或 Collector,典型表现是首页加载缓慢后报 Failed to load resource: net::ERR_CONNECTION_REFUSED。

  • 检查 pinpoint-web-boot-*.jar 启动时是否传入了正确的配置:必须指定 --spring.profiles.active=production,否则默认走 local 配置,连不上 HBase
  • HBase 表必须已存在且可读写:用 ./hbase shell → list 确认看到 AgentInfo、TraceV2 等表;再执行 count 'AgentInfo' 看是否非零(Agent 上报后才会有数据)
  • Web 服务依赖的 HBase 客户端版本必须与 HBase 服务端兼容(例如 HBase 1.4.9 要配 hbase-client-1.4.9.jar),boot jar 内嵌的 client 版本不匹配会导致 NoClassDefFoundError
  • 浏览器 F12 查 Network,点开 /applications 请求,看响应体是否含 "message":"HBase is not available" —— 这说明 Web 层连 HBase 失败,不是前端问题
真正难调的从来不是“怎么装”,而是确认每个组件之间**双向通信可达**:Agent → Collector → HBase ← Web。少一个箭头,整条链就断。尤其注意 v3.0+ 引入了 Pinot 替代部分 HBase 功能,但文档没说清哪些表仍依赖 HBase —— 别盲目升级。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

linux

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
什么是分布式
什么是分布式

分布式是一种计算和数据处理的方式,将计算任务或数据分散到多个计算机或节点中进行处理。本专题为大家提供分布式相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.11

2053

5

分布式和微服务的区别
分布式和微服务的区别

分布式和微服务的区别在定义和概念、设计思想、粒度和复杂性、服务边界和自治性、技术栈和部署方式等。本专题为大家提供分布式和微服务相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.07

3154

5

string转int
string转int

在编程中,我们经常会遇到需要将字符串(str)转换为整数(int)的情况。这可能是因为我们需要对字符串进行数值计算,或者需要将用户输入的字符串转换为整数进行处理。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.08.02

6439

3

int占多少字节
int占多少字节

int占4个字节,意味着一个int变量可以存储范围在-2,147,483,648到2,147,483,647之间的整数值,在某些情况下也可能是2个字节或8个字节,int是一种常用的数据类型,用于表示整数,需要根据具体情况选择合适的数据类型,以确保程序的正确性和性能。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.08.29

3125

6

c++怎么把double转成int
c++怎么把double转成int

本专题整合了 c++ double相关教程,阅读专题下面的文章了解更多详细内容。

2025.08.29

4028

10

C++中int的含义
C++中int的含义

本专题整合了C++中int相关内容,阅读专题下面的文章了解更多详细内容。

2025.08.29

2785

10

磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

2023.06.21

4130

4

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

2023.06.29

3513

10

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2023.06.30

2713

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Python uv官方安装与入门文档
Python uv官方安装与入门文档

共0课时 | 0人学习

Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习