使用Prometheus监控snmp

首先获取需要监控snmp的基本信息,假设基本信息如下:

snmp服务IP: 1.1.1.1 snmp community: public snmp exportor部署地址: 2.2.2.2 配置snmp exporter

从官方下载snmp exporter的可执行文件。

此外还需要自己编译生成snmp exporter的配置文件,首先需要配置generator.yml文件,然后按照和中的步骤编译生成snmp.yml。generator.yml文件的配置可以参考。generator.yml文件中只需要注入snmp的community即可,下面仅修改了modules.if_mib.auth字段,其余与中一致。

modules: # Default IF-MIB interfaces table with ifIndex. if_mib: walk: [sysUpTime, interfaces, ifXTable] version: 2 auth: community: public lookups: - source_indexes: [ifIndex] lookup: ifAlias - source_indexes: [ifIndex] lookup: ifDescr - source_indexes: [ifIndex] # Use OID to avoid conflict with Netscaler NS-ROOT-MIB. lookup: 1.3.6.1.2.1.31.1.1.1.1 # ifName ...

生成新的snmp.yml之后替换原有的snmp.yml即可。

配置Prometheus

Prometheus的最小配置如下,增加一个snmp的job即可,params.module中可以配置需要抓取的模块,不配置表示全部抓取。

global: scrape_interval: 1m scrape_timeout: 60s evaluation_interval: 20s scrape_configs: - job_name: 'snmp' static_configs: - targets: - 1.1.1.1 metrics_path: /snmp # params: # module: [if_mib] relabel_configs: - source_labels: [__address__] target_label: __param_target - source_labels: [__param_target] target_label: instance - target_label: __address__ replacement: 2.2.2.2:9116

启动snmp exporter和Prometheus即可

grafana配置

snmp给出了snmp服务所在的节点(一般为交换机)的接口信息,如接口状态,名称,In/Out报文数目,丢弃报文数和错误报文数等。下面给出简单的配置:

计算接收的报文总数

sum(ifInBroadcastPkts+ifInMulticastPkts+ifInUcastPkts)by(ifDescr)

计算2分钟内接收到的报文总数的平均数

sum(rate(ifInBroadcastPkts[2m])+rate(ifInMulticastPkts[2m])+rate(ifInUcastPkts[2m]))by(ifDescr)

计算发送的报文总数

sum(ifOutBroadcastPkts+ifOutMulticastPkts+ifOutUcastPkts)by(ifDescr)

计算2分钟内发送的报文总数的平均数

sum(rate(ifOutBroadcastPkts[2m])+rate(ifOutMulticastPkts[2m])+rate(ifOutUcastPkts[2m]))by(ifDescr)

计算未上送的报文总数

sum(ifInDiscards+ifInErrors+ifInUnknownProtos)by(ifDescr)

计算2分钟内未上送的报文总数的平均数

sum(rate(ifInDiscards[2m])+rate(ifInErrors[2m])+rate(ifInUnknownProtos[2m]))by(ifDescr)

计算丢弃的报文总数

sum(ifOutDiscards+ifOutErrors)by(ifDescr)

计算2分钟内丢弃的报文总数的平均数

sum(rate(ifOutDiscards[2m])+rate(ifOutErrors[2m]))by(ifDescr)

使用Prometheus监控snmp

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wppwdz.html