夜莺-Nightingale
夜莺V7
夜莺V6
项目介绍
架构介绍
快速开始
黄埔营
安装部署
升级
采集器
使用手册
API
数据库表结构
users
target
user_group
user_group_member
task_tpl
task_tpl_host
task_record
sso_config
role
role_operation
recording_rule
notify_tpl
metric_view
datasource
configs
chart_share
busi_group
busi_group_member
builtin_cate
board
board_payload
alerting_engines
alert_subscribe
alert_rule
alert_mute
alert_his_event
alert_cur_event
alert_aggr_view
FAQ
转发数据给多个时序库
机器列表数据异常
数据流图
监控数据时有时无
查询原始监控数据
快捷视图详解
告警自愈模块使用
仪表盘里只展示我的机器
仪表盘里图表数据缺失
设置自定义告警通知方式
target_up指标的问题
夜莺可以监控 x 么
告警和恢复的判断逻辑
容量规划问题
connection refused
登录与认证
数据采集器Categraf
日志写到`/var/log/messages`
告警规则&告警模板如何引用变量
采集到的数据是字符串怎么处理
管理员密码忘记了
制作大盘如何添加图片
添加loki数据源报错
v6小版本升级有什么 sql 要执行吗
机器列表有展示,但采集数据查询不到
n9e 启动异常报错
n9e集群部署配置修改
推送 Promethus 报错 OOO
机器列表怎么忽略云资源
告警规则仅在本业务组生效失败
categraf 启动 oracle 插件报错
告警自愈不生效
n9e查询时序库EOF报错
手动编译项目报错
promQL 使用函数标签信息丢失
内存使用率+可用率不等于100
夜莺仪表盘有哪些内置变量
categraf配置文件支持热加载吗
导入 Grafana 仪表盘无效数据源
如何查看报错消息
采集器-Categraf
开源生态
Telegraf
Prometheus
版权声明
第1章:天降奇兵
第2章:探索PromQL
开篇
理解时间序列
Metrics类型
初识PromQL
PromQL操作符
PromQL聚合操作
PromQL内置函数
在HTTP API中使用PromQL
最佳实践:4个黄金指标和USE方法
小结
第3章:Prometheus告警处理
开篇
Prometheus告警简介
自定义Prometheus告警规则
部署Alertmanager
Alertmanager配置概述
基于标签的告警处理路由
使用Receiver接收告警信息
告警模板详解
屏蔽告警通知
使用Recoding Rules优化性能
小结
第4章:Exporter详解
第5章:数据与可视化
第6章:集群与高可用
第7章:Prometheus服务发现
第8章:监控Kubernetes
开篇
初识Kubernetes
在Kubernetes下部署Prometheus
Kubernetes下的服务发现
使用Prometheus监控Kubernetes集群
基于Prometheus的弹性伸缩
小结
第9章:Prometheus Operator
参考资料
ipmi采集插件
应用场景
采集硬件的温度、功率、电压等信息
采集原理
v0.3.44(企业版v0.3.65)以前的版本利用ipmitool sdr
命令, 采集硬件的温度、功率、电压等信息,并转化为指标。 依赖工具ipmitool
,所以需要安装ipmitool
。
新版版的ipmi插件对齐ipmi exporter,利用freeipm套件命令来采集硬件硬件的温度、功率、电压等信息,并转化为指标。
- ipmimonitoring / ipmi-sensors
- ipmi-dcmi
- ipmi-raw
- bmc-info
- ipmi-sel
- ipmi-chassis
无论是ipmitool还是freeipmi, 都需要先自行配置好ipmi。
配置
v0.3.44(企业版v0.3.65)及以上版本:
# Read metrics from the bare metal servers via freeipmi
[[instances]]
# target指定是本地采集还是远程采集
#target="localhost"
# 指定采集的用户名和密码,这里务必保证ipmi命令能获取正确输出,不是网上查到一个用户名 密码就可以。
#user = "user"
#pass = "1234"
# ipmi协议版本,支持1.5 和 2.0
#driver = "LAN_2_0"
# 指定特权用户级别
#privilege = "User"
## session-timeout, ms
#timeout = 100000
# 支持的采集器 bmc, bmc-watchdog, ipmi, chassis, dcmi, sel,sm-lan-mode
# 默认使用 bmc, ipmi, chassis和dcmi,建议保持下列配置便于仪表盘更好的展示
collectors = [ "bmc", "ipmi", "chassis", "sel", "dcmi"]
# 不关注的传感器,指定id 排除掉
#exclude_sensor_ids = [ 2, 29, 32, 50, 52, 55 ]
# 如果你想使用定制化的参数覆盖内置的命令,可以修改以下内容; 建议保持注释
#[instances.collector_cmd]
#ipmi = "sudo"
#sel = "sudo"
#[instances.default_args]
#ipmi = [ "--bridge-sensors" ]
#[instances.custom_args]
#ipmi = [ "--bridge-sensors" ]
#sel = [ "ipmi-sel" ]
v0.3.44 之前版本,请参考:
本地采集需要免密sudo,并且保持servers为空;远程采集需要按照格式配置servers
[[instances]]
## 可选配置,categraf默认会搜索ipmitool,如果ipmitool没有安装到默认路径下,需要显示指定
# path = "/usr/bin/ipmitool"
##
## 本地采集,需要免密sudo权限
use_sudo = true
##
## 默认是ADMINISTRATOR, 有 CALLBACK, USER, OPERATOR, ADMINISTRATOR 可选
# privilege = "ADMINISTRATOR"
##
## 如果servers 为空, 则为本地采集
## [username[:password]@][protocol[(address)]]
# servers = ["ADMIN:PASSW0RD@lan(192.168.1.1)"]
## 采集周期
interval = "30s"
## 采集超时时间
timeout = "20s"
## ipmitool 返回信息格式的版本 ,默认是1
metric_version = 2
## 可选项,ipmi连接 的hex key
# hex_key = ""
## 是否使用cache
## 有用户反馈使用cache会快2-10倍 (硬件:HP G10 servers, OS: ubuntu20.04)
## 不过要注意,如果有些传感器启动比较慢,cache可能会有问题
# use_cache = false
## 设置cache 路径
# cache_path = ""
指标示例
v0.3.44 及以后的指标
ipmi_bmc_info
ipmi_chassis_cooling_fault_state
ipmi_chassis_drive_fault_state
ipmi_chassis_power_state
ipmi_dcmi_power_consumption_watts
ipmi_fan_speed_rpm
ipmi_fan_speed_state
ipmi_power_state
ipmi_power_watts
ipmi_scrape_duration_seconds
ipmi_sel_free_space_bytes
ipmi_sel_logs_count
ipmi_sensor_state
ipmi_sensor_value
ipmi_temperature_celsius
ipmi_temperature_state
ipmi_up
ipmi_voltage_state
ipmi_voltage_volts
......
v0.3.44以前的版本指标 版本1
- ipmi_xxxx:
- tags:
- unit
- host
- server (远程采集时才有)
- status_code
- description
- fields:
- xxxx
- tags:
版本2
- ipmi_xxxx:
- tags:
- entity_id (可以用来区分重复指标)
- status_code (两个字符的状态码)
- status_desc (状态吗的扩展描述字段)
- unit (单位)
- host
- server (远程采集才会有)
- description
- fields:
- xxxx
- tags:
V1版本 远程采集指标示例:
ipmi_cpu1_temp agent_hostname=1.2.3.4 description=40_degrees_c entity_id=3.1 server=192.168.10.173 status_code=ok unit=degrees_c 40
ipmi_cpu2_temp agent_hostname=1.2.3.4 description=42_degrees_c entity_id=3.2 server=192.168.10.173 status_code=ok unit=degrees_c 42
ipmi_pch_temp agent_hostname=1.2.3.4 description=66_degrees_c entity_id=7.1 server=192.168.10.173 status_code=ok unit=degrees_c 66
ipmi_fan3 agent_hostname=1.2.3.4 description=500_rpm entity_id=29.3 server=192.168.10.173 status_code=lnc unit=rpm 500
ipmi_fan4 agent_hostname=1.2.3.4 description=500_rpm entity_id=29.4 server=192.168.10.173 status_code=lnc unit=rpm 500
ipmi_fan5 agent_hostname=1.2.3.4 description=no_reading entity_id=29.5 server=192.168.10.173 status_code=ns status_desc=no_reading 0
V1版本 本地采集指标示例:
ipmi_cpu1_temp agent_hostname=1.2.3.4 description=40_degrees_c status_code=ok unit=degrees_c 40
ipmi_cpu2_temp agent_hostname=1.2.3.4 description=43_degrees_c status_code=ok unit=degrees_c 43
ipmi_pch_temp agent_hostname=1.2.3.4 description=66_degrees_c status_code=ok unit=degrees_c 66
ipmi_fan3 agent_hostname=1.2.3.4 description=500_rpm status_code=nc unit=rpm 500
ipmi_fan4 agent_hostname=1.2.3.4 description=500_rpm status_code=nc unit=rpm 500
ipmi_fan5 agent_hostname=1.2.3.4 description=no_reading status_code=ns 0
V2版本,本地采集指标示例
ipmi_cpu1_temp agent_hostname=1.2.3.4 description=39_degrees_c entity_id=3.1 status_code=ok unit=degrees_c 39
ipmi_cpu2_temp agent_hostname=1.2.3.4 description=42_degrees_c entity_id=3.2 status_code=ok unit=degrees_c 42
ipmi_pch_temp agent_hostname=1.2.3.4 description=66_degrees_c entity_id=7.1 status_code=ok unit=degrees_c 66
ipmi_fan5 agent_hostname=1.2.3.4 description=no_reading entity_id=29.5 status_code=ns status_desc=no_reading 0
ipmi_fan6 agent_hostname=1.2.3.4 description=500_rpm entity_id=29.6 status_code=lnc unit=rpm 500
ipmi_fana agent_hostname=1.2.3.4 description=no_reading entity_id=29.7 status_code=ns status_desc=no_reading 0
V2版本,远程采集指标示例
ipmi_cpu1_temp agent_hostname=1.2.3.4 description=40_degrees_c entity_id=3.1 server=192.168.10.173 status_code=ok unit=degrees_c 40
ipmi_cpu2_temp agent_hostname=1.2.3.4 description=42_degrees_c entity_id=3.2 server=192.168.10.173 status_code=ok unit=degrees_c 42
ipmi_pch_temp agent_hostname=1.2.3.4 description=66_degrees_c entity_id=7.1 server=192.168.10.173 status_code=ok unit=degrees_c 66
ipmi_fan5 agent_hostname=1.2.3.4 description=no_reading entity_id=29.5 server=192.168.10.173 status_code=ns status_desc=no_reading 0
ipmi_fan6 agent_hostname=1.2.3.4 description=500_rpm entity_id=29.6 server=192.168.10.173 status_code=lnc unit=rpm 500
ipmi_fana agent_hostname=1.2.3.4 description=no_reading entity_id=29.7 server=192.168.10.173 status_code=ns status_desc=no_reading 0
- v0.3.10 删除了ipmi v2版本中的
description
,因为这个字段在v2中与status_desc
语义重复了; v1 版本中仍然保。