Différences entre les versions de « Raid Perc Megaraid / Adaptec »
| Ligne 33 : | Ligne 33 : | ||
<pre> | <pre> | ||
MegaCli -LDInfo -LALL -aALL : donne infos essentiels | MegaCli -LDInfo -LALL -aALL : donne infos essentiels | ||
MegaCli -AdpAllInfo -aALL : Info multiples | |||
MegaCli -CfgDsply -a0 : configuration actuelle du Raid | MegaCli -CfgDsply -a0 : configuration actuelle du Raid | ||
MegaCli -LDSetProp ADRA -LALL -AALL ; passe le cache en readadaptative | MegaCli -LDSetProp ADRA -LALL -AALL ; passe le cache en readadaptative | ||
| Ligne 47 : | Ligne 48 : | ||
MegaCli -PDClear -ProgDsply -PhysDrv [1:2] -a0 : effectue un "Clear" sur un disque | MegaCli -PDClear -ProgDsply -PhysDrv [1:2] -a0 : effectue un "Clear" sur un disque | ||
MegaCli -PDRbld -ProgDsply -PhysDrv [1:2] -a0 : checke l'état d'un Rebuilt | MegaCli -PDRbld -ProgDsply -PhysDrv [1:2] -a0 : checke l'état d'un Rebuilt | ||
Lorsque le taux d'erreur de la carte est > 5/6%, elle ne peut pas passer en writeback, il faut alors envoyer un relearn (qui va décharger puis recharger la batterie) | |||
# Extraire la configuration de la carte : | |||
MegaCli –AdpAllInfo -a0 > LSIconfiguration.txt | |||
# Lancer un calibrage / relearn de la BBU (batterie) | |||
MegaCli -adpbbucmd -bbulearn –a0 | |||
# Si commande ok, le résultat est le suivant (si il y a un failed, c est que la batterie est morte ou pas encore assez rechargée, il faut attendre | |||
Adapter 0: BBU Learn Succeeded. | |||
# Extraire les logs de la carte | |||
MegaCli.exe -adpeventlog -getevents -f logsas.txt –a0 | |||
# Extraire le statut de la BBU | |||
MegaCli -AdpBbuCmd -a0 > LSIBBUstatus.txt | |||
On doit pouvoir alors la passer en writeback, cached.... | |||
</pre> | </pre> | ||
Version du 2 mars 2012 à 17:49
Check Megaraid
MegaRaid SCSI / Megarc
Scrits
megaraid.tar.gz Script check-raid-status-PERC.pl
# cp megarc /usr/local/sbin/ # cp megamgr /usr/local/sbin/ # ./check-raid-status-PERC.pl
# cat /var/tmp/raid.status OPTIMAL 1.00=ONLINE 1.01=ONLINE
Commandes utiles
./megarc.bin -dispCfg -a0 : info sur le raid ./megarc.bin -LogPhysInfo -alladp : info disque ./megarc.bin -ctlrInfo -a0 : info controleur ./megarc.bin -newCfg -R1 -a0 WB RAA CIO : passe le logical drive en Write back ./megarc.bin -doRbld -a0 -RbldArray[0:1] : rebuild du disque channel 0 Target 1 (le nouveau disque)
MegaRaid SAS / Megacli
Scripts
MegaCli
Placez le fichier "MegaCli" et "check-raid-status-SAS.sh" dans le repertoire "/usr/local/sbin/"
Commandes Utiles
MegaCli -LDInfo -LALL -aALL : donne infos essentiels MegaCli -AdpAllInfo -aALL : Info multiples MegaCli -CfgDsply -a0 : configuration actuelle du Raid MegaCli -LDSetProp ADRA -LALL -AALL ; passe le cache en readadaptative MegaCli -LDSetProp WB -LALL -AALL ; passe le cache en write back MegaCli -LDSetProp cached -LALL -AALL ; passe le cache en cached MegaCli -CfgDsply -aALL donne info serial et autre sur les disques durs MegaCli -AdpBbuCmd -GetBbuCapacityInfo -aALL ; info batterie MegaCli -AdpSetProp AlarmSilence -a0 : coupe l'alarme sonore MegaCli -PDList -a0 : lister les disques : Dans les commandes "-PhysDrv[E:S]" - E = Enclosure / S = Slot MegaCli -PDMakeGood -PhysDrv [1:2] -aAll : passe un disque en Unconfigured Good MegaCli -PdPrpRmv -PhysDrv [1:2] -a0 : demande à deconnecter le disque proprepement MegaCli -PDClear -ProgDsply -PhysDrv [1:2] -a0 : effectue un "Clear" sur un disque MegaCli -PDRbld -ProgDsply -PhysDrv [1:2] -a0 : checke l'état d'un Rebuilt Lorsque le taux d'erreur de la carte est > 5/6%, elle ne peut pas passer en writeback, il faut alors envoyer un relearn (qui va décharger puis recharger la batterie) # Extraire la configuration de la carte : MegaCli –AdpAllInfo -a0 > LSIconfiguration.txt # Lancer un calibrage / relearn de la BBU (batterie) MegaCli -adpbbucmd -bbulearn –a0 # Si commande ok, le résultat est le suivant (si il y a un failed, c est que la batterie est morte ou pas encore assez rechargée, il faut attendre Adapter 0: BBU Learn Succeeded. # Extraire les logs de la carte MegaCli.exe -adpeventlog -getevents -f logsas.txt –a0 # Extraire le statut de la BBU MegaCli -AdpBbuCmd -a0 > LSIBBUstatus.txt On doit pouvoir alors la passer en writeback, cached....
Check du raid
Placez une crontab dans "/etc/crontab" :
# Check du raid */5 * * * * root /usr/local/sbin/check-raid-status-SAS.sh
Mettre en place un check_http2 avec "Optimal" en chaine de caractères.
En cas de disque Failed
1er choix
En cas de changement de disque (disque neuf) il n'y a pas besoin de faire ces manipulations, le Rebuilt doit se faire automatiquement. Pensez à vérifier l'état du Rebuilt voir s'il se fait correctement.
Repérer le disque deffectueux :
# MegaCli -PDList -a0 Adapter #0 Enclosure Number: 1 Slot Number: 3 Device Id: 4 Sequence Number: 6 Media Error Count: 0 Other Error Count: 0 Predictive Failure Count: 0 Last Predictive Failure Event Seq Number: 0 Raw Size: 70007MB [0x88bb93a Sectors] Non Coerced Size: 69495MB [0x87bb93a Sectors] Coerced Size: 68664MB [0x861c000 Sectors] Firmware state: Unconfigured(bad) SAS Address(0): 0x500000e013e0db32 SAS Address(1): 0x0 Inquiry Data: FUJITSU MAX3073RC D206DRA3P6C02MPP Enclosure Number: 1 Slot Number: 255 Device Id: 248 Sequence Number: 0 Media Error Count: 0 Other Error Count: 0 Predictive Failure Count: 0 Last Predictive Failure Event Seq Number: 0 Raw Size: 0MB [0x0 Sectors] Non Coerced Size: 9007199254740480MB [0xfffffffffff00000 Sectors] Coerced Size: 0MB [0x0 Sectors] Firmware state: Unconfigured(good) Inquiry Data: LSI SGPIO N/A Enclosure Number: 1 Slot Number: 2 Device Id: 3 Sequence Number: 15 Media Error Count: 0 Other Error Count: 0 Predictive Failure Count: 0 Last Predictive Failure Event Seq Number: 0 Raw Size: 70007MB [0x88bb93a Sectors] Non Coerced Size: 69495MB [0x87bb93a Sectors] Coerced Size: 68664MB [0x861c000 Sectors] Firmware state: Online SAS Address(0): 0x500000e013e0dc12 SAS Address(1): 0x0 Inquiry Data: FUJITSU MAX3073RC D206DRA3P6C02MPY Enclosure Number: 0 Slot Number: 255 Device Id: 65535 Sequence Number: 0 Media Error Count: 0 Other Error Count: 0 Predictive Failure Count: 0 Last Predictive Failure Event Seq Number: 0 Raw Size: 0MB [0x0 Sectors] Non Coerced Size: 9007199254740480MB [0xfffffffffff00000 Sectors] Coerced Size: 0MB [0x0 Sectors] Firmware state: Unconfigured(good) Inquiry Data:
Passer le disque en "Unconfigured (Good)"
MegaCli -PDMakeGood -PhysDrv [1:3] -aAll
En ligne de commande, dire au serveur que nous retirons le disque :
MegaCli -PdPrpRmv -physdrv [1:3] -a0
Ensuite retirer le disque à la main et le remplacer et le Rebuilt se fera automatiquement.
Vous pouvez ensuite checker l'état du Rebuilt avec cette commande :
MegaCli -PDRbld -ProgDsply -PhysDrv [1:3] -a0
2nd choix
Dans le cas ou le 1er choix ne fonctionne pas, rebooter le serveur afin d'effectuer le rebuilt via le "WebBios" Ctrl + H au démarrage.
Check Adaptec
2015S
# cd /usr/local/src # wget http://i2o.shadowconnect.com/raidutils/raidutils-0.0.6.tar.bz2 # tar xjf raidutils-0.0.6.tar.bz2 && cd raidutils-0.0.6 # for i in 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17; do mknod /dev/dpti$i c 151 $i; done # ./configure # make # make install # /usr/local/bin/raidutil -L logical 2>&1 | sed -e 's/$/<br>/' > /var/www/raid.html
Vérifier que "http://aaa.bbb.ccc.ddd/raid.html" retourne bien Optimal dans l'output.
Si c'est le cas, mettre en place le fichier "check_raid.sh" :
#!/bin/sh /usr/local/bin/raidutil -L logical 2>&1 | sed -e 's/$/<br>/' > /var/www/raid.html exit 0
# cp check_raid.sh /usr/local/libexec # chmod 700 /usr/local/libexec/check_raid.sh
Mettre ca dans la crontab:
# Check du raid */5 * * * * root /usr/local/libexec/check_raid.sh
Puis mettre en place un check_http2 dans clarawatch en recherchant le mot 'Optimal' dans la page /raid.html
Si jamais le script affiche deux RAID alors qu'il y en a qu'un (on a pas compris pourquoi), remplacer la ligne centrale de ce script avec:
/usr/local/bin/raidutil -d0 -L logical 2>&1 | sed -e 's/$/<br>/' > /var/www/raid.html
2120S
Linux Debian
# cd / # tar -zxvf adaptec_2120S.tar.gz
Créer le fichier "raid.commands" dans le repertoire "/usr/local/raid/" :
open afa0 logfile start raid.current.config container list disk list logfile end exit
Créer le fichier "check_raid.sh" toujours dans "/usr/local/raid/" :
#!/bin/bash cd /usr/local/raid/ /usr/sbin/afacli < raid.commands
Ensuite faite la commande suivante :
# cd /usr/local/raid/ # /usr/sbin/afacli < raid.commands