1 votes

Obtenir des compteurs dans OpenNMS

J'ai du mal à obtenir des graphiques de charge de mon APC RackPDU dans OpenNMS. J'ai défini les valeurs appropriées dans datacollection-config.xml :

<groups>
  <group name = "APC-RackPDU" ifType="ignore">
    <mibObj oid=".1.3.6.1.4.1.318.1.1.12.2.3.1.1.2.2" instance="0" alias="rPDUCurB1" type="Gauge32" />
    <mibObj oid=".1.3.6.1.4.1.318.1.1.12.2.3.1.1.2.3" instance="0" alias="rPDUCurB2" type="Gauge32" />
  </group>
</groups
<systems>
  <systemDef name="APC UPS">
    <sysoidMask>.1.3.6.1.4.1.318.</sysoidMask>
    <collect>
      <includeGroup>APC</includeGroup>
      <includeGroup>APC-RackPDU</includeGroup>
      <includeGroup>mib2-ups-rfc1628</includeGroup>
    </collect>
  </systemDef>
</systems>

Et en utilisant snmpget Je suis en mesure de récupérer les valeurs en question :

# snmpget -v2c -c public 192.168.127.133 .1.3.6.1.4.1.318.1.1.12.2.3.1.1.2.3
SNMPv2-SMI::enterprises.318.1.1.12.2.3.1.1.2.3 = Gauge32: 38

J'ai également défini un rapport dans snmp-graph.properties pour travailler sur les données collectées, mais je ne les vois même pas être collectées. Le répertoire rrd de l'hôte ( rrd/snmp/170 dans mon cas) ne contient que les génériques icmp.*.jrb y tcp*.jrb fichiers de données sans signe des fichiers rPDUCurB1 / rPDUCurB2 attendus.

J'ai essayé de nettoyer le rrd/snmp/170 et de forcer un scan de capacité sur le noeud, mais il sort juste avec les mêmes fichiers. Une recherche rapide dans le journal pour RackPDU (le nom de la définition du groupe) ou rPDUCur (le nom de l'alias de la valeur) n'a rien donné.

Je soupçonne que les capacités ne sont pas détectées correctement, mais je ne sais pas comment déboguer davantage.

Edit : J'ai augmenté le niveau de journalisation de collectd à "DEBUG" et quelques lignes suspectes ont été enregistrées sur le noeud en question :

2012-04-17 12:01:50,636 DEBUG [CollectdScheduler-20 Pool-fiber0] DefaultDataCollectionConfigDao: getMibObjectList: collection: default sysoid: .1.3.6.1.4.1.318.1.3.4.5 address: 192.168.127.133 ifType: -2
[...]
DefaultDataCollectionConfigDao: getMibObjectList: includes sysoid .1.3.6.1.4.1.318.1.3.4.5 for system <name>: APC UPS
2012-04-17 12:01:50,636 DEBUG [CollectdScheduler-20 Pool-fiber0] DefaultDataCollectionConfigDao: getMibObjectList: MATCH!! adding system 'APC UPS'
2012-04-17 12:01:50,636 DEBUG [CollectdScheduler-20 Pool-fiber0] [...]
DefaultDataCollectionConfigDao: processGroupName:  processing group: APC groupIfType: ignore ifType: -2
2012-04-17 12:01:50,649 DEBUG [CollectdScheduler-20 Pool-fiber0] DefaultDataCollectionConfigDao: processGroupName: OIDs from group 'APC:ignore' are excluded for ifType: -2
2012-04-17 12:01:50,649 DEBUG [CollectdScheduler-20 Pool-fiber0] DefaultDataCollectionConfigDao: processGroupName:  processing group: APC-RackPDU groupIfType: ignore ifType: -2
2012-04-17 12:01:50,649 DEBUG [CollectdScheduler-20 Pool-fiber0] DefaultDataCollectionConfigDao: processGroupName: OIDs from group 'APC-RackPDU:ignore' are excluded for ifType: -2

Je me suis demandé pourquoi exactement OIDs from group 'APC-RackPDU:ignore' are excluded for ifType: -2 mais j'ai essayé de changer la définition du groupe en <group name = "APC-RackPDU" ifType="-2"> (qui n'a pas fonctionné du tout et a généré une erreur de validation lors du démarrage d'OpenNMS) et <group name = "APC-RackPDU" ifType="all"> (qui a fonctionné et a produit un OIDs from group 'APC-RackPDU:all' are included for ifType: -2 dans les journaux, mais cela n'a rien arrangé).

1voto

the-wabbit Points 40039

Je me suis tiré une balle dans le pied en utilisant les définitions d'APC UPS comme modèle pour définir mon nouveau groupe et en ne faisant pas attention à l'attribut "instance" lorsque j'ai assemblé les OID pour les tester avec snmpget . Changer la définition de

<groups>
  <group name = "APC-RackPDU" ifType="ignore">
    <mibObj oid=".1.3.6.1.4.1.318.1.1.12.2.3.1.1.2" instance="2" alias="rPDUCurB1" type="Gauge32" />
    <mibObj oid=".1.3.6.1.4.1.318.1.1.12.2.3.1.1.2" instance="3" alias="rPDUCurB2" type="Gauge32" />
  </group>
</groups

a réglé le problème. J'ai eu la bonne idée en regardant une vieille message sur la liste de diffusion OpenNMS répondu par Jeff Gehlbach - le crédit où il est dû.

0voto

ewwhite Points 193555

La meilleure approche serait de passer par le canal IRC d'OpenNMS. Je suis sûr qu'ils ont vu le dispositif en question puisqu'il est assez commun.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X