Charge CPU d'une machine Linux par SNMP? - réseaux et sécurité - Linux et OS Alternatifs
Marsh Posté le 12-05-2006 à 12:42:06
pour info, pour mes scripts MRTG j'utilise ces OID pour la charge cpu :
.1.3.6.1.4.1.2021.11.50.0 (UCD-SNMP-MIB::ssCpuRawUser.0)
.1.3.6.1.4.1.2021.11.52.0 (UCD-SNMP-MIB::ssCpuRawSystem.0)
.1.3.6.1.4.1.2021.11.51.0 (UCD-SNMP-MIB::ssCpuRawNice.0)
Marsh Posté le 12-05-2006 à 18:53:13
azerty_92 a écrit : pour info, pour mes scripts MRTG j'utilise ces OID pour la charge cpu : |
Merci, j'avais vu également ces oids, mais, sur mes machines linux, les valeurs sont genre 6584521,... enfin, des valeur rafraichis toutes les 1 ou 2 secondes mais je ne sais pas les exploiter (car elle ne sont pas en pourcentage...)
Ces valeurs chez toi sont en %tage?
Marsh Posté le 15-05-2006 à 21:42:56
Bonjour à tous..
Cela fait une semaine que je travail sur MRTG en stage dans le cadre de ma formation....
J'aimerais savoir comment je pourrais récupérer ces fameuses OID,, cela me simplifirait la configuration de mon fichier .cfg
A la base je suis censé superviser le bande passante du quarantaine de switchs, mais je l'utilise également chez moi pour d'autre infos comme la charge CPU...
Débutant sous linux, mais trés intérressé !!!
Merci à vous
Marsh Posté le 16-05-2006 à 09:21:40
Shy FX a écrit : Bonjour à tous.. |
On vas pas pourrir ce topic, mais tu as pas créer tes script avec l outil de mrtg ? configmaker ( ou un truc comme ca ) pour les espaces disk moi j ia un truc comme ca :
Citation : |
Marsh Posté le 21-05-2006 à 01:31:32
Shy FX a écrit : Bonjour à tous.. |
Utilise Getif sous Windows par exemple... .
Marsh Posté le 25-05-2006 à 22:07:02
Merci du conseil, mais je tiens à rester sous Linux. La boîte ne me donne pas le choix.
Marsh Posté le 27-05-2006 à 16:07:23
T'as pas un PC à côté sous Windows ?
Ca te sert juste à récupérer les OID rien de plus...
Il existe sûrement le même genre de logiciels pour Linux... Au pire utilise snmpwalk.
Marsh Posté le 27-05-2006 à 17:19:17
Bonjour,
Pour trouver une solution à mon problème (intitulé du topic), j'ai installé (et découvert cacti) : hyper simple à installer et il possède des template qui permettent l'affichage des charges cpu de mes machines via snmp.
Donc je ne m'occupe plus de trouver le bon oid et de faire des scripts... cacti me le fait!
PS: il y a surement d'autes outils qui le font également... mais pour connaître et avoir utilisé MRTG de nombreuses fois... je préfère cacti.
Marsh Posté le 29-05-2006 à 01:19:29
Disons que Cacti ça tend plutôt vers l'usine à gaz... Mais sinon ça sort de jolis trucs et sans trop se crever le popotin...
La contrainte principale, c'est l'obligation d'avoir une base SQL... M'enfin c'est pas la mort non plus.
Marsh Posté le 29-05-2006 à 12:53:41
Modprobe a écrit : Disons que Cacti ça tend plutôt vers l'usine à gaz... |
C'est ce que je pensais au début... et après l'avoir installé et utilisé je me rend compte qu'il est relativement bien fait... et puis on le détare et c'est bon... tout est en php.
Modprobe a écrit : |
C'est le but!
Modprobe a écrit : |
Oui je trouve ca dommage aussi... je me serais contenté de ne garder que les bases round-robin... mais cacti impose une base SQL... enfin ça le fait quand même
Marsh Posté le 30-10-2014 à 11:44:48
Bonjour,
Je n'ai pas la branche "2021" dans la MIBS. J'ai installé et désinstallé plusieurs fois les paquets snmpd et snmp, mais le resultat reste le même.
Je souhaiterais connaitre le pourcentage de RAM et de CPU utilisé par mon serveur Linux (Ubuntu 14.04 x64)
Avez vous une idée ?
Cordialement
Marsh Posté le 30-10-2014 à 13:35:02
debutantlinux a écrit : Bonjour, |
Quel est le résutlat précisément ?
Marsh Posté le 30-10-2014 à 14:02:48
o'gure a écrit : |
Et bien que je n'ai pas la branche "2021" dans mon arborescence. Lorsque je fais une requête snmp j'ai en retours un message d'erreur.
Commande :
./check_snmp -H @IP -P 2c -C 'communauté' -o ".1.3.6.1.4.1.2021.11.50.0"
Résultat :
SNMP OK - = No Such Object available on this agent at this OID |
Marsh Posté le 30-10-2014 à 14:28:56
Si c'est une installe fraiche et que tu utilises la communauté public, c'est normal. Faut que tu personnalises ton snmpd.conf pour autoriser à poller autre chose que le système de base. La best practice étant surtout de définir une communauté à toi (qui peut être vu en fait "comme" un password) et lui lister sa vue. Public est une communauté "wellknown", faut pas l'utiliser
Exemple de déblocage juste pour test sur une debian avec snmpd par défaut
<oggy@aoi:/etc/snmp>% snmpget -v2c -c public localhost .1.3.6.1.4.1.2021.11.50.0 |
J'édite /etc/snmpd/snmpd.conf (je décommente la première et je commente la seconde
rocommunity public localhost |
et pouf ça marche
<oggy@aoi:/etc/snmp>% snmpwalk -v2c -c public localhost .1.3.6.1.4.1.2021.11.50.0 |
Marsh Posté le 30-10-2014 à 14:38:47
Merci o'gure, cela corrige le problème en effet, mais en créer un autre ^^
je reçois ce message :
External command error: Timeout: No response from @ip:161
Marsh Posté le 30-10-2014 à 14:45:30
Ca serait plus facile de t'aider si tu donnais et la commande précise passée et le fichier de config...
Marsh Posté le 30-10-2014 à 15:14:30
La commande est celle que j'ai mis au début ( ./check_snmp -H @IP -P 2c -C public -o OID), lorsque je fais la tienne cela fonctionne sur le serveur nagios mais pas sur le serveur que je souhaite supervisé.
Voici le fichier de conf snmpd.conf :
###############################################################################
#
# EXAMPLE.conf:
# An example configuration file for configuring the Net-SNMP agent ('snmpd')
# See the 'snmpd.conf(5)' man page for details
#
# Some entries are deliberately commented out, and will need to be explicitly activated
#
###############################################################################
#
# AGENT BEHAVIOUR
#
# Listen for connections from the local system only
#agentAddress udp:127.0.0.1:161
# Listen for connections on all interfaces (both IPv4 *and* IPv6)
agentAddress udp:161,udp6::161
###############################################################################
#
# SNMPv3 AUTHENTICATION
#
# Note that these particular settings don't actually belong here.
# They should be copied to the file /var/lib/snmp/snmpd.conf
# and the passwords changed, before being uncommented in that file *only*.
# Then restart the agent
# createUser authOnlyUser MD5 "remember to change this password"
# createUser authPrivUser SHA "remember to change this one too" DES
# createUser internalUser MD5 "this is only ever used internally, but still change the password"
# If you also change the usernames (which might be sensible),
# then remember to update the other occurances in this example config file to match.
###############################################################################
#
# ACCESS CONTROL
#
# system + hrSystem groups only
view systemonly included .1.3.6.1.2.1.1
view systemonly included .1.3.6.1.2.1.25.1
# Full access from the local host
rocommunity public localhost
# Default access to basic system info
# rocommunity public default -V systemonly
# Full access from an example network
# Adjust this network address to match your local
# settings, change the community string,
# and check the 'agentAddress' setting above
#rocommunity secret 10.0.0.0/16
# Full read-only access for SNMPv3
rouser authOnlyUser
# Full write access for encrypted requests
# Remember to activate the 'createUser' lines above
#rwuser authPrivUser priv
com2sec readonly default public
# It's no longer typically necessary to use the full 'com2sec/group/access' configuration
# r[ow]user and r[ow]community, together with suitable views, should cover most requirements
###############################################################################
#
# SYSTEM INFORMATION
#
# Note that setting these values here, results in the corresponding MIB objects being 'read-only'
# See snmpd.conf(5) for more details
sysLocation Sitting on the Dock of the Bay
sysContact Me <me@example.org>
# Application + End-to-End layers
sysServices 72
#
# Process Monitoring
#
# At least one 'mountd' process
proc mountd
# No more than 4 'ntalkd' processes - 0 is OK
proc ntalkd 4
# At least one 'sendmail' process, but no more than 10
proc sendmail 10 1
# Walk the UCD-SNMP-MIB::prTable to see the resulting output
# Note that this table will be empty if there are no "proc" entries in the snmpd.conf file
#
# Disk Monitoring
#
# 10MBs required on root disk, 5% free on /var, 10% free on all other disks
disk / 100000
disk /var 5%
includeAllDisks 10%
# Walk the UCD-SNMP-MIB::dskTable to see the resulting output
# Note that this table will be empty if there are no "disk" entries in the snmpd.conf file
#
# System Load
#
# Unacceptable 1-, 5-, and 15-minute load averages
load 12 10 5
# Walk the UCD-SNMP-MIB::laTable to see the resulting output
# Note that this table *will* be populated, even without a "load" entry in the snmpd.conf file
###############################################################################
#
# ACTIVE MONITORING
#
# send SNMPv1 traps
trapsink localhost public
# send SNMPv2c traps
#trap2sink localhost public
# send SNMPv2c INFORMs
#informsink localhost public
# Note that you typically only want *one* of these three lines
# Uncommenting two (or all three) will result in multiple copies of each notification.
#
# Event MIB - automatically generate alerts
#
# Remember to activate the 'createUser' lines above
iquerySecName internalUser
rouser internalUser
# generate traps on UCD error conditions
defaultMonitors yes
# generate traps on linkUp/Down
linkUpDownNotifications yes
###############################################################################
#
# EXTENDING THE AGENT
#
#
# Arbitrary extension commands
#
extend test1 /bin/echo Hello, world!
extend-sh test2 echo Hello, world! ; echo Hi there ; exit 35
#extend-sh test3 /bin/sh /tmp/shtest
# Note that this last entry requires the script '/tmp/shtest' to be created first,
# containing the same three shell commands, before the line is uncommented
# Walk the NET-SNMP-EXTEND-MIB tables (nsExtendConfigTable, nsExtendOutput1Table
# and nsExtendOutput2Table) to see the resulting output
# Note that the "extend" directive supercedes the previous "exec" and "sh" directives
# However, walking the UCD-SNMP-MIB::extTable should still returns the same output,
# as well as the fuller results in the above tables.
#
# "Pass-through" MIB extension command
#
#pass .1.3.6.1.4.1.8072.2.255 /bin/sh PREFIX/local/passtest
#pass .1.3.6.1.4.1.8072.2.255 /usr/bin/perl PREFIX/local/passtest.pl
# Note that this requires one of the two 'passtest' scripts to be installed first,
# before the appropriate line is uncommented.
# These scripts can be found in the 'local' directory of the source distribution,
# and are not installed automatically.
# Walk the NET-SNMP-PASS-MIB::netSnmpPassExamples subtree to see the resulting output
#
# AgentX Sub-agents
#
# Run as an AgentX master agent
master agentx
# Listen for network connections (from localhost)
# rather than the default named socket /var/agentx/master
#agentXSocket tcp:localhost:705
Marsh Posté le 30-10-2014 à 15:45:33
Je vais être méchant mais faut lire aussi...
Citation : # Full access from the local host |
Il ne s'agit pas de lancer des invocations et modifier des fichiers de conf à la va vite pour que ça tombe en marche.
Lis la doc du fichier snmpd.conf pour comprendre ce que tu fais.
Pour ta commande, c'est une script que je ne connais pas, pas une commande standard. Comme tu l'as dit après, c'est un script nagios. On n'est pas devin...
http://linux.die.net/man/5/snmpd.conf
rocommunity COMMUNITY [SOURCE [OID | -V VIEW [CONTEXT]]] |
com2sec [-Cn CONTEXT] SECNAME SOURCE COMMUNITY |
Ce que l'on a modifié, c'est uniquement une sorte d'access list. localhost = le système local, 127.0.0.1.
Citation : rocommunity public localhost |
signifie que la communauté public, en read only, peut voir toute les mib/oid depuis localhost. A toi de customiser cela après si tu veux consulter ta mib depuis un autre équiment/réseau.
Encore une fois, public, c'est juste pour l'exemple hein... si tu ouvres ton serveur en snmp, faut pas laisser public.
Marsh Posté le 30-10-2014 à 16:05:06
En même temps si j'avais trouvé par moi même je ne viendrai pas te posé de question. "Lire" ne veut pas dire comprendre. Bref je vais pas épiloguer la dessus. Merci de ton aide, bonne fin de journée
Marsh Posté le 12-05-2006 à 10:59:38
Bonjour,
Ma question est formulé dans le sujet...
En fait j'ai bien trouvé cet OID (.1.3.6.1.4.1.2021.11.11.0) :
[root@localhost ~]# snmpget -v2c -c public machineA .1.3.6.1.4.1.2021.11.11.0
UCD-SNMP-MIB::ssCpuIdle.0 = INTEGER: 97
ainsi j'ai le % d'idle, mais "apparamment" (je peux me tromper) il correspond à la charge (d'idle) moyenne en pourcentage depuis minuit... Moi, j'aimerais avoir la charge des 15, 5 voire de la dernière minute... avec snmp... c'est possible?
il y a moyen d'avoir le load average des 15,5 et dernière minutes :
1.3.6.1.4.1.2021.10.1"; # net-snmp load table
1.3.6.1.4.1.2021.10.1.2"; # text 'Load-1','Load-5', 'Load-15'
1.3.6.1.4.1.2021.10.1.3"; # effective load table
Mais je préfèrais le % d'idle qui me paraît plus parlant... alors si quelqu'un avait déjà eu affaire à cela...
Message édité par arn100 le 12-05-2006 à 11:08:58