开源版
夜莺开源生态
Prometheus
版权声明
第1章:天降奇兵
第2章:探索PromQL
第3章:Prometheus告警处理
第4章:Exporter详解
第5章:数据与可视化
第6章:集群与高可用
第7章:Prometheus服务发现
第8章:监控Kubernetes
第9章:Prometheus Operator
参考资料

ipmi采集插件

应用场景

采集硬件的温度、功率、电压等信息

采集原理

利用ipmitool sdr命令, 采集硬件的温度、功率、电压等信息,并转化为指标。 依赖工具ipmitool ,所以需要安装ipmitool

配置

本地采集需要免密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 = ""

指标示例

版本1

  • ipmi_xxxx:
    • tags:
      • unit
      • host
      • server (远程采集时才有)
      • status_code
      • description
    • fields:
      • xxxx

版本2

  • ipmi_xxxx:
    • tags:
      • entity_id (可以用来区分重复指标)
      • status_code (两个字符的状态码)
      • status_desc (状态吗的扩展描述字段)
      • unit (单位)
      • host
      • server (远程采集才会有)
      • description
    • fields:
      • xxxx

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 版本中仍然保。
开源版
Flashcat
Flashduty