プロメテウスの監視SNMPを使用

SNMPは、情報を取得します

まず、次のように基本的な情報があると仮定すると、SNMPを監視するために必要な基本的な情報を得ます:

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

設定SNMP輸出国

公式のダウンロードSNMP輸出の実行可能ファイル。

また、あなたが最初に設定する必要があり、SNMP輸出国の設定ファイルを生成するために、独自のコンパイラを必要にgenerator.ymlファイルを、次に続くの構築実行 snmp.ymlをコンパイル手順を。generator.yml設定ファイルを参照することができますファイルフォーマットgenerator.ymlファイルのみのみmodules.if_mib.authフィールドを変更以下、SNMPコミュニティを注入する必要があり、残りのファイル形式はで一貫しています。

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。

設定プロメテウス

プロメテウスは、最小の構成以下、ジョブは、SNMPを増加させることができる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の輸出を開始することができます

grafana設定

SNMPのSNMPようなインタフェースのステータス、名前、パケットのイン/アウト数は、パケットの数がパケットをドロップし、エラーパケットの数などのサービスは、(典型的にはスイッチ)特定のノードインタフェース情報、。シンプルな構成は以下のとおりであります:

受信したパケットの合計数を計算します

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)

おすすめ

転載: www.cnblogs.com/charlieroro/p/11118671.html