Il n’existe pas de MIBs pour ZFS, notamment pour checker les disques défectueux, et c’est bien dommage. Heureusement Solaris possède (depuis sa version 10) “Fault Manager”.
En 3 commandes :
pkgadd -d [repsdespackages] SUNWsmcmd SUNWsmmgr SUNWsmagt
un petit coup de snmpconf pour mettre ça en place et on attaque dans le vif du sujet.
puis bien sur :
svcadm enable sma
on ajoute dans /etc/sma/snmp/snmpd.conf :
dlmod sunFM /usr/lib/fm/amd64/libfmd_snmp.so.1
Pour activer le module snmp de fmd.
on redémarre sma :
svcadm restart sma
<note>le chemin est dépendant de l’archi, j’utilise du x86 64 bits ici</note>
# on prépare un pool zfs basé sur des fichiers mkdir crash cd crash # Les fichiers doivent faire 64M minimum dd if=/dev/zero of=pool1 bs=1024k count=64 dd if=/dev/zero of=pool2 bs=1024k count=64 dd if=/dev/zero of=pool3 bs=1024k count=64 # on crée le pool sudo zpool create crashtest raidz /home/nico/crash/pool1 /home/nico/crash/pool2 /home/nico/crash/pool3 # on le casse rm pool3 # on scrub (pour être sur que le système le voie) sudo zpool scrub crashtest # On regarde fmd faire son job sudo fmadm faulty
Maintenant voyons avec SNMP ce qu’on obtient comme infos :
snmptable -v2c -c public 127.0.0.1 SUN-FM-MIB::sunFmProblemTable
| sunFmProblemUUID | sunFmProblemCode | sunFmProblemURL | sunFmProblemDiagEngine | sunFmProblemDiagTime | SunFmProblemSuspectCount |
| “96397f16-1cea-463b-e9db-de989cd42e81” | ? | ? | ? | ? | ? |
Le module exporte 4 tables : sunFmProblemTable, sunFmFaultEventTable, sunFmModuleTable, sunFmResourceTable
le plus “convivial” étant d’utiliser snmpwalk :
snmpwalk -c public -v 2c 127.0.0.1 SUN-FM-MIB::sunFmProblemTable SUN-FM-MIB::sunFmProblemUUID."96397f16-1cea-463b-e9db-de989cd42e81" = STRING: "96397f16-1cea-463b-e9db-de989cd42e81" SUN-FM-MIB::sunFmProblemCode."96397f16-1cea-463b-e9db-de989cd42e81" = STRING: ZFS-8000-D3 SUN-FM-MIB::sunFmProblemURL."96397f16-1cea-463b-e9db-de989cd42e81" = STRING: http://sun.com/msg/ZFS-8000-D3 SUN-FM-MIB::sunFmProblemDiagEngine."96397f16-1cea-463b-e9db-de989cd42e81" = STRING: fmd:///module/zfs-diagnosis SUN-FM-MIB::sunFmProblemDiagTime."96397f16-1cea-463b-e9db-de989cd42e81" = STRING: 2008-2-21,12:31:2.0,+1:0 SUN-FM-MIB::sunFmProblemSuspectCount."96397f16-1cea-463b-e9db-de989cd42e81" = Gauge32: 1
Tout cela vient de l’excellent : http://blogs.sun.com/wesolows/?entry=a_louder_voice_for_the