快速入门
通过本快速入门,您可在短时间内从零开始,使用 BlueKing Lite 监控平台,快速接入并分析主机、数据库、容器 (K8s/Docker)、网络设备或虚拟化平台 (VMware) 的运行数据。内容包括配置自动采集、查看监控视图,以及分析关键性能指标。
操作系统
接入主机监控 (Host)
本节将引导您接入 Linux 或 Windows 主机的基础性能监控。
步骤一:选择集成插件
集成中心是所有监控对象的管理枢纽。
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:在左侧菜单树中,根据您的需求选择组件。
- 平台已内置了
操作系统、数据库、中间件、网络等分类。 - 以主机监控为例: 点击 “操作系统” -> “主机”。
- 平台已内置了
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
![]()
- 左侧菜单树:这里列出了所有支持的监控对象(如 K8s、交换机、Redis 等),体现了平台的全栈能力。
- 实例列表:右侧展示了当前已接入的主机状态,您可以看到它们的采集状态及资源使用率概览。
步骤二:配置采集策略
系统已预置了标准化的采集模板,您只需简单配置即可下发任务。
- 点击“接入”后,进入配置面板。
- 配置指标 (Metrics):
- 建议保持默认全选,包括
Memory(内存)、Net(网络)、Processes(进程)、System(负载) 等核心指标。 - 间隔:默认为
10s,可根据对精度的需求进行调整。
- 建议保持默认全选,包括
- 选择监控对象:
- 在底部的 “监控对象” 区域,点击 “节点” 下拉框。
- 选择您已纳管的目标服务器(如
default或fusion-collector)。
- 点击底部的 “确认” 按钮。
🖼️ 界面指引:
![]()
- 指标勾选区:系统自动列出了该组件(Telegraf)支持的所有指标,打钩即采集。
- 监控对象区:在此处绑定具体的服务器 IP,支持批量选择多个节点同时下发。
步骤三:验证与分析
配置下发成功后,无需手动绘图,系统会自动生成专业的 “视图” 等可视化看板。这也是验证接入是否成功的关键步骤。
- 配置完成后,点击页面上方导航的 “视图” 模块。
- 在左侧资源分类树中,点击“主机”,在右侧资源列表中找到刚才接入的实例(如
fusion-collector)。 - 点击实例行尾的 下拉或查看指令(即打开该资源的实例查看弹层):
- 监控视图与告警(弹层内排查):弹层内默认展现 CPU、内部等核心指标;切换“告警列表”可以看当前主机是否存在异常。
- 查看仪表盘(详情全景图):可点击弹层右上角的“查看仪表盘”进入专属的详情主路由,查阅包括「等待 IO 占比、系统/用户态消耗等关键曲线」。
- 时间回溯与联动:使用图表全局的时间选择器(默认“最近15分钟”),可同步刷新图表查看历史时段的性能表现。
🖼️ 界面指引:
- 左侧列表:快速切换查看不同主机的监控详情。
- 图表区域:
- 等待 IO 时间占比:波峰过高可能意味着磁盘读写存在瓶颈。
- CPU 使用率:展示系统整体的负载情况。
- CPU 空闲率:直观反映资源的剩余情况。
网络监控
本章节涵盖 网站拨测 (Website) 和Ping 检测的监控接入流程。
接入网站拨测 (Website)
本功能通过 HTTP/HTTPS 协议,从指定的探测节点向目标 URL 发起请求,以监控网站或 API 接口的可用性及响应时间。
步骤一:选择集成插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “网络” 分类。
- 点击 “网站” (Web)。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:此插件使用 Telegraf 采集器,支持定期检测 Web 服务的连通性。
步骤二:配置采集策略
在此步骤中,您需要指定 “谁去测” (节点) 以及 “测什么” (URL)。
- 基本配置:
- 间隔:设置拨测频率,默认为
10s(即每 10 秒发起一次请求)。
- 间隔:设置拨测频率,默认为
- 配置监控对象:
- 节点 (Probe):在下拉框中选择一台已纳管的主机作为 “探测源”。
- 注意:请确保选中的节点可以访问目标 URL(例如节点能上外网,或者节点与内网 API 网络互通)。
- URL (Target):输入您希望监控的目标地址(例如
https://www.baidu.com或http://192.168.1.100:8080/health)。 - 实例名称:建议命名为“网站名-探测源”,便于后续识别。
- 节点 (Probe):在下拉框中选择一台已纳管的主机作为 “探测源”。
- 点击 “确认”。
🖼️ 界面指引:
- 配置逻辑:系统将下发指令给选中的“节点”,让它去访问填写的“URL”。
步骤三:验证与分析
- 配置完成后,点击页面上方 “视图” 模块。
- 在左侧资源分类树中,展开 “网络” -> “网站”。
- 点击并打开刚才创建实例名称(如
https://bklite.cn)的实例查看弹层。 - 数据验证(指标卡片或仪表盘):
- 拨测成功率:查看网站的可访问性百分比(正常应稳定,若下降则说明有探测失败)。
- HTTP 响应时间:查看请求耗时曲线(秒),波峰过高表示网络拥堵或服务器响应变慢。
- HTTP 响应状态码:确认返回码是否稳定(如图中的
200表示正常,404/500等表示异常)。
🖼️ 界面指引:
- 图表解读:
- 右上图 (响应时间):可以看到在 18:16 左右出现了一个小波峰,代表那一刻响应变慢了。
- 左下图 (状态码):紫线稳定在 200,说明服务状态正常。
接入 Ping 检测
本功能通过 ICMP 协议,从指定的探测节点向目标 IP 或域名发送 Ping 包,以检测网络层的连通性、丢包率与往返延迟。
步骤一:选择集成插件
- 在 Monitor 左侧菜单展开 “网络” 分类。
- 点击 “Ping”。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:此插件使用 Telegraf 发送 ICMP Echo Request,适用于检测服务器、网关或网络设备的连通状态。
步骤二:配置采集策略
在此步骤中,您需要配置发包源(节点)和目标地址。
- 采集配置:
- 间隔:默认为
10s,即每 10 秒进行一次 Ping 检测。
- 间隔:默认为
- 配置监控对象:
- 节点:选择一台已纳管的主机作为**“发包源”**(即从这台机器发出 Ping 命令)。
- URL:输入要检测的目标 IP 地址 或 域名。
- 注意:虽然界面显示为 URL,但对于 Ping 插件,请直接填写 IP(如
192.168.1.1)或域名(如www.baidu.com),无需加http://前缀。
- 注意:虽然界面显示为 URL,但对于 Ping 插件,请直接填写 IP(如
- 实例名称:建议命名为“Ping-目标IP”,便于识别。
- 点击 “确认”。
🖼️ 界面指引:
- 配置逻辑:系统控制“节点”去 Ping 填写的“URL(目标IP)”。
步骤三:验证与分析
- 配置完成后,点击页面上方 “视图” 模块。
- 在左侧资源分类树中,展开 “网络” -> “Ping”,进入目标列表。
- 点击打开刚才创建的实例(如
172.20.0.18)的告警/监控属性弹层。 - 数据验证:
- 平均响应时间 (ms):查看网络往返延时。如图所示,数值在极低位起表示请求极快;若数值过大或剧烈波动,说明网络拥塞。
- 数据包传输成功率 (%):衡量连通性的核心指标,正常网络环境应稳定在高通率位(如 100%)。
- 数据包丢失率 (%):若此指标非 0(出现波峰),则意味着网络存在丢包现象。
🖼️ 界面指引:
- 图表解读:
- 右上图 (平均响应时间):曲线展示了毫秒级的延迟波动。图例中延迟在 0.05ms - 0.1ms 之间震荡,属于正常的网络抖动。
- 左下图 (传输成功率):粉色线条平稳维持在 100 刻度线,说明目标 IP 连通性良好,无任何丢包。
数据库监控
本章节涵盖 Elasticsearch、MySQL、Redis 等主流数据库组件的监控接入流程。
接入 Elasticsearch
通过 Telegraf 插件连接 Elasticsearch 集群,采集集群健康状态、节点性能、索引及 JVM 内存使用情况。
前置条件
在开始接入前,请确保满足以下条件:
-
版本支持
- ElasticSearch 版本:
6.8及以上(推荐7.x或8.x) - Telegraf Agent: 已在指定采集节点上安装并运行。
- ElasticSearch 版本:
-
网络连通性
- 确保 Telegraf 所在的采集节点服务器可以访问到目标 ElasticSearch 的 HTTP/HTTPS 端口(默认为
9200,部分环境可能配置为39201等自定义端口)。 - 如有防火墙或安全组,请提前放行 TCP 协议。
- 确保 Telegraf 所在的采集节点服务器可以访问到目标 ElasticSearch 的 HTTP/HTTPS 端口(默认为
-
创建专用的监控账号 (安全最佳实践) 为了遵循最小权限原则,避免使用
elastic超级管理员账号进行明文配置,建议通过 REST API 创建一个仅具备读取权限的专用账号。操作步骤如下:
注意:如果您的 ES 集群开启了 HTTPS 且使用自签名证书(如内网环境),请在以下
curl命令中添加-k参数来跳过证书验证。a. 创建只读角色 (Role) 首先定义一个名为
read_only_role的角色,仅赋予集群监控和索引读取权限。 请将 URL 中的 IP 和端口替换为实际值,并使用超管账号认证。curl -k -u elastic:<超管密码> -X POST "https://<ES主机IP>:<端口>/_security/role/read_only_role" \
-H "Content-Type: application/json" \
-d '{
"cluster": ["monitor"],
"indices": [
{
"names": [ "*" ],
"privileges": [ "read", "view_index_metadata" ]
}
]
}'b. 创建监控用户 (User) 创建一个名为
monitor_user的用户,并分配上述创建的只读角色。curl -k -u elastic:<超管密码> -X POST "https://<ES主机IP>:<端口>/_security/user/monitor_user" \
-H "Content-Type: application/json" \
-d '{
"password": "<设置您的安全密码>",
"roles": [ "read_only_role" ],
"full_name": "Telegraf Monitor User"
}'c. 验证权限 使用新创建的账号尝试访问集群根目录,若返回版本信息则表示配置成功。
curl -k -u monitor_user:<您的安全密码> -X GET "https://<ES主机IP>:<端口>/"原理:
cluster: ["monitor"]:允许采集端获取集群层面的健康状况和统计信息(Cluster Stats)。indices: ["read", "view_index_metadata"]:允许采集端读取索引级别的统计数据(Index Stats),但不允许修改或删除数据,从而保障数据安全。
步骤一:选择集成插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “数据库” 分类。
- 点击 “Elasticsearch”。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:支持采集文件系统、HTTP 请求、IO 统计及文档统计等核心指标,帮助您监控集群健康状态。
步骤二:配置采集策略
在此步骤中,您需要配置 连接凭证 和 目标地址。
- 采集配置(认证信息):
- 用户名/密码:如果您的 ES 集群开启了安全认证(X-Pack/Security),请在此填写;若无密码可留空。
- 间隔:默认为
10s。
- 配置监控对象:
- 节点:选择安装了采集器的节点(通常选择 ES 服务器本机,或者一台能连通 ES 的跳板机)。
- 服务器地址:输入 ES 的访问地址。
- 示例:若是本机采集,填
http://localhost:9200;若是远程采集,填http://192.168.1.x:9200。
- 示例:若是本机采集,填
- 实例名称:建议命名为“ES-集群名”。
- 点击 “确认”。
🖼️ 界面指引:
- 服务器地址:请务必带上协议头(
http://或https://)和端口号(默认9200)。
步骤三:验证与分析
- 点击页面上方 “视图” 模块。
- 在左侧资源分类树中,展开 “数据库” -> “Elasticsearch”,点击目标实例展开弹层分析视图或进入主路由全景面板。
- 数据验证:
- Cluster Health:查看集群健康状态(Green/Yellow/Red)。
- Indices/Nodes:查看索引总数和节点总数。
- JVM Heap:查看堆内存使用率,预防 OOM 风险。
接入 MySQL
通过 Telegraf 插件连接 MySQL 数据库,采集 QPS、连接数、慢查询及流量等核心性能指标。
前置条件
在开始接入前,请确保满足以下条件:
-
版本支持
- MySQL 版本:
5.6及以上 - MariaDB 版本:
10.1及以上 - Telegraf Agent: 已在指定采集节点上安装并运行。
- MySQL 版本:
-
网络连通性
- 确保 Telegraf 所在的采集节点服务器可以访问到目标 MySQL 数据库的 服务端口。如有防火墙,请提前放行。
-
创建专用的监控账号 (安全最佳实践) 为了遵循最小权限原则,避免使用
root账号进行监控,请提前在您的 MySQL 数据库中创建一个专用的低权限监控账号。操作步骤如下:
a. 以管理员身份登录 MySQL 使用
root或其他高权限账号登录到您要监控的 MySQL 实例。mysql -h <您的MySQL主机IP> -u root -pb. 创建监控用户 执行以下 SQL 命令,创建一个名为
monitor的用户。CREATE USER 'monitor'@'%' IDENTIFIED BY '您的安全密码';说明:
- 请将
'您的安全密码'替换为一个健壮的密码。 '%'表示允许从任何 IP 连接。为提高安全性,您也可以将其替换为 Telegraf 采集节点的固定 IP 地址,例如'monitor'@'10.10.27.31'。
c. 授予最小监控权限 执行以下 SQL 命令,为
monitor用户赋予采集性能指标所必需的、最少的权限。-- 授予查看进程、主从状态的权限
GRANT PROCESS, REPLICATION CLIENT ON *.* TO 'monitor'@'%';
-- 授予读取性能指标库的权限
GRANT SELECT ON performance_schema.* TO 'monitor'@'%';
-- 授予读取元数据信息库的权限
GRANT SELECT ON information_schema.* TO 'monitor'@'%';
-- 刷新权限使其立即生效
FLUSH PRIVILEGES;原理: 此授权方案严格限制了
monitor用户的能力,使其只能读取性能相关的系统数据,无法读取业务数据表,从而保障了您数据库的业务安全。 - 请将
步骤一:选择集成插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “数据库” 分类。
- 点击 “MySQL”。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:支持采集 MySQL 数据库的健康状况及性能等关键指标。
步骤二:配置采集策略
在此步骤中,您需要配置数据库的 连接账号 和 目标地址。
- 采集配置(认证信息):
- 用户名:输入具有监控权限的 MySQL 账号。
- 密码:输入对应的密码。
- 间隔:默认为
10s。
- 配置监控对象:
- 节点:选择一台已纳管的主机作为采集器(可以是 MySQL 服务器本机,也可以是同网段的其他机器)。
- 主机:输入 MySQL 服务器的 IP 地址(如
127.0.0.1或远程 IP)。 - 端口:默认为
3306。 - 实例名称:建议命名为“MySQL-业务名”,便于识别。
- 点击 “确认”。
🖼️ 界面指引:
- 采集原理:系统将控制选中的“节点”,使用填写的账号密码,去连接目标“主机”和“端口”。
步骤三:验证与分析
- 点击页面上方 “视图” 模块。
- 在左侧资源分类树中,展开 “数据库” -> “MySQL”,点击开启目标实例资源数据视图。
- 数据验证:
- Queries (QPS):每秒查询数,反映数据库负载。
- Connections:当前连接数,若接近最大连接数需警惕。
- Slow Queries:慢查询计数,用于发现性能瓶颈。
接入 Postgres
通过 Telegraf 插件连接 PostgreSQL 数据库,采集 事务吞吐量、连接数、缓存命中率 及 死锁 等关键性能指标。
前置条件
在开始接入前,请确保满足以下条件:
-
版本支持
- PostgreSQL 版本: 建议
9.6及以上 (以便使用pg_monitor角色) - Telegraf Agent: 已在指定采集节点上安装并运行。
- PostgreSQL 版本: 建议
-
网络连通性
- 确保 Telegraf 所在的采集节点服务器可以访问到目标 PostgreSQL 数据库的 服务端口 (默认为
5432)。如有防火墙,请提前放行。
- 确保 Telegraf 所在的采集节点服务器可以访问到目标 PostgreSQL 数据库的 服务端口 (默认为
-
创建专用的监控账号 (安全最佳实践) 为了遵循最小权限原则,避免使用
postgres或其他超级用户账号进行监控,请提前在您的 PostgreSQL 实例中创建一个专用的低权限监控角色。操作步骤如下:
a. 以管理员身份登录 PostgreSQL 使用
postgres或其他高权限账号登录到您要监控的 PostgreSQL 实例。# 示例:psql -h <您的PG主机IP> -p <端口> -U <管理员用户> -d <数据库>
psql -h 10.10.90.113 -p 5432 -U postgres -d postgresb. 创建监控用户 执行以下 SQL 命令,创建一个名为
telegraf_monitor的用户。CREATE ROLE telegraf_monitor WITH LOGIN PASSWORD '您的安全密码';说明:
- 请将
'您的安全密码'替换为一个健壮的密码。 - 与 MySQL 不同,PostgreSQL 的用户访问控制主要由服务器配置文件
pg_hba.conf管理,而不是在创建用户时指定 IP。
c. 授予最小监控权限 执行以下 SQL 命令,为
telegraf_monitor用户赋予采集性能指标所必需的、最少的权限。-- 授予 'pg_monitor' 预定义角色,这是实现安全监控的最佳实践
GRANT pg_monitor TO telegraf_monitor;原理:
pg_monitor是 PostgreSQL 官方提供的预设角色,它打包了所有用于监控所需的只读权限,可以访问各类统计视图 (pg_stat_*)。此授权方案严格限制了telegraf_monitor用户的能力,使其只能读取性能相关的系统数据,无法读取任何业务数据表,从而保障了您数据库的业务安全。 - 请将
注意:启用远程连接(重要)
与许多数据库不同,PostgreSQL 默认配置非常严格,通常不允许远程网络连接。在创建完用户后,您很可能需要修改服务器端的配置文件才能使新账号从远程成功登录。
请登录到 PostgreSQL 服务器本机,检查并修改以下两个文件:
-
postgresql.conf- 目的:让 PostgreSQL 监听网络连接。
- 操作:找到
listen_addresses配置项,确保其值不是'localhost'。通常应修改为:listen_addresses = '*'
-
pg_hba.conf- 目的:添加一条“准入规则”,允许监控用户从指定 IP 远程连接。
- 操作:在文件末尾添加一行新规则。
# 格式: TYPE DATABASE USER ADDRESS/MASK METHOD
# 允许来自任何 IP 的连接 (安全性较低)
host all telegraf_monitor 0.0.0.0/0 scram-sha-256
# 或者,仅允许来自 Telegraf 节点的连接 (更安全)
# host all telegraf_monitor 10.10.27.31/32 scram-sha-256
修改完以上文件后,必须重启或重载 (restart/reload) PostgreSQL 服务才能使配置生效。
步骤一:选择集成插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “数据库” 分类。
- 点击 “Postgres”。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:支持采集 PostgreSQL 的会话管理、事务指标及 I/O 性能数据。
步骤二:配置采集策略
在此步骤中,您需要配置数据库的 连接账号 和 目标地址。
- 采集配置(认证信息):
- 用户名:输入具有监控权限的 Postgres 账号(建议赋予
pg_monitor角色或只读权限)。 - 密码:输入对应的密码。
- 间隔:默认为
10s。
- 用户名:输入具有监控权限的 Postgres 账号(建议赋予
- 配置监控对象:
- 节点:选择一台已纳管的主机作为采集器(推荐选择数据库本机,或同网段机器)。
- 主机:输入 Postgres 服务器的 IP 地址。
- 端口:默认为
5432。 - 实例名称:建议命名为“PG-业务名”,便于后续识别。
- 点击 “确认”。
🖼️ 界面指引:
- 配置逻辑:系统将使用填写的账号密码,从选中的“节点”向目标“主机”发起连接并采集数据。
步骤三:验证与分析
- 点击页面上方 “视图” 模块。
- 在左侧资源分类树中,展开 “数据库” -> “Postgres”,点击实例展开详情或右侧查看弹层。
- 数据验证:
- Transactions:查看每秒提交 (Commit) 和回滚 (Rollback) 的事务数,评估业务负载。
- Connections:查看活跃连接数,防止连接池耗尽。
- Cache Hit Rate:查看缓冲区缓存命中率,理想情况下应接近 99%。
- DB Size:监控数据库文件大小增长趋势。
接入 Redis
通过 Telegraf 插件连接 Redis 数据库,采集 命中率、内存使用量、客户端连接数 及 命令吞吐量 等关键性能指标。
前置条件
在开始接入前,请确保您已完成以下准备工作,这是保障监控顺利进行和数据安全的基础。
-
版本支持
- Redis 版本:
2.8及以上 (您当前的版本7符合要求)。 - Telegraf Agent: 已在指定采集节点上安装并运行。
- Redis 版本:
-
网络连通性
- 根据您的表格,目标 Redis 主机为
10.10.90.113,端口为6379。 - 请确保 Telegraf 所在的采集节点服务器可以访问到该主机的服务端口。如有防火墙,请提前配置放行策略。
- 根据您的表格,目标 Redis 主机为
-
创建专用的监控账号 (安全最佳实践 for Redis 6.0+) 为了遵循最小权限原则,对于 Redis 6.0 及以上版本,强烈建议创建一个专用的、低权限的监控账号。
操作步骤如下:
a. 以管理员身份登录 Redis 使用
redis-cli工具,通过现有的密码连接到您的目标实例。# -h 主机, -p 端口, -a 密码
redis-cli -h 10.10.90.113 -p 6379 -a weopsb. 执行以下命令创建低权限用户 连接成功后 (
10.10.90.113:6379>提示符),执行以下 ACL 命令创建一个名为telegraf_monitor的专用监控账号。ACL SETUSER telegraf_monitor on >Telegraf_pw_3035! +info +client +cluster +slowlog +config +ping +echo -@all原理说明:
ACL SETUSER telegraf_monitor: 创建一个新用户。>Telegraf_pw_3035!: 为这个新用户设置一个独立的、健壮的密码。+info ...: 授予该用户一系列只读的、用于监控的命令权限。-@all: 禁止该用户执行所有其他命令(如GET,SET,DEL等),确保它无法读写任何业务数据。
步骤一:选择集成插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “数据库” 分类。
- 点击 “Redis”。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:支持采集 Redis 的性能及资源使用情况,帮助识别缓存瓶颈。
步骤二:配置采集策略
在此步骤中,您需要配置数据库的 连接账号 和 目标地址。
- 采集配置(认证信息):
- 用户名:Redis 6.0 之前的版本通常留空;若使用了 ACL 认证,请填写用户名。
- 密码:输入 Redis 的连接密码(
requirepass)。 - 间隔:默认为
10s。
- 配置监控对象:
- 节点:选择一台已纳管的主机作为采集器(推荐选择 Redis 本机,或同网段机器)。
- 主机:输入 Redis 服务器的 IP 地址。
- 端口:默认为
6379。 - 实例名称:建议命名为“Redis-业务名”。
- 点击 “确认”。
🖼️ 界面指引:
- 配置逻辑:系统将使用填写的密码,从选中的“节点”向目标“主机”发起连接并采集
INFO命令返回的统计信息。
步骤三:验证与分析
- 点击页面上方 “视图” 模块。
- 在左侧资源分类树中,展开 “数据库” -> “Redis”,点击实例展开分析视图弹层。
- 数据验证:
- Hit Rate:查看缓存命中率(Keyspace Hits / (Hits + Misses)),理想值应高于 80%。
- Used Memory:监控内存使用量,防止内存溢出导致数据驱逐 (Eviction)。
- Clients:查看已连接的客户端数量。
- Commands/s:查看每秒处理的命令数 (QPS)。
接入 Oracle
由于 Oracle 监控依赖专用的采集驱动,接入前需要在目标节点上手动安装 Exporter 组件。
前置步骤:安装采集组件
在配置监控之前,请先前往 “节点管理 (Node)” 模块下发 Oracle 采集器。
- 进入 “Node (节点)” 模块,点击左侧 “节点管理”。
- 选择目标节点:
- 在节点列表中,勾选您计划用来运行监控任务的服务器(采集器节点)。
- 点击列表上方的 “托管组件” 按钮。
- 再点击 “安装组件” 按钮。
- 安装组件:
- 类型:选择
监控。 - 组件:在下拉框中选择
Oracle-Exporter。 - 版本号:选择最新版本。
- 类型:选择
- 点击 “确认”,等待安装状态变为“安装成功”。
🖼️ 界面指引:
![]()
![]()
- 操作逻辑:Oracle 监控需要专门的驱动程序,这一步相当于给您的采集器“安装驱动”。
步骤一:选择集成插件
组件安装完成后,返回监控模块进行配置。
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 在左侧菜单展开 “数据库”,点击 “Oracle”。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:通过 Oracle Exporter 采集表空间使用率、会话数、锁等待及吞吐量等指标。
步骤二:配置采集策略
- 采集配置:
- 密码:输入 Oracle 数据库的连接密码。
- 服务名称:输入 Oracle Service Name(例如
ORCL或PDB1)。 - 间隔:默认为
10s。
- 配置监控对象:
- 节点:必须选择刚才安装了 Oracle-Exporter 组件的那个节点。
- 监听端口:默认为
1521。 - 主机:输入 Oracle 数据库的 IP 地址。
- 实例名称:建议命名为“Oracle-业务名”。
- 点击 “确认”。
🖼️ 界面指引:
- 注意事项:在“节点”下拉框中,只能选择已安装 Oracle 组件的机器,否则任务会启动失败。
步骤三:验证与分析
- 进入 “视图” 模块,选择 “Oracle” 分类。
- 数据验证:
- Tablespace Used:监控表空间使用率,防止空间耗尽。
- Sessions:查看活跃会话数与最大连接数限制。
- Wait Time:查看数据库锁等待时间,分析性能瓶颈。
接入 MongoDB
通过 Telegraf 插件连接 MongoDB 数据库,采集 读写活动、命令执行、连接数、网络流量 及 锁状态 等关键指标。
前置条件
在开始接入前,请确保您已完成以下准备工作,这是保障监控顺利进行和数据安全的基础。
-
版本支持
- MongoDB Server 版本:
3.2及以上 (根据实际连接,您当前的版本为4.4)。 - Telegraf Agent: 已在指定采集节点上安装并运行。
- MongoDB Server 版本:
-
网络连通性
- 请确保 Telegraf 所在的采集节点服务器可以访问到该主机的服务端口。如有防火墙,请提前配置放行策略。
-
创建专用的监控账号 (安全最佳实践) 为了遵循最小权限原则,强烈建议避免使用
root或其他高权限账号进行监控。请提前在您的 MongoDB 实例中创建一个专用的、低权限的监控账号。操作步骤如下:
a. (如需要) 在采集机上安装匹配的 Mongo Shell 为避免兼容性问题,建议在 Telegraf 采集机上安装与服务器版本匹配的 Mongo Shell。例如,针对 MongoDB 4.4 服务器,在 CentOS/RHEL 上执行:
# 1. 添加 MongoDB 4.4 的软件仓库
sudo tee /etc/yum.repos.d/mongodb-org-4.4.repo <<EOF
[mongodb-org-4.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc
EOF
# 2. 安装 Mongo Shell
sudo yum install -y mongodb-org-shellb. 以管理员身份登录 MongoDB 使用
root账号或任何拥有管理员权限的账号,通过mongoshell 连接到您的目标实例。# 使用交互式提示输入密码,更加安全
mongo --host 10.10.90.115 --port 27017 -u root -p --authenticationDatabase adminc. 执行以下命令创建低权限用户 连接成功后 (
>提示符),执行以下命令。它会创建一个名为telegraf_monitor的专用监控账号。// 确保在 admin 库操作 (登录时已指定)
// 创建用户并授予最小监控权限
db.createUser({
user: "telegraf_monitor",
pwd: "Telegraf_pw_12345", // 为新用户设置一个健壮的密码
roles: [
{ role: "clusterMonitor", db: "admin" },
{ role: "read", db: "local" }
]
});原理说明:
clusterMonitor: MongoDB 内置的、专为监控工具设计的角色,提供跨集群的只读监控权限。readonlocal: 允许读取local数据库,这对于采集复制集(Replica Set)的状态和延迟信息是必需的。- 此方案严格限制了
telegraf_monitor用户的能力,使其只能读取监控和诊断相关的数据,无法访问任何业务数据库中的集合与文档。
步骤一:选择集成插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “数据库” 分类。
- 点击 “MongoDB”。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:支持采集 MongoDB 的性能、资源使用及复制集状态,保障数据库高效稳定运行。
步骤二:配置采集策略
在此步骤中,您需要配置数据库的 连接认证 和 目标地址。
- 采集配置(认证信息):
- 用户名:输入具有
clusterMonitor或相当权限的 MongoDB 账号。 - 密码:输入对应的密码。
- 间隔:默认为
10s。
- 用户名:输入具有
- 配置监控对象:
- 节点:选择一台已纳管的主机作为采集器(推荐选择 MongoDB 本机,或同网段机器)。
- 主机:输入 MongoDB 服务器的 IP 地址。
- 端口:默认为
27017。 - 实例名称:建议命名为“Mongo-业务名”。
- 点击 “确认”。
🖼️ 界面指引:
- 采集原理:采集器将模拟客户端连接到目标 MongoDB,并执行
serverStatus和dbStats命令获取数据。
步骤三:验证与分析
- 点击页面上方 “视图” 模块。
- 在左侧资源分类树中,展开 “数据库” -> “MongoDB”,进入列表并点击目标实例进行视图下钻。
- 数据验证:
- Operations:查看每秒插入 (Insert)、查询 (Query)、更新 (Update) 和删除 (Delete) 的操作数。
- Connections:查看当前活跃连接数,评估并发压力。
- Network I/O:监控网络进出流量 (Bytes In/Out)。
- Queues:查看读写队列长度,队列积压意味着性能瓶颈。
接入 MSSQL
通过 Telegraf 插件连接 Microsoft SQL Server 数据库,采集 性能计数器、IO 统计、等待时间 及 内存状态 等关键指标。
前置条件
在开始接入前,请确保您已完成以下准备工作,这是保障监控顺利进行和数据安全的基础。
-
版本支持
- SQL Server 版本:
2008及以上。 - Telegraf Agent: 已在指定采集节点上安装并运行。
- SQL Server 版本:
-
网络连通性
- 确保 Telegraf 所在的采集节点服务器可以访问到目标 SQL Server 数据库的 服务端口(默认为
1433)。 - 如有防火墙(无论是服务器防火墙还是网络防火墙),请提前为该端口配置放行策略。
- 确保 Telegraf 所在的采集节点服务器可以访问到目标 SQL Server 数据库的 服务端口(默认为
-
创建专用的监控账号 (安全最佳实践) 为了遵循最小权限原则,强烈建议避免使用
sa或其他高权限账号进行监控。请提前在您的 SQL Server 实例中创建一个专用的、低权限的监控账号。操作步骤如下:
a. 以管理员身份登录 SQL Server 使用
sa或其他拥有管理员权限的账号,通过 SQL Server Management Studio (SSMS) 或命令行工具 (sqlcmd) 连接到您的目标实例。b. 执行以下脚本创建低权限用户 执行以下 T-SQL 命令,创建一个名为
telegraf_monitor的专用监控账号,并授予其采集性能指标所必需的最小权限。-- 步骤 1: 创建一个全新的、专门用于监控的低权限登录名
CREATE LOGIN [telegraf_monitor]
WITH PASSWORD = N'您的安全密码!', -- 重要:请将此密码替换为您自己的高强度密码
DEFAULT_DATABASE = [master],
CHECK_EXPIRATION = OFF,
CHECK_POLICY = OFF;
GO
-- 步骤 2: 为这个新用户授予最小的、仅用于监控的权限
-- 允许查看服务器性能状态(核心权限)
GRANT VIEW SERVER STATE TO [telegraf_monitor];
GO
-- 允许查看对象定义(辅助权限,用于获取数据库大小等元数据)
GRANT VIEW ANY DEFINITION TO [telegraf_monitor];
GO原理说明:
VIEW SERVER STATE: 允许用户查询动态管理视图 (DMV) 以获取绝大多数性能指标,是监控 SQL Server 的核心。VIEW ANY DEFINITION: 允许用户查看数据库对象的元数据信息。- 此方案严格限制了
telegraf_monitor用户的能力,使其只能读取服务器级的状态和元数据,无法访问任何用户数据库中的业务数据,从而保障了您数据库的业务安全。
步骤一:选择集成插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “数据库” 分类。
- 点击 “MSSQL”。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:支持采集 SQL Server 的磁盘、内存、IO 及等待时间等核心性能数据。
步骤二:配置采集策略
在此步骤中,您需要配置数据库的 连接账号 和 目标地址。
- 采集配置(认证信息):
- 用户名:输入具有
VIEW SERVER STATE权限的 SQL Server 账号。 - 密码:输入对应的密码。
- 间隔:默认为
10s。
- 用户名:输入具有
- 配置监控对象:
- 节点:选择一台已纳管的主机作为采集器(推荐选择 SQL Server 本机,或同网段的 Windows/Linux 机器)。
- 主机:输入 SQL Server 的 IP 地址。
- 端口:默认为
1433。 - 实例名称:建议命名为“MSSQL-业务名”。
- 点击 “确认”。
🖼️ 界面指引:
- 采集原理:采集器将通过 TCP 连接到 SQL Server,并执行 DMV (动态管理视图) 查询以获取性能数据。
步骤三:验证与分析
- 点击页面上方 “视图” 模块。
- 在左侧资源列表中,展开 “数据库” -> “MSSQL”,点击实例名称。
- 数据验证:
- Batch Requests:查看每秒批处理请求数,反映数据库吞吐量。
- Wait Stats:监控等待时间分布(如 IO 等待、锁等待),定位性能瓶颈。
- Page Life Expectancy:查看页面生命周期,数值过低意味着内存不足。
- CPU Usage:监控 SQL Server 进程的 CPU 消耗。
中间件监控
本章节涵盖 RabbitMQ、Nginx、Kafka 等主流中间件的监控接入流程。
接入 RabbitMQ
通过 Telegraf 插件连接 RabbitMQ 管理接口,采集 队列深度、消息吞吐量、连接数 及 节点资源 等关键指标。
前置条件
在开始接入前,请确保您已完成以下准备工作,这是保障监控顺利进行和数据安全的基础。
-
版本支持与环境
- RabbitMQ 版本: 建议
3.0及以上,并确保 Management Plugin 已启用(现代版本默认启用)。 - Telegraf Agent: 已在指定采集节点上安装并运行。
- RabbitMQ 版本: 建议
-
网络连通性
- 确保 Telegraf 所在的采集节点服务器可以访问到目标 RabbitMQ 服务器的 Management API 端口(默认为
15672)。 - 如有防火墙(无论是服务器防火墙还是网络防火墙),请提前为该端口配置放行策略。
- 确保 Telegraf 所在的采集节点服务器可以访问到目标 RabbitMQ 服务器的 Management API 端口(默认为
-
创建专用的监控账号 (安全最佳实践) 为了遵循最小权限原则,强烈建议避免使用
guest或其他管理员账号进行监控。请提前在您的 RabbitMQ 实例中创建一个专用的、低权限的监控账号。操作步骤如下:
我们提供两种创建方式,您可以根据便利性任选其一。
-
方式一:通过
rabbitmqctl命令行(需登录服务器)- a. 以管理员身份登录 RabbitMQ 服务器 使用 SSH 等方式,以 root 或具有 sudo 权限的用户登录到 RabbitMQ 所在的服务器。
- b. 执行以下脚本创建低权限用户
# 步骤 1: 创建一个全新的、专门用于监控的登录用户
# 重要:请将 '您的安全密码!' 替换为一个真实的高强度密码
rabbitmqctl add_user telegraf_monitor '您的安全密码!'
# 步骤 2: 为这个新用户赋予 'monitoring' 标签,这是实现最小权限的核心
rabbitmqctl set_user_tags telegraf_monitor monitoring
# 步骤 3: 授予用户访问默认虚拟主机 ('/') 的权限
# 权限会被 'monitoring' 标签进一步限制,确保安全
rabbitmqctl set_permissions -p / telegraf_monitor ".*" ".*" ".*"
-
方式二:通过 Management HTTP API 远程创建(推荐)
- a. 在任意可访问网络的终端操作
此方法无需登录 RabbitMQ 服务器,只需在任意一台能够访问其
15672端口的机器上,使用curl等工具执行即可。需要准备一个已有的管理员账号(如guest或weops)用于操作认证。 - b. 执行以下
curl命令创建低权限用户# 步骤 1: 创建用户、设置密码并直接打上 'monitoring' 标签
# - 将 [admin_user]:[admin_pass] 替换为现有管理员账号密码,如 weops:guest
# - 将 '您的安全密码!' 替换为新用户的高强度密码
# - 将 [rabbitmq_host] 替换为 RabbitMQ 服务器的 IP 地址或域名
curl -i -u [admin_user]:[admin_pass] -X PUT -H "content-type:application/json" \
-d '{"password":"您的安全密码!", "tags":"monitoring"}' \
http://[rabbitmq_host]:15672/api/users/telegraf_monitor
# 步骤 2: 为新用户授予访问默认虚拟主机 ('/') 的权限
# 注意: URL 中的 %2F 是 / 的编码
curl -i -u [admin_user]:[admin_pass] -X PUT -H "content-type:application/json" \
-d '{"configure":".*", "write":".*", "read":".*"}' \
http://[rabbitmq_host]:15672/api/permissions/%2F/telegraf_monitor
- a. 在任意可访问网络的终端操作
此方法无需登录 RabbitMQ 服务器,只需在任意一台能够访问其
-
原理说明:
set_user_tags ... monitoring: 这是实现最小权限监控的核心。RabbitMQ 内置的monitoring标签会强制将用户的能力限制为:只能查看所有对象的元数据和性能指标,无法查看任何队列中的具体消息,也无法进行发布/订阅或修改配置等任何管理操作。set_permissions ...: 此命令用于授予用户访问指定虚拟主机(Virtual Host,此处为默认的/)的“入场券”。虽然命令中的正则表达式".*"看起来授予了所有权限,但monitoring标签的优先级更高,会覆盖这些权限,最终确保用户只能执行只读的监控操作。- 此方案严格限制了
telegraf_monitor用户的能力,使其只能读取服务器级的状态和指标,无法访问任何业务数据,从而保障了您消息队列的业务安全。
步骤一:选择集成插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “中间件” 分类。
- 点击 “RabbitMQ”。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:利用 RabbitMQ Management Plugin 提供的 API 接口进行数据采集。
步骤二:配置采集策略
在此步骤中,您需要配置 RabbitMQ 的 管理地址 和 认证信息。
- 采集配置:
- 用户名:输入具有监控权限的账号(建议拥有
monitoring标签)。 - 密码:输入对应的密码。
- 间隔:默认为
10s。
- 用户名:输入具有监控权限的账号(建议拥有
- 配置监控对象:
- 节点:选择一台已纳管的主机作为采集器(推荐 RabbitMQ 本机或同网段机器)。
- URL:输入 RabbitMQ 管理后台地址。
- 格式:
http://IP:15672(注意是管理端口 15672,不是数据端口 5672)。
- 格式:
- 实例名称:建议命名为“RabbitMQ-集群名”。
- 点击 “确认”。
🖼️ 界面指引:
- 端口提示:请务必填写 Management 插件的 HTTP 端口(默认 15672)。
步骤三:验证与分析
- 点击页面上方 “视图” 模块。
- 在左侧资源列表中,展开 “中间件” -> “RabbitMQ”,点击实例名称。
- 数据验证:
- Messages:监控消息总数(Ready + Unacked),持续堆积意味着消费能力不足。
- Message Rates:查看发布 (Publish) 和消费 (Deliver) 速率。
- Queues:查看各队列的具体积压情况。
- Nodes:监控集群节点的内存和磁盘使用率。
接入 Nginx
通过 Telegraf 插件连接 Nginx 的 stub_status 接口,采集 活跃连接数、请求处理速率 及 连接状态分布 等核心指标。
前置条件
在开始接入前,请确保 Nginx 服务端已开启 http_stub_status_module 模块并配置了状态页(Status URL),这是数据采集的基础。
-
确认模块支持
- 检查 Nginx 是否已编译
http_stub_status_module模块(大多数发行版默认包含)。 - 验证命令:
nginx -V 2>&1 | grep -o with-http_stub_status_module - 如果输出包含该模块名称,说明支持监控。
- 检查 Nginx 是否已编译
-
配置 Nginx 状态页
- 编辑 Nginx 配置文件(通常位于
/etc/nginx/nginx.conf或/etc/nginx/conf.d/default.conf)。 - 在您业务对应的
server块中(或新增一个),添加以下location配置:server {
listen 80; # 请根据实际情况调整端口,例如 30080
# --- 添加以下监控配置块 ---
location /stub_status {
stub_status; # 开启状态监控指令
access_log off; # 关闭此接口的访问日志,避免日志刷屏
# 安全控制:建议仅允许本机和 Telegraf 采集机访问
allow 127.0.0.1;
allow <Telegraf采集机IP>;
deny all;
}
} - 配置完成后,执行
nginx -t检查语法,并执行nginx -s reload重载服务。
- 编辑 Nginx 配置文件(通常位于
-
验证接口可用性
- 重要提示:Nginx 的状态页默认即为机器可读格式,无需特殊参数。
- 测试命令:
curl http://<NginxIP>:<端口>/stub_status - 成功标准:返回类似以下格式的纯文本信息:
Active connections: 2
server accepts handled requests
105 105 105
Reading: 0 Writing: 1 Waiting: 1
步骤一:选择集成插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “中间件” 分类。
- 点击 “Nginx”。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:无需安装 Agent 到 Nginx 容器内,只需提供 Status URL 即可远程采集。
步骤二:配置采集策略
在此步骤中,您需要配置 Nginx 的 状态页地址。
- 采集配置:
- 间隔:默认为
10s。
- 间隔:默认为
- 配置监控对象:
- 节点:选择一台已纳管的主机作为采集器(推荐选择 Nginx 所在的主机,或者能访问到 Nginx 的同网段机器)。
- URL:输入 Nginx 的状态页完整地址。
- 示例:
http://127.0.0.1:80/stub_status或http://192.168.1.100:8080/nginx_status。
- 示例:
- 实例名称:建议命名为“Nginx-业务名”。
- 点击 “确认”。
🖼️ 界面指引:
- 注意事项:URL 必须是 Nginx 配置中
stub_status指令对应的路径。
步骤三:验证与分析
- 点击页面上方 “视图” 模块。
- 在左侧资源列表中,展开 “中间件” -> “Nginx”,点击实例名称。
- 数据验证:
- Active Connections:当前正在处理的活跃连接数,反映实时并发压力。
- Requests/s:每秒处理请求数 (RPS/QPS)。
- Connection States:查看 Reading(读取请求头)、Writing(响应数据)和 Waiting(Keep-Alive 等待)的连接分布。
接入 Apache
通过 Telegraf 插件连接 Apache HTTP Server 的 mod_status 接口,采集 工作进程数、流量负载 及 请求计分板 等指标。
前置条件
在开始接入前,请确保 Apache 已启用 mod_status 模块并配置了状态页,这是数据采集的基础。
-
确认模块支持
- 检查 Apache 是否已加载
mod_status模块(通常默认启用)。 - 验证命令:
apachectl -M | grep status_module - 如果输出包含
status_module,说明支持监控。
- 检查 Apache 是否已加载
-
配置 Apache 状态页
- 编辑 Apache 配置文件(如
httpd.conf或/etc/apache2/mods-enabled/status.conf)。 - 开启扩展信息的配置示例:
# 开启扩展状态信息(推荐),否则无法采集流量(Total kBytes)和CPU负载信息
ExtendedStatus On
<Location "/server-status">
SetHandler server-status
# 安全控制:仅允许本机和采集机 IP 访问
Require ip 127.0.0.1
Require ip <Telegraf采集机IP>
</Location> - 配置完成后,执行
apachectl -k graceful或重启服务。
- 编辑 Apache 配置文件(如
-
验证接口可用性
- 重要提示:Telegraf 必须读取机器可读格式,因此验证时必须带上
?auto参数。 - 测试命令:
curl "http://<ApacheIP>:<端口>/server-status?auto" - 成功标准:返回类似
Total Accesses: ...和Scoreboard: ...的纯文本信息。
- 重要提示:Telegraf 必须读取机器可读格式,因此验证时必须带上
步骤一:选择集成插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “中间件” 分类。
- 点击 “Apache”。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:通过解析 Apache 提供的状态页面,实时获取 Web 服务器的健康状况。
步骤二:配置采集策略
在此步骤中,您需要配置 Apache 的 状态页地址。
- 采集配置:
- 间隔:默认为
10s。
- 间隔:默认为
- 配置监控对象:
- 节点:选择一台已纳管的主机作为采集器(推荐选择 Apache 所在的主机)。
- URL:输入 Apache 的状态页完整地址。
- 示例:
http://localhost/server-status?auto或http://192.168.1.100:80/server-status?auto。 - 注意:必须包含
?auto参数,以便插件解析机器可读格式。
- 示例:
- 实例名称:建议命名为“Apache-业务名”。
- 点击 “确认”。
🖼️ 界面指引:
- URL 提示:输入框占位符中已经提示了
?auto,这是关键参数,请勿遗漏。
步骤三:验证与分析
- 点击页面上方 “视图” 模块。
- 在左侧资源列表中,展开 “中间件” -> “Apache”,点击实例名称。
- 数据验证:
- Workers:查看 Busy(正在处理请求)和 Idle(空闲)的工作进程数。
- Total Accesses:查看累计访问总数。
- Scoreboard:查看连接状态分布(如 Open, Waiting, Sending, KeepAlive)。
接入 Consul
通过 Telegraf 插件连接 Consul HTTP API,采集 服务健康状态、检查点结果 及 集群成员状态 等关键指标。
前置条件
在开始接入前,请确保 Consul Agent 的 API 接口可访问,若集群开启了 ACL 鉴权,还需准备相应的 Token。
-
确认网络连通性
- Telegraf 需要访问 Consul Agent 的 HTTP 端口(默认为
8500)。 - 验证命令(在采集机执行):
# 检查是否能连接到目标 Consul IP
curl -I http://<ConsulIP>:8500/v1/status/leader - 成功标准:返回
HTTP/1.1 200 OK。
- Telegraf 需要访问 Consul Agent 的 HTTP 端口(默认为
-
配置访问权限 (仅 ACL 开启时需要)
- 如果您的 Consul 集群未开启 ACL(默认情况),可跳过此步。
- 如果已开启 ACL,请创建一个具有只读权限的 Token 供监控使用。
- 最小权限 Policy 示例:
# 允许读取节点状态、服务信息和 Agent 自身信息
node_prefix "" { policy = "read" }
service_prefix "" { policy = "read" }
agent_prefix "" { policy = "read" } - 注意:获取到的 Token 需填写在 Telegraf 配置文件的
token字段或作为 Bearer Token 使用。
-
验证接口数据
- 建议手动请求一次 API 以确保数据返回正常。
- 测试命令:
# 无 ACL 模式
curl http://<ConsulIP>:8500/v1/agent/self
# 有 ACL 模式 (把 xxxxx 换成您的 Token)
curl -H "X-Consul-Token: xxxxx" http://<ConsulIP>:8500/v1/agent/self - 成功标准:返回包含
Member和Config信息的 JSON 数据。
步骤一:选择集成插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “中间件” 分类。
- 点击 “Consul”。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:通过 Consul 的 HTTP API 远程获取集群健康数据,无需在 Consul Server 上安装 Agent。
步骤二:配置采集策略
在此步骤中,您需要配置 Consul Agent 的 API 地址。
- 采集配置:
- 间隔:默认为
10s,表示数据采集的频率。
- 间隔:默认为
- 配置监控对象:
- 节点:选择一台已纳管的主机作为采集器(推荐选择能访问到 Consul Agent 的同网段机器)。
- URL:输入 Consul Agent 的 HTTP API 地址。
- 格式:
http://IP:8500(8500 是 Consul 的默认 HTTP 端口)。
- 格式:
- 实例名称:建议命名为“Consul-集群名”。
- 点击 “确认”。
🖼️ 界面指引:
- 采集目标:此 URL 应指向任何一个 Consul Agent(Client 或 Server 模式均可),插件将通过此 Agent 获取整个集群的信息。
步骤三:验证与分析
- 点击页面上方 “视图” 模块。
- 在左侧资源列表中,展开 “中间件” -> “Consul”,点击实例名称。
- 数据验证:
- Health Checks:监控
passing(正常)、warning(警告) 和critical(严重) 状态的健康检查数量,快速评估整体服务的可用性。 - Serf LAN Members:查看 LAN Gossip 池中的成员数量,如果数量减少,可能意味着有 Agent 节点下线。
- Catalog Services:监控在目录中注册的服务总数。
- Raft Peers:对于 Server 节点,监控 Raft 集群的伙伴数量,确保 Leader 选举机制正常工作。
- Health Checks:监控
接入 Tomcat
通过 Telegraf 插件连接 Tomcat Manager 应用,采集 线程池状态、请求处理、会话管理 及 JVM 内存 等关键指标。
前置条件
在开始接入前,请确保 Tomcat 已启用 manager 应用,并拥有可用的管理账号。
-
确认 Manager 应用存在
- 检查 Tomcat 是否已部署 Manager 应用(通常默认包含在发行版中)。
-
准备监控账号
- 方案 A(推荐):使用现有管理账号
- 如果您已有具备
manager-gui或manager-script权限的账号(如weops),可直接使用,无需新建。
- 如果您已有具备
- 方案 B(可选):新建最小权限账号
- 注意:此操作需登录 Tomcat 服务器内部修改配置文件,不支持远程操作。
- 编辑
conf/tomcat-users.xml,添加仅具备manager-script角色的用户,以实现最小权限控制。
- 方案 A(推荐):使用现有管理账号
-
验证接口可用性
- 重要提示:Tomcat 默认返回 HTML 页面,Telegraf 必须读取 XML 格式,因此验证时必须带上
?XML=true参数。 - 测试命令(在采集机上执行):
# 请替换为您实际的账号密码
curl -u weops:Weops@123 "http://10.10.90.115:30880/manager/status?XML=true" - 成功标准:返回以
<?xml ... ?><status>...开头的数据。
- 重要提示:Tomcat 默认返回 HTML 页面,Telegraf 必须读取 XML 格式,因此验证时必须带上
步骤一:选择集成插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “中间件” 分类。
- 点击 “Tomcat”。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:利用 Tomcat 自带的 Manager 应用提供的状态接口进行数据采集,需要预先部署
managerwebapp。
步骤二:配置采集策略
在此步骤中,您需要配置 Tomcat Manager 的 访问凭证 和 状态页地址。
- 采集配置(认证信息):
- 用户名:输入在
tomcat-users.xml中配置的,拥有manager-status或manager-jmx角色的用户名。 - 密码:输入对应的密码。
- 间隔:默认为
10s。
- 用户名:输入在
- 配置监控对象:
- 节点:选择一台已纳管的主机作为采集器(推荐能访问到 Tomcat 端口的同网段机器)。
- URL:输入 Tomcat Manager 的状态页完整地址。
- 格式:
http://IP:PORT/manager/status/all?XML=true - 注意:路径必须是
/manager/status/all并且携带?XML=true参数。
- 格式:
- 实例名称:建议命名为“Tomcat-业务名”。
- 点击 “确认”。
🖼️ 界面指引:
- 前置条件:请确保已为 Tomcat 部署
manager应用,并正确配置了用户角色,否则采集器将无法认证。
步骤三:验证与分析
- 点击页面上方 “视图” 模块。
- 在左侧资源列表中,展开 “中间件” -> “Tomcat”,点击实例名称。
- 数据验证:
- Threads Busy:监控当前繁忙线程数,反映 Tomcat 的实时处理压力。数值过高可能意味着处理能力达到瓶颈。
- Request Count / Processing Time:查看请求总数和平均处理时间,评估应用性能。
- Active Sessions:监控当前活跃的会话数量,可用于评估用户在线情况。
- JVM Memory:查看堆内存(Heap)和非堆内存(Non-Heap)的使用情况,是排查内存泄漏和进行容量规划的关键依据。
接入 Zookeeper
通过 Telegraf 采集器连接 Zookeeper 服务,采集 平均延迟、堆积请求数、节点状态 及 Znode 数量 等核心指标。
前置条件
在开始接入前,请务必确认 Zookeeper 的服务端口及命令权限。
-
确认服务端口
- Zookeeper 的默认客户端端口为
2181。 - ⚠️ 注意:如果您的环境使用了 Docker 映射 或 自定义配置(如
zoo.cfg中修改了clientPort),端口可能为32181、12181等。 - 查询方法:可在 Zookeeper 服务器上执行
netstat -nutlp | grep java查看实际监听端口。
- Zookeeper 的默认客户端端口为
-
验证接口可用性
- 为了确保采集通畅,请在采集机上使用实际端口进行测试。
- 测试命令:
# 请将 <端口> 替换为您实际的端口号 (例如 2181 或 32181)
echo mntr | nc <ZookeeperIP> <端口> - 成功标准:返回
zk_version、zk_avg_latency等多行文本数据。
-
确认命令支持
- 如果测试命令返回
is not executed...错误,说明您的 Zookeeper 版本(通常是 3.5+)默认禁用了监控命令。需在zoo.cfg中添加4lw.commands.whitelist=mntr并重启服务。
- 如果测试命令返回
步骤一:选择集成插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “中间件” 分类。
- 点击 “Zookeeper”。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:通过 Zookeeper 的 “四字命令” (Four Letter Words) 获取服务状态,无需在 Zookeeper 服务器上安装任何 Agent。
步骤二:配置采集策略
在此步骤中,您需要配置 Zookeeper 集群的 服务器地址。
- 采集配置:
- 超时时间:默认为
10s,表示单次采集请求的超时限制。 - 间隔:默认为
10s,表示数据采集的频率。
- 超时时间:默认为
- 配置监控对象:
- 节点:选择一台已纳管的主机作为采集器(需要确保这台机器可以访问 Zookeeper 的客户端端口)。
- 服务器地址:输入 Zookeeper 节点的 IP 和客户端端口。
- 格式:
IP:PORT,默认端口为2181。 - 集群监控:点击 “添加”,可以输入多个 Zookeeper 节点地址。
- 格式:
- 实例名称:建议命名为“Zookeeper-集群名”。
- 点击 “确认”。
🖼️ 界面指引:
- 采集原理:采集器通过 TCP 连接到 Zookeeper 的客户端端口(默认 2181),并发送
mntr等管理命令来获取详细的性能指标。
步骤三:验证与分析
- 点击页面上方 “视图” 模块。
- 在左侧资源列表中,展开 “中间件” -> “Zookeeper”,点击实例名称。
- 数据验证:
- zk_avg_latency:监控请求的平均延迟(ms)。该指标是衡量 Zookeeper 性能的核心,数值过高意味着服务响应缓慢。
- zk_outstanding_requests:监控队列中等待处理的请求数。如果该值持续较高,表明 Zookeeper 处理能力已达瓶颈。
- zk_server_state:查看节点角色(如
leader,follower)。对于集群,必须确保有且只有一个leader。 - zk_num_alive_connections:监控当前活跃的客户端连接数。
- zk_znode_count:查看 Znode 总数,可用于评估数据规模和容量。
接入 ActiveMQ
通过 Telegraf 插件连接 ActiveMQ 的 Web Console 接口,采集 队列深度、消费者数量、消息吞吐 及 JVM 状态 等核心指标。
前置条件
在接入前,请确保 ActiveMQ 已启用 Web Console,并确认 Jolokia 接口可用。
-
确认 Jolokia 接口支持
- ActiveMQ 5.8 及以上版本默认集成了 Jolokia。
- 验证方法:在浏览器访问
http://IP:8161/api/jolokia/version。若需登录且返回 JSON 格式版本信息,说明接口可用。
-
准备监控账号
- 方案 A(快速接入):使用现有管理员账号
- 直接使用 ActiveMQ 的
admin账号。此方案无需登录服务器配置,但在安全性上非最优(Telegraf 仅执行读取操作,风险可控)。
- 直接使用 ActiveMQ 的
- 方式 B:创建专用监控账号(推荐生产环境)
- 为了安全起见,建议创建一个独立的账号用于监控。
- 配置步骤(需登录 ActiveMQ 服务器):
- 编辑 ActiveMQ 安装目录下的
conf/jetty-realm.properties文件。 - 在文件末尾添加一行新用户配置:
# 格式:用户名: 密码, 角色
# 创建一个名为 monitor 的用户,赋予 admin 角色以允许读取 JMX 指标
monitor: Monitor@2025, admin - 保存文件(通常无需重启 ActiveMQ 即可生效,如不生效请重启)。
- 编辑 ActiveMQ 安装目录下的
- 方案 A(快速接入):使用现有管理员账号
-
验证接口可用性 (务必执行)
- 使用
curl模拟 Telegraf 请求,确保账号密码及 URL 正确。 - 测试命令:
# 请替换 IP、端口及账号密码
# 注意 URL 必须以 /api/jolokia/version 结尾
curl -u admin:admin "http://10.10.90.115:8161/api/jolokia/version" - 成功标准:返回包含
"status":200和"agent":...的 JSON 数据。
- 使用
步骤一:选择集成插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “中间件” 分类。
- 点击 “ActiveMQ”。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:利用 ActiveMQ 内置的 Jolokia JMX-HTTP 桥接器,实现对 Broker 内部指标的远程采集。
步骤二:配置采集策略
在此步骤中,您需要配置 ActiveMQ Web Console 的 访问凭证 和 API 地址。
- 采集配置(认证信息):
- 用户名:输入用于访问 Web Console 的管理员用户名(例如
admin)。 - 密码:输入对应的密码。
- 间隔:默认为
10s。
- 用户名:输入用于访问 Web Console 的管理员用户名(例如
- 配置监控对象:
- 节点:选择一台已纳管的主机作为采集器(需要确保这台机器可以访问 ActiveMQ 的 Web Console 端口)。
- URL:输入 ActiveMQ 的 Jolokia API 完整地址。
- 格式:
http://IP:PORT/api/jolokia - 注意:默认 Web 端口为
8161,且路径必须指向/api/jolokia。
- 格式:
- 实例名称:建议命名为“ActiveMQ-业务名”。
- 点击 “确认”。
🖼️ 界面指引:
- 前置条件:请确保 ActiveMQ 的 Web Console (包含 Jolokia) 已启用。URL 占位符
http://example.com:8161仅为示例,请务必修改为您的实际地址并加上/api/jolokia路径。
步骤三:验证与分析
- 点击页面上方 “视图” 模块。
- 在左侧资源列表中,展开 “中间件” -> “ActiveMQ”,点击实例名称。
- 数据验证:
- Queue Size:监控队列中的消息数量(积压量)。持续增长表示消费能力不足或消费者离线。
- Enqueue/Dequeue Count:查看入队和出队的消息总数,可计算出消息处理速率 (TPS)。
- Consumer Count:监控队列或主题的消费者数量。如果数量为 0,则消息会持续积压。
- Memory Percent Usage:监控 Broker 的内存使用率,防止因内存耗尽导致服务不可用。
- Connections:查看当前建立的客户端连接总数。
接入 Kafka
由于 Kafka 监控依赖专用的 Exporter 组件,接入前需要在目标节点上手动安装 Kafka-Exporter。
前置条件
在接入前,请确保 Kafka 集群的网络连通性,并准备好 SASL 认证账号。
-
确认 Zookeeper 连接 (授权必需)
- Kafka 的权限管理(ACLs)依赖 Zookeeper。
- ZK 地址确认:请确认您的 Zookeeper 集群地址(例如
IP:2181或IP:32181)。
-
准备监控账号(二选一)
注意:Kafka (0.11及早期版本) 的 SASL/PLAIN 账号存储在服务端的配置文件中,无法远程创建,且新增账号必须重启 Broker。
-
方案 A:使用现有管理员账号(推荐 - 快速接入)
- 如果您无法重启生产环境 Kafka,请直接使用当前已有的具备访问权限的账号(例如您日常运维使用的
admin或其他管理员账号)。 - 优势:无需修改配置文件,无需重启服务,对业务无影响。
- 如果您无法重启生产环境 Kafka,请直接使用当前已有的具备访问权限的账号(例如您日常运维使用的
-
方案 B:创建最小权限账号(仅限有服务器权限时)
-
步骤 1:添加认证用户 (需登录服务器)
- 找到 Kafka 的 JAAS 配置文件(通常在启动脚本中指定,如
kafka_server_jaas.conf)。 - 在
PlainLoginModule部分添加一行新用户:// 语法格式:user_<您的用户名>="<您的密码>";
// 示例:创建一个名为 monitor 的用户,密码为 Monitor@2025
user_monitor="Monitor@2025"; - 重启 Kafka Broker 使账号生效。
- 找到 Kafka 的 JAAS 配置文件(通常在启动脚本中指定,如
-
步骤 2:配置 ACL 权限 (授予只读)
- 登录服务器,使用
kafka-acls.sh工具授予该用户对集群的描述权限和读取权限。 - 执行命令(示例):
# 授予全局只读权限
bin/kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 \
--add --allow-principal User:monitor \
--operation Read --operation Describe \
--topic '*' --group '*'
- 登录服务器,使用
-
-
前置步骤:安装采集组件
在配置监控之前,请先前往 “节点管理 (Node)” 模块下发 Kafka 采集器。
- 从首页进入 “Node (节点管理)” 模块。
- 选择对应的 “云区域”(例如
default)。 - 选择目标节点:
- 在节点列表中,勾选您计划用来运行监控任务的服务器(该服务器需要能访问到 Kafka 集群)。
- 点击列表上方的 “托管组件” 按钮。
- 在下拉菜单中点击 “安装组件”。
- 安装 Kafka-Exporter:
- 类型:选择
监控。 - 组件:在下拉框中选择
Kafka-Exporter。 - 版本号:选择最新版本。
- 类型:选择
- 点击 “确认”,等待任务执行成功,组件状态变为“安装成功”。
🖼️ 界面指引:
![]()
![]()
![]()
- 操作逻辑:这一步是在指定的采集机上部署一个专门用于连接 Kafka 并暴露指标的服务 (Exporter)。
步骤一:选择集成插件
组件安装完成后,返回监控模块进行数据源的接入配置。
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 在左侧菜单展开 “中间件”,点击 “Kafka”。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:通过 Kafka Exporter 采集 Broker 指标、Topic 吞吐量及 Consumer Group 的消费延迟 (Lag) 等核心数据。
步骤二:配置采集策略
在此步骤中,您需要配置 Kafka 集群的连接信息。
- 采集配置:
- 版本:指定 Kafka 集群的版本,例如
2.0.0。 - 用户名/密码:如果您的 Kafka 开启了 SASL 认证,请填写。否则留空。
- 运行机制:用于 SASL 认证,普通集群保持默认
plain即可。 - 间隔:默认为
10s。
- 版本:指定 Kafka 集群的版本,例如
- 配置监控对象:
- 节点:必须选择刚才安装了 Kafka-Exporter 组件的那个节点。
- Kafka Server:输入 Kafka Broker 的连接地址。
- 示例:
192.168.1.10:9092。如果是集群,填写多个 Broker 地址并用逗号隔开。
- 示例:
- 实例名称:建议命名为“Kafka-集群名”。
- 点击 “确认”。
🖼️ 界面指引:
- 关键配置:在“节点”下拉框中,只能选择已成功安装 Kafka-Exporter 的机器,否则采集任务会失败。
步骤三:验证与分析
- 点击页面上方 “视图” 模块。
- 在左侧资源列表中,展开 “中间件” -> “Kafka”,点击实例名称。
- 数据验证:
- Consumer Group Lag:监控消费组的延迟(积压量),这是评估消费能力是否匹配生产能力的最核心指标。
- Messages In Rate:查看 Topic 每秒写入的消息数,反映生产者吞吐量。
- Bytes In/Out Rate:监控 Broker 的流入/流出流量大小。
- Under Replicated Partitions:查看未充分复制的分区数,该值大于 0 意味着集群存在数据丢失风险。
接入 MinIO
通过 Telegraf 采集器连接 MinIO 的 Prometheus 指标接口,收集对象存储系统的 运行状态、存储容量、网络流量 及 S3 请求 等关键指标。
前置条件
在接入前,请确保网络连通性,并满足版本限制要求:仅支持 MinIO 服务端 RELEASE.2024-07-15T19-02-30Z 及之前版本、MinIO 客户端(mc)RELEASE.2024-07-11T18-01-28Z 及之前版本。
-
确认服务端口
- MinIO 通常运行在
9000端口。 - 验证命令:需检查以下 4 个接口的连通性
# 1. 检查集群指标接口
curl -I http://<MinIO_IP>:9000/minio/v2/metrics/cluster
# 2. 检查存储桶指标接口
curl -I http://<MinIO_IP>:9000/minio/v2/metrics/bucket
# 3. 检查资源指标接口
curl -I http://<MinIO_IP>:9000/minio/v2/metrics/resource - 成功标准:返回
200 OK,说明服务及指标接口均在线。
- MinIO 通常运行在
-
准备免密监控账号
MinIO 的指标接口默认需要鉴权。本次配置免密访问,无需设置 Secret Key。
- 前置要求:需在运维机上安装对应版本的 MinIO 客户端工具
mc并已配置好连接别名(示例别名为myminio)。 - 步骤 1:定义只读策略
创建一个名为
prometheus.json的文件,内容如下:{
"Version": "2012-10-17",
"Statement": [
{
"Action": ["admin:Prometheus"],
"Effect": "Allow",
"Resource": ["arn:minio:admin:::*"]
}
]
} - 步骤 2:应用策略并创建免密用户
执行以下 mc 命令创建免密用户并绑定策略:
# 1. 添加策略到 MinIO
mc admin policy add myminio monitor_policy prometheus.json
# 2. 创建免密监控用户 (AccessKey: monitor,无SecretKey)
mc admin user add myminio monitor ""
# 3. 将只读策略绑定给该免密用户
mc admin policy set myminio monitor_policy user=monitor
- 前置要求:需在运维机上安装对应版本的 MinIO 客户端工具
步骤一:选择集成插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “中间件” 分类。
- 点击 “MinIO”。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:通过访问 MinIO 自带的 Prometheus 指标端点进行数据采集,无需在 MinIO 节点上安装 Agent。
步骤二:配置采集策略
在此步骤中,您需要配置 MinIO 服务的 连接地址。
- 采集配置:
- 间隔:默认为
10s,表示数据采集的频率。
- 间隔:默认为
- 配置监控对象:
- 节点:选择一台已纳管的主机作为采集器(需要确保该机器能访问到 MinIO 的 API 端口)。
- 主机:输入 MinIO 服务器的 IP 地址。
- 端口:输入 MinIO 的 API 端口(默认为
9000)。 - 实例名称:建议命名为“MinIO-集群名”。
- 点击 “确认”。
🖼️ 界面指引:
- 前置条件:请确保您的 MinIO 服务已启用 Prometheus 指标。采集器将访问
http://<主机>:<端口>/minio/prometheus/metrics端点来获取数据。
步骤三:验证与分析
- 点击页面上方 “视图” 模块。
- 在左侧资源列表中,展开 “中间件” -> “MinIO”,点击实例名称。
- 数据验证:
- Total/Free Space:监控集群的总容量和可用容量,用于容量规划和预警。
- Nodes Offline:监控离线节点数。对于分布式部署,该值必须为 0,否则集群处于降级状态。
- HTTP Requests Duration:查看 S3 操作(如 GET, PUT, DELETE)的请求延迟,分析存储性能瓶颈。
- Network Received/Sent:监控 MinIO 的上行和下行网络流量。
- Total Buckets/Objects:查看存储桶和对象的总数。
网络设备监控
本章节涵盖 交换机、路由器、防火墙 及 负载均衡 等标准网络设备的通用监控接入流程。由于这些设备都广泛支持 SNMP (简单网络管理协议),因此它们的接入方式和配置参数基本一致。
本指南将以 交换机 为例进行截图展示,但其操作步骤 完全适用于 路由器、防火墙和负载均衡。
接入网络设备(交换机、路由器、防火墙、负载均衡)
通过 Telegraf 采集器利用 SNMP 协议,定期收集网络设备的通用接口指标(如 流量、丢包、错误包)以及设备专属指标(如 CPU/内存、会话数 等)。
步骤一:选择集成插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “网络设备” 分类。
- 点击您需要接入的具体设备类型(例如 “交换机”)。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:这是一个通用的 SNMP 采集插件,适用于所有支持标准 MIB 库的网络设备。
步骤二:配置采集策略
在此步骤中,您需要根据设备上配置的 SNMP 版本(v2c 或 v3)来填写对应的认证信息和设备 IP。
- 采集配置 (SNMP 参数):
- 端口:输入设备上配置的 SNMP Agent 端口,默认为
161。 - 版本:选择您在设备上配置的 SNMP 版本。
- 选择
v2c后,需填写下方的 “团体名”。 - 选择
v3后,需填写对应的安全名称、级别、认证及加密协议/密码等信息。
- 选择
- 团体名:(仅 v2c) 输入用于认证的 Community String,默认为
public。 - 超时时间:默认为
10s。 - 间隔:默认为
10s。
- 端口:输入设备上配置的 SNMP Agent 端口,默认为
- 配置监控对象:
- 节点:选择一台已纳管的主机作为采集器(需确保该机器与目标设备的 SNMP 端口网络可达)。
- IP:输入设备的管理 IP 地址。
- 实例名称:建议根据设备类型和用途命名,例如:
Switch-Core-H3CRouter-IDC-Exit-CiscoFirewall-DMZ-PaloAltoLB-WebApp-F5
- 点击 “确认”。
🖼️ 界面指引 (以 v2c 为例):
- 前置条件:请务必先在您的目标设备上启用 SNMP 服务,并根据所选版本配置好对应的认证方式(团体名或 v3 用户),同时确保采集器 IP 在设备的访问控制列表 (ACL) 中。
步骤三:验证与分析
- 点击页面上方 “视图” 模块。
- 在左侧资源列表中,展开 “网络设备” -> 点击对应的设备类型(如 “交换机”),再点击实例名称。
- 数据验证:
- 通用接口指标 (IF-MIB):
- Interface Traffic:监控各端口的流入/流出流量,判断网络负载。
- Interface Discards/Errors:监控端口的丢包和错误包,排查拥塞或物理链路问题。
- Interface Status:监控端口的在线状态 (
up/down)。
- 设备专属指标 (厂商私有 MIB):
- 路由器/交换机: 通常包含 CPU 和内存利用率。
- 防火墙: 监控并发连接数、NAT 会话数。
- 负载均衡: 监控虚拟服务器 (VS) 的连接数、后端池 (Pool) 成员的状态和健康检查情况。
- 通用接口指标 (IF-MIB):
硬件设备监控
本章节涵盖 存储设备 及 硬件服务器 的监控接入流程。监控硬件设备通常有两种协议:
- IPMI (智能平台管理接口):通过设备的独立管理端口(带外),监控最底层的物理状态,如温度、风扇、电源等。这是监控硬件健康的核心,存储设备和硬件服务器均支持此方式。
- SNMP (简单网络管理协议):通过设备操作系统(带内),主要监控网络接口的流量状态。此方式通常用于硬件服务器。
通用 IPMI 接入 (存储设备与硬件服务器)
此方法通过 IPMI 协议直接与硬件的管理芯片 (如 Dell iDRAC, HP iLO) 通信,实现与操作系统无关的底层硬件监控。
本指南以 存储设备 为例进行截图展示,但其操作步骤 完全适用于硬件服务器 的 IPMI 接入。
步骤一:选择 IPMI 插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “硬件设备” 分类。
- 点击 “存储设备” 或 “硬件服务器”。
- 选择名称中带有 “IPMI通用” 的插件,点击 “+ 接入”。
🖼️ 界面指引:
- 插件说明:IPMI 是保障服务器、存储等硬件物理安全的核心监控手段。
步骤二:配置 IPMI 策略
在此步骤中,您需要配置设备的 IPMI 管理口地址 和 认证凭据。
- 采集配置 (IPMI 参数):
- 用户名:输入 IPMI 管理口的登录用户名 (例如
admin,root)。 - 密码:输入对应的密码。
- 超时时间:默认为
20s(IPMI 响应可能较慢,建议设置长一些)。 - 间隔:默认为
60s(硬件状态变化不频繁,无需过高频率)。
- 用户名:输入 IPMI 管理口的登录用户名 (例如
- 配置监控对象:
- 节点:选择一台已纳管的主机作为采集器(需确保该机器与目标设备的 IPMI 管理端口网络可达)。
- IP:输入设备的 IPMI 管理口 IP 地址。
- 实例名称:建议根据设备用途命名,例如
Storage-Ceph-Node01或Server-ESXi-Host05。
- 点击 “确认”。
🖼️ 界面指引:
- 请确保已在设备的带外管理平面(如 iDRAC, iLO)中启用 IPMI over LAN 功能。
- 执行采集任务需要依赖
ipmitool工具,请确保采集器节点已安装此工具。
硬件服务器的 SNMP 接入
此方法主要用于补充监控服务器操作系统的网卡流量等信息,其配置方式与监控网络设备完全相同。
步骤一:选择 SNMP 插件
- 进入 “集成” -> “硬件设备” -> “硬件服务器”。
- 选择 “硬件服务器SNMP通用” 插件,点击 “+ 接入”。
🖼️ 界面指引:
步骤二:配置 SNMP 策略
- 采集配置:完全参考 “网络设备监控 (通用 SNMP 接入)” 章节中的步骤二进行配置,填入服务器的 业务 IP 及 SNMP 参数。
- 实例名称:建议命名为
Server-IDC1-Host05-SNMP以作区分。 - 点击 “确认”。
🖼️ 界面指引:
- 需要在服务器的操作系统中(Windows 或 Linux)安装并启用 SNMP 服务。
步骤三:统一验证与分析
- 点击页面上方 “视图” 模块。
- 在左侧资源列表中,展开 “硬件设备” -> 点击对应的设备类型,再点击实例名称。
- 数据验证:
- 对于 IPMI 实例:重点关注 Temperature (温度)、Fan Speed (风扇转速) 和 Power Supply (电源) 相关的传感器读数,确保硬件运行在安全范围内。
- 对于 SNMP 实例 (仅硬件服务器):查看服务器各网络接口 (如
eth0,bond0) 的流入/流出流量、丢包和错包数据。
容器管理
本章节涵盖 Docker 及 Kubernetes 等主流容器平台的监控接入流程。
接入 Docker
通过 Telegraf 采集器连接 Docker Engine 的 API 端点,收集每个容器的 CPU、内存、网络 IO 和 磁盘 IO 等核心性能指标。
步骤一:选择集成插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “容器管理” 分类。
- 点击 “Docker”。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:通过 Docker Daemon 提供的标准接口进行数据采集,无需在每个容器内部署 Agent。
步骤二:配置采集策略
在此步骤中,您需要指定 Docker Daemon 的 API 端点地址。
- 采集配置:
- 间隔:默认为
10s,表示数据采集的频率。
- 间隔:默认为
- 配置监控对象:
- 节点:选择一台已纳管的主机作为采集器(通常必须是 Docker 所在的主机)。
- 端点:输入 Docker Daemon 的 API 地址。
- 默认值:
unix:///var/run/docker.sock - 这是通过本地 socket 文件进行通信,也是最安全、最高效的方式。
- 默认值:
- 实例名称:建议命名为“Docker-HostIP”。
- 点击 “确认”。
🖼️ 界面指引:
- 关键配置:请确保 Telegraf 进程(通常是
telegraf用户)有权限读写/var/run/docker.sock文件。通常需要将telegraf用户加入docker用户组 (sudo usmod -aG docker telegraf) 并重启 Telegraf 服务。
步骤三:验证与分析
- 点击页面上方 “视图” 模块。
- 在左侧资源列表中,展开 “容器管理” -> “Docker”,点击实例名称。
- 数据验证:
- Total Containers:监控运行中、已停止、暂停的容器总数。
- CPU Usage:查看每个容器的 CPU 使用率,快速定位消耗大量 CPU 资源的容器。
- Memory Usage:监控容器的内存使用量、RSS 等,是排查内存泄漏的关键。
- Network IO:查看容器的网络接收/发送流量,分析容器的网络活动。
- Block IO:监控容器的磁盘读写情况,定位 IO 密集型应用。
Kubernetes (K8s) 监控
本章节涵盖 Kubernetes (K8s) 集群 的监控接入流程。通过在集群内通过 kubectl 部署轻量级采集器,实现对集群节点、容器和 Pod 的性能指标、状态及健康状况的自动化收集。
接入 K8s 集群
K8s 监控利用集群主动上报能力,能够实时同步整个集群的拓扑结构与运行数据。
步骤一:选择集成插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “容器管理” 分类。
- 点击 “K8s”。
- 点击列表中的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:支持主动收集 Kubernetes 集群的状态和健康,涵盖节点 (Node)、容器 (Container) 和 Pod 的核心性能指标。
步骤二:接入配置与前置要求
在开始配置前,请确保您的环境满足以下前置要求:
- Kubernetes 版本:≥ 1.16。
- 资源预留:建议每个节点预留 1 Core CPU 和 2GB 内存用于采集器运行。
- 权限要求:具备集群管理员权限 (
kubectl使用权限)。
配置参数说明:
- 接入资产:
- 新建资产:如果您是首次接入该集群,请选择此项以创建新的 K8s 集群资源。
- 选择已有资产:基于现有的资产信息提供接入指引。
- 集群名称:为该集群定义一个易于识别的名称(如
Production-K8s-Aliyun)。 - 所属组织/云区域:选择该集群归属的业务组织和所在的网络区域。
- 上报间隔:默认为
60s。间隔越短数据实时性越高,但会相应增加网络与系统负载。
🖼️ 界面指引:
![]()
步骤三:安装采集器
配置完成后,系统会根据您的设置生成一条 一键安装命令。
- 执行安装:在已配置好
kubectl的 K8s 管理节点上,复制并运行页面中提供的curl命令。- 该命令将自动下载配置模板、渲染 Token 并通过
kubectl apply -f -部署监控组件。
- 该命令将自动下载配置模板、渲染 Token 并通过
- 验证状态:命令执行成功后,点击 “验证” 按钮。
- 由于 Pod 启动及数据初始化需要时间,请在执行命令后等待至少一个上报周期(默认 60 秒)再进行验证。
🖼️ 界面指引:
常见问题排查 (Troubleshooting)
如果在验证阶段发现数据未正常上报,请参考以下常见问题:
- Pod 一直处于 Pending 状态:
- 原因:集群资源不足,无法调度采集器 Pod。
- 方案:检查节点资源使用情况 (
kubectl top nodes),调整资源请求或增加集群节点。
- Pod 无法连接 NATS 服务:
- 原因:网络不通或认证证书错误。
- 方案:检查采集器 Pod 到云区域 NATS 服务的网络连通性,查看 Pod 日志获取详细错误。
VMware 监控
本章节介绍如何通过连接 vCenter Server 来实现对整个 VMware vSphere 环境的监控。
接入 vCenter
通过 Telegraf 采集器连接 vCenter Server 的 API 接口,全面采集数据中心 (Datacenter)、集群 (Cluster)、ESXi 主机、虚拟机 (VM) 及数据存储 (Datastore) 的性能指标。
步骤一:选择集成插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “VMware” 分类。
- 点击 “vCenter”。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:此插件通过一个 vCenter 数据源,即可自动发现并监控其管理的所有 ESXi 主机、虚拟机和数据存储,无需对每个对象单独配置。
步骤二:配置采集策略
在此步骤中,您需要配置 vCenter Server 的 访问凭据 和 连接地址。
- 采集配置 (认证信息):
- 用户名:输入一个拥有 vCenter 访问权限的用户名 (例如
administrator@vsphere.local或只读角色的用户)。 - 密码:输入对应的密码。
- 间隔:默认为
10s。
- 用户名:输入一个拥有 vCenter 访问权限的用户名 (例如
- 配置监控对象:
- 节点:选择一台已纳管的主机作为采集器(需确保该机器与 vCenter Server 的网络可达,通常是 HTTPS 443 端口)。
- 主机:输入 vCenter Server 的 IP 地址或 FQDN (域名)。
- 实例名称:建议命名为“vCenter-数据中心名”。
- 点击 “确认”。
🖼️ 界面指引:
- 权限提示:请使用具有 全局只读 (Read-only) 权限的 vCenter 用户,以确保采集器能遍历所有层级的对象。出于安全考虑,建议创建专用的只读监控账号。
步骤三:验证与分析
- 点击页面上方 “视图” 模块。
- 在左侧资源列表中,展开 “VMware” -> “vCenter”,点击实例名称。
- 数据验证:
- ESXi Host - CPU/Memory Usage:监控物理主机的 CPU 和内存资源使用率,用于容量规划和负载均衡判断。
- Virtual Machine - CPU Ready (%rdy):监控虚拟机的 CPU 就绪时间。此值为性能分析的关键,持续过高意味着主机 CPU 资源严重争用。
- Virtual Machine - Memory Balloon/Swap:监控内存交换和气球活动。出现这些指标意味着 ESXi 主机内存不足,已开始影响 VM 性能。
- Datastore - Usage & Latency:监控数据存储的可用空间和读写延迟,预警存储容量风险和性能瓶颈。
其他数据源
本章节涵盖对特定应用或运行时环境的监控,例如 Java 虚拟机 (JVM)。
接入 JVM (JMX)
通过 JMX (Java Management Extensions) 采集器连接到目标 Java 应用,收集其 堆内存 (Heap)、垃圾回收 (GC)、线程池 及 类加载 等核心运行时指标。
步骤一:选择集成插件
- 进入 Monitor 后,点击顶部导航栏的 “集成”。
- 选择资源类型:
- 在左侧菜单展开 “其他数据源” 分类。
- 点击 “JVM”。
- 点击列表右上方的 “+ 接入”。
🖼️ 界面指引:
- 插件说明:此插件通过 Jolokia (一个 JMX-HTTP 桥接器) 远程访问 JMX MBeans,避免了 JMX RMI 协议带来的复杂性和防火墙问题。
步骤二:配置采集策略
在此步骤中,您需要配置 Java 应用的 Jolokia 访问地址 和 认证信息。
- 采集配置 (认证信息):
- 用户名/密码:如果您的 Jolokia 端点配置了 HTTP Basic 认证,请填写凭据。否则留空。
- 间隔:默认为
10s。
- 配置监控对象:
- 节点:选择一台已纳管的主机作为采集器(需确保该机器与目标 Java 应用的网络可达)。
- URL:输入 Jolokia Agent 的完整 URL。
- 格式:
http://<应用IP>:<端口>/jolokia - 例如,Tomcat 应用的地址可能是
http://192.168.1.10:8080/jolokia
- 格式:
- 监听端口:(通常留空) 此字段在使用其他 JMX 协议时使用,对于 Jolokia 方式,端口信息已包含在 URL 中。
- 实例名称:建议命名为“JVM-业务名”。
- 点击 “确认”。
🖼️ 界面指引:
- 前置条件 (关键!):此监控方式要求您的目标 Java 应用中必须已部署 Jolokia Agent。通常是将
jolokia-jvm-agent.jar作为一个 JVM Agent 随应用一起启动,或者将jolokia.war文件部署到您的 Web 服务器 (如 Tomcat) 中。
步骤三:验证与分析
- 点击页面上方 “视图” 模块。
- 在左侧资源列表中,展开 “其他数据源” -> “JVM”,点击实例名称。
- 数据验证:
- Heap Memory Usage:监控堆内存的使用情况 (Used vs. Committed vs. Max),是判断内存是否充足、是否存在内存泄漏的核心指标。
- GC Counts & Time:监控垃圾回收的频率和耗时。频繁的 Full GC 或过长的 GC 停顿时间是应用性能下降的主要原因。
- Thread Count:查看 JVM 的总线程数、守护线程数等,有助于分析应用的并发模型和资源消耗。
- Class Loading:监控已加载和未加载的类的数量,用于排查类加载器相关的内存泄漏问题。
下一步:配置与管理告警 (可选)
通过以上步骤完成指标数据集成并确认视图正常后,建议为核心资源配置告警策略,实现风险闭环:
- 进入事件模块:点击顶部导航的 “事件”,切换到 “策略” 或 “模板” 标签页。
- 使用模板复用(推荐):在“模板库”中选择预置的规则(如“主机CPU使用率过高”),填入业务资产,即可快速生成兜底告警。
- 自定义策略:点击“+添加”进入向导,可选择阈值检测或无数据告警检测,搭配灵活的屏蔽与恢复周期条件发送到指定的通知组处理。
- 统一运维:告警产生后可在“告警”标签页统一分析严重/预警事件,并自动下钻到触发当时相关的指标现场进行定界。

























































