Différences entre les versions de « Raid Perc Megaraid / Adaptec »
| Ligne 44 : | Ligne 44 : | ||
MegaCli-2.00 -EncInfo -aALL : info sur la carte controleur | MegaCli-2.00 -EncInfo -aALL : info sur la carte controleur | ||
# Commandes disques & raid | |||
Dans les commandes "-PhysDrv[E:S]" - E = Enclosure / S = Slot | Dans les commandes "-PhysDrv[E:S]" - E = Enclosure / S = Slot | ||
MegaCli -PDMakeGood -PhysDrv [1:2] -aAll : passe un disque en Unconfigured Good | MegaCli -PDMakeGood -PhysDrv [1:2] -aAll : passe un disque en Unconfigured Good | ||
MegaCli -PdPrpRmv -PhysDrv [1:2] -a0 : demande à deconnecter le disque proprepement | 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 -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 | ||
MegaCli -PdReplaceMissing -PhysDrv [E:S] -ArrayN -rowN -aN : Replace missing drive. The number N of the array parameter is the Span Reference you get using '${megacli} -CfgDsply | |||
-aALL' and tr N of the row parameter is the Physical Disk in that span or array starting with zero (it is not the physical disk. | |||
MegaCli -PDRbld -Start -PhysDrv [E:S] -aN : rebuild drive | |||
MegaCli -CfgLdAdd -r(0|1|5) [E:S, E:S, ...] -aN : create RAID 0, 1, 5 drive | |||
MegaCli -CfgSpanAdd -r10 -Array0[E:S,E:S] -Array1[E:S,E:S] -aN : create RAID 10 drive | |||
MegaCli -PDOffline -PhysDrv [E:S] -aN : passe un disque en offline | MegaCli -PDOffline -PhysDrv [E:S] -aN : passe un disque en offline | ||
MegaCli -PDHSP -Set -PhysDrv [E:S] -aN : spécifie un global hotspare | MegaCli -PDHSP -Set -PhysDrv [E:S] -aN : spécifie un global hotspare | ||
# Commandes liées à la batterie | |||
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) | 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) | ||
Version du 2 mars 2012 à 18:02
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 (permet de récupérer Enclosure Device ID (E) et le Slot Number (S))
MegaCli-2.00 -EncInfo -aALL : info sur la carte controleur
# Commandes disques & raid
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
MegaCli -PdReplaceMissing -PhysDrv [E:S] -ArrayN -rowN -aN : Replace missing drive. The number N of the array parameter is the Span Reference you get using '${megacli} -CfgDsply
-aALL' and tr N of the row parameter is the Physical Disk in that span or array starting with zero (it is not the physical disk.
MegaCli -PDRbld -Start -PhysDrv [E:S] -aN : rebuild drive
MegaCli -CfgLdAdd -r(0|1|5) [E:S, E:S, ...] -aN : create RAID 0, 1, 5 drive
MegaCli -CfgSpanAdd -r10 -Array0[E:S,E:S] -Array1[E:S,E:S] -aN : create RAID 10 drive
MegaCli -PDOffline -PhysDrv [E:S] -aN : passe un disque en offline
MegaCli -PDHSP -Set -PhysDrv [E:S] -aN : spécifie un global hotspare
# Commandes liées à la batterie
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