come installare Storage Manager su debian Etch / Lenny 64bit

Mi sono posto un problema (anche se ormai è arcinoto che "non ci si deve porre domande a cui non si sa rispondere" ...) : come faccio a monitorare i controller serveraid dei server ibm?
E' vero che i dischi hanno il led ed in caso di failure diventa arancione, ma se mi sfugge può succedere che si rompa prima un disco e non me ne accorga e che poi se ne rompa un altro fino a quando me ne accorgerei senza dubbio causa morte del server.
Il server in uso è un IBM X3400 con 3 controller sata/sas molto recenti:
- ServeRAID 8k (1)
- ServeRAID 8s (2)
ServeRaid 8k e 8s come tutti i controller ServeRaid sono prodotti dalla Adaptec e rimarcati da IBM.
Il sistema operativo è Debian Lenny 64bit (amd64), ma tutta la guida è stata testata anche su Etch 64bit (amd64).





Ho cominciato a documentarmi a partire dal sito IBM: grave, gravissimo errore. Cercare qualcosa in quel sito è come cercare un ago in un pagliaio.
Il software di monitoraggio e gestione del raid IBM lo chiama Raid Manager. Ho scaricato 2 iso da 600MB, ho letto 3 manuali (rigorosamente pdf da 150 pg l'uno) per non venire a capo di nulla. Il risultato finale è che sono riuscito facilmente a far funzionare arcconf che è il manager da console, mentre per l'interfaccia grafica in java, bestemmie a catinelle. L'applicazione si avvia ma non c'è verso di collegarsi a localhost per ottenere le info sullo stato dei controller.
Stavo per rinunciare e ad adattarmi al solo arcconf, quando mi sono imbattuto in uno sparuto nugolo di anime pie di ubuntu che mi ha illuminato. Esiste un pacchetto mantenuto da Adaptec (che poi ho scoperto essere, guarda caso, quasi identico a quello di IBM) ASM - Adaptec Storage Manager.
La faccio breve e vado a descrivere gli step necessari per l'installazione di quanto necessario e le modifiche da apportare affinchè il tutto funzioni.
preparazione: installo alien e altri pacchetti che torneranno utili a StorMan per funzionare:
apt-get install alien libc6-dev libstdc++5 ia32-libs lib32gcc1 lib32stdc++6
download:
Questa è la parte piu insidiosa di tutto il processo.
In primis bisogna trovare il modello Adaptec corrispondente al ServeRaid. Sfortunatamente non sono ancora riuscito a trovare una tabella di equiparazione tra la nomeclatura IBM e di Adaptec, quindi lo si può leggere solo sul controller ed è necessario aprire il case:

Nel caso del ServeRaid 8s il corrispettivo modello Adaptec è il 4805SAS.
Ora il download vero e proprio: ci si potrebbe aspettare che le versioni piu recenti dello Storage Manager supportino anche tutti i prodotti supportati dalle versioni precedenti: non è cosi. La versione corretta di Storage Manager la si scopre a partire da questa pagina e selezionando il controller corretto.
As esempio, per il ServeRaid 8s (aka 4805SAS) la versione corretta è la 5.20 scaricabile da qui. La 5.30 invece non supporta il ServeRaid 8s, contrariamente a quanto ci si potrebbe aspettare:
| versione 5.20 | versione 5.30 |
| Compatible Products Adaptec RAID 3085 Adaptec RAID 31205 Adaptec RAID 31605 Adaptec RAID 3405 Adaptec RAID 3805 Adaptec RAID 4800SAS Adaptec RAID 4805SAS Adaptec SCSI RAID 2130SLP Adaptec SCSI RAID 2230SLP Adaptec Serial ATA II RAID 2420SA Adaptec Serial ATA II RAID 2820SA |
Compatible Products Adaptec RAID 3085 Adaptec RAID 31205 Adaptec RAID 31605 Adaptec RAID 3405 Adaptec RAID 3805 |
[OT]
Tempo fa, non ricordo per quale controller avevo installato la versione 4.10 che necessita di qualche trick: quindi riporto qui la procedura per l'installazione della versione 4.10 nel caso in cui fosse necessaria a qualcuno.
[/OT]
Finalmente sono pronto per il download:
mkdir /tmp/storman wget -c http://download.adaptec.com/raid/storage_manager/asm_linux_x64_v5_20_17414.rpm ls -lh totale 46M -rw-r--r-- 1 root root 46M 21 ott 2007 asm_linux_x64_v5_20_17414.rpm
creo il pacchetto deb: (nota: davanti a scripts ci va "meno" "meno")
alien --scripts asm_linux_x64_v5_20_17414.rpm ls -lh totale 91M -rw-r--r-- 1 root root 46M 21 ott 2007 asm_linux_x64_v5_20_17414.rpm -rw-r--r-- 1 root root 46M 3 ott 16:51 storman_5.20-1_amd64.deb
dpkg -i storman_5.20-1_amd64.deb
durante l'installazione si ha un messaggio d'errore del quale non ci si deve preoccupare, lo si sistema dopo:
Configuro storman (5.20-1) ... starting Adaptec Storage Manager agent ... cut: fields and positions are numbered from 1 Usare `cut --help' per ulteriori informazioni. cut: fields and positions are numbered from 1 Usare `cut --help' per ulteriori informazioni.
l'installazione si conclude con questo messaggio:
Installation completed successfully. The application can be started by running: /usr/StorMan/StorMan.sh
apporto qualche modifica che, con un po di esperimenti, ho scoperto essere necessaria:
ln -s /usr/bin/sort /bin/sort cd /usr/StorMan cp stor_agent stor_agent.ori sed -e "s/0-6/\ 1-6/g" -i stor_agent chmod +x arcconf chmod +x hrconf chmod +x *.sh chmod +x stor_agent
sistemo l'errore visto in fase di installazione:
rm /etc/init.d/stor_agent ln -s /usr/StorMan/stor_agent /etc/init.d/stor_agent
aggiungo l'agent agli script in avvio
update-rc.d stor_agent defaults update-rc.d: warning: /etc/init.d/stor_agent missing LSB style header Adding system startup for /etc/init.d/stor_agent ... /etc/rc0.d/K20stor_agent -> ../init.d/stor_agent /etc/rc1.d/K20stor_agent -> ../init.d/stor_agent /etc/rc6.d/K20stor_agent -> ../init.d/stor_agent /etc/rc3.d/S20stor_agent -> ../init.d/stor_agent /etc/rc5.d/S20stor_agent -> ../init.d/stor_agent
Aggiungo al PATH (per il solo root) la directory dello Storage Manager editando il file /etc/profile ed aggiungendo ":/usr/StorMan"
vim /etc/profile if [ "`id -u`" -eq 0 ]; then PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/StorMan" else PATH="/usr/local/bin:/usr/bin:/bin:/usr/games" fi
questo è quello che, infine, ottengo:
cd /usr/StorMan ls -lh totale 28M -rwxrwx--x 1 root root 1,6M 21 set 2007 arcconf drwxrwx--- 3 root root 4,0K 3 ott 16:53 help -rwxrwx--x 1 root root 2,0M 21 set 2007 hrconf -rwxrwx--- 1 root root 1,7K 21 set 2007 index.html drwxrwx--- 4 root root 4,0K 12 ott 2006 jre -rwxrwx--- 1 root root 1,1M 21 set 2007 libstdc++.so.5 -rwxrwx--- 1 root root 1,7M 21 set 2007 libSTORARC.so -rwxrwx--- 1 root root 2,6M 21 set 2007 libSTORIROC.so -rwxrwx--- 1 root root 31K 21 set 2007 libSTORUTIL.so -rwxrwx--- 1 root root 45K 21 set 2007 libXp.so.6 -rw-r--r-- 1 root root 796 3 ott 16:54 RaidAgnt.pps -rwxrwx--- 1 root root 61 21 set 2007 RaidDev.pps -rwxrwx--- 1 root root 72 21 set 2007 RaidDrv.pps -rw-r--r-- 1 root root 3,6K 3 ott 16:54 RaidErrA.log -rw-r--r-- 1 root root 0 3 ott 16:53 RaidErr.log -rw-r--r-- 1 root root 2,7K 3 ott 16:54 RaidEvtA.log -rw-r--r-- 1 root root 823 3 ott 16:54 RaidJob.ser -rwxrwx--- 1 root root 676 21 set 2007 RaidLog.pps -rwxrwx--- 1 root root 8,9M 21 set 2007 RaidMan.jar -rwxrwx--- 1 root root 9,4M 21 set 2007 RaidManS.jar -rw-r--r-- 1 root root 634 3 ott 16:53 RaidNLst.ser -rw-r--r-- 1 root root 525 3 ott 16:54 RaidSLst.ser -rw-r--r-- 1 root root 157 3 ott 16:54 RaidSMTP.ser -rwxrwx--- 1 root root 19K 21 set 2007 README.TXT -rwxrwx--x 1 root root 1,7K 3 ott 16:56 stor_agent -rwxr-x--- 1 root root 1,7K 3 ott 16:55 stor_agent.ori -rwxrwx--x 1 root root 4,3K 21 set 2007 StorAgnt.sh -rwxrwx--x 1 root root 4,1K 21 set 2007 StorMan.sh -rwxrwx--- 1 root root 0 3 ott 16:53 sun-jre150linuxx64.tgz -rw-r--r-- 1 root root 899 3 ott 16:53 SystemID -rwxrwx--- 1 root root 1,9K 21 set 2007 tweak.pl
Storage Manager ci offre un set di tool per l'amministrazione dei controller ServeRaid 8S e 8K:
- arcconf: è un tool testuale che riporta moltissime informazioni e che è in grado, a quanto pare, di aggiornare il firmware del controller senza riavviare il server, ma non l'ho mai provato.
- hrconf: è un tool testuale molto simile ad arcconf.
- RaidMan.sh: è un tool grafico in java che consente di amministrare con facilità gli array raid e di impostare gli account di posta ai quali inviare le notifiche di failure oltre che gli avvisi acustici.
arcconf | UCLI | Adaptec uniform command line interface | UCLI | Version 5.20 (B17414) | UCLI | (C) Adaptec 2003-2007 | UCLI | All Rights Reserved COPYBACK | toggles controller copy back mode CREATE | creates a logical device DATASCRUB | toggles the controller background consistency check mode DELETE | deletes one or more logical devices FAILOVER | toggles the controller autotomatic failover mode SNAPSHOT | creates a copy of a logical device GETCONFIG | prints controller information GETLOGS | gets controller log information GETSTATUS | displays the status of running tasks GETVERSION | prints version information for all controllers IDENTIFY | blinks LEDS on device(s) connected to a controller KEY | installs a Feature Key onto a controller MODIFY | performs RAID Level Migration or Online Capacity Expansion RESCAN | checks for new or removed drives ROMUPDATE | updates controller firmware SETALARM | controls the controller alarm, if present SETCONFIG | restores the default configuration SETCACHE | adjusts physical or logical device cache mode SETNAME | renames a logical device given its logical device number SETPRIORITY | changes the priority of a current logical device task SETSTATE | manually sets the state of a physical or logical device TASK | performs a task such as build/verify on a physical or logical device
hrconf | UCLI | Adaptec uniform command line interface | UCLI | Version 5.20 (B17414) | UCLI | (C) Adaptec 2003-2007 | UCLI | All Rights Reserved BACKUP | saves the current configuration to a file CREATE | creates a logical device DELETE | deletes one or more logical devices GETCONFIG | prints controller information GETSTATUS | displays the status of running tasks GETVERSION | prints version information for all controllers IDENTIFY | blinks LEDS on device(s) connected to a controller RESCAN | checks for new or removed drives RESTORE | restores a configuration from a saved file ROMUPDATE | updates controller firmware SETBOOT | marks a logical device bootable SETCONFIG | restores the default configuration SETSTATE | manually sets the state of a physical or logical device TASK | performs a task such as build/verify on a logical device
Un esempio delle informazioni che arcconf raccoglie sul ServeRaid 8K:
./arcconf GETCONFIG 1
Controllers found: 3
----------------------------------------------------------------------
Controller information
----------------------------------------------------------------------
Controller Status : Optimal
Channel description : SAS/SATA
Controller Model : IBM ServeRAID 8k
Controller Serial Number : C912E0
Physical Slot : 0
Installed memory : 256 MB
Copyback : Disabled
Background consistency check : Enabled
Automatic Failover : Enabled
Defunct disk drive count : 0
Logical devices/Failed/Degraded : 1/0/0
--------------------------------------------------------
Controller Version Information
--------------------------------------------------------
BIOS : 5.2-0 (15411)
Firmware : 5.2-0 (15411)
Driver : 1.1-5 (2449)
Boot Flash : 5.1-0 (15411)
--------------------------------------------------------
Controller Battery Information
--------------------------------------------------------
Status : Optimal
Over temperature : No
Capacity remaining : 100 percent
Time remaining (at current draw) : 5 days, 10 hours, 40 minutes
----------------------------------------------------------------------
Logical device information
----------------------------------------------------------------------
Logical device number 0
Logical device name : Drive 1
RAID level : 5
Status of logical device : Optimal
Size : 1668062 MB
Stripe-unit size : 256 KB
Read-cache mode : Enabled
Write-cache mode : Enabled (write-back)
Write-cache setting : Enabled (write-back) when protected by battery
Partitioned : Yes
Protected by Hot-Spare : No
Bootable : Yes
Failed stripes : No
--------------------------------------------------------
Logical device segment information
--------------------------------------------------------
Segment 0 : Present (0,0) WD-WCANY3572505
Segment 1 : Present (0,1) WD-WCANY3672295
Segment 2 : Present (0,2) WD-WCANY3622392
Segment 3 : Present (0,3) WD-WCANY3572622
Segment 4 : Present (0,4) WD-WCANY3572437
Segment 5 : Present (0,5) WD-WCANY3621474
Segment 6 : Present (0,6) WD-WCANY3677375
Segment 7 : Present (0,7) WD-WCANY3572424
----------------------------------------------------------------------
Physical Device information
----------------------------------------------------------------------
Device #0
Device is a Hard drive
State : Online
Supported : Yes
Transfer Speed : SATA 3.0 Gb/s
Reported Channel,Device : 0,0
Reported Location : Enclosure 0, Slot 0
Reported ESD : 2,0
Vendor : WDC
Model : WD2500YS-23SHB0
Firmware : 20.06C04
Serial number : WD-WCANY3572505
Size : 238475 MB
Write Cache : Enabled (write-back)
FRU : None
S.M.A.R.T. : No
Lancio RaidMan.sh l'interfaccia grafica in java: non serve installare la java virtual machine perchè il pacchetto contiene quanto necessario.
Se si sta lavorando su un server sprovvisto di X si può sfruttare l'X forwarding di ssh accedendo al server con il comando:
ssh -X user@server
e verificando di aver i seguenti pacchetti installati sul server:
debian etch: x11-common xbase-clients
debian lenny: xauth
x3400:/usr/StorMan# ./StorMan.sh
Dopo aver inserito la password di root vedo correttamente i controller, i volumi e i dischi.
Noto con piacere che l'interfaccia ha quello che cercavo, ovvero un meccanismo di notifica via mail.
Ecco gli screenshots:





Faccio ripartire l'agent di Storage Manager:
/etc/init.d/stor_agent stop /etc/init.d/stor_agent start ps aux |grep Sto root 8797 0.0 0.0 10592 1324 pts/1 S 20:45 0:00 sh /usr/StorMan/StorAgnt.sh root 8810 5.1 3.1 887332 65396 pts/1 Sl 20:45 0:04 ./jre/bin/java -Djava.compiler=NONE -cp /usr/StorMan/RaidMan.jar com.ibm.sysmgt.raidmgr.agent.ManagementAgent
ora lo testo: stacco un disco a caldo (nel mio caso non ci sono dati importanti, sono in una situazione di test). Ecco che l'agent mi invia la mail con la notifica di failure:
This message was generated by the Adaptec Storage Manager Agent. Please do not reply to this message.Event Description:
Logical device failed: controller 2, logical device 1 ("Device 1").Error Event Source: @x3400.2v.ntw Date: 04/13/2008 Time: 09:03:30 PM CEST
Event Type:
alcuni riferimenti:
enjoy!
- blog di dam
- 3362 letture

Ottima guida l'url per lo
Ottima guida l'url per lo storage manager lo trovi adesso:
http://download.adaptec.com/raid/storage_manager/asm_linux_x64_v5_20_17414.rpm
@seba grazie della
@seba
grazie della segnalazione ! ciao
Invia nuovo commento