Mi sveglio stamani con il cellulare color rosso fuoco, gli sms arrivavano a manetta.
** PROBLEM alert 1 – [fw3p] morfeo3p/NAGIOS2 is CRITICAL **
Premessa no.1: il mio lavoro tra le altre cose, consiste nel fare da baby sitter ai vari cluster sparsi sul territorio milanese, per un totale di un centinaio di macchine, su due server farm, una è Fastweb, l’altra telecom. Come sistema di monitoring usiamo nagios, e nella miriade di controlli abbiamo installato anche alcuni check incrociati tra le varie server farm, in pratica a giro ogni nagios controlla un altro nagios, cosi se qualcuno di questi crolla lo veniamo a sapere, e finchè il suddetto non torna su ogni 5 minuti riceviamo una mail ed un sms. In particolare la macchina che ospita il nagios in questione oltre che vecchia, ed anche abbastanza marcia ed andrebbe rifatta.
"Bello, è perchè è crollato adesso?"
penso…accendo il portatile, lancio la vpn e mi connetto all’interfaccia web…l’interfaccia c’è, gli script cgi però non girano a causa di alcuni problemi :-/
mi connetto alla macchina e controllo i processi, sono attivi, riavvio nagios
:~# /etc/init.d/nagios2 restart
Restarting nagios2 monitoring daemon: Nagios2 already running!
Failed!.
"ma mi prende per il culo??!! lo so che è attivo, ti ho chiesto di restrtarlo infatti"
allora gli faccio capire che deve prima stopparlo e dopo avviarlo, e cosi sembra essersi convinto. Riaccedo all’interfaccia grafica e vedo che nulla è cambiato, nel frattempo il palmare continua a gridare, ed il nervoso sale.
Do un occhio ai log di nagios, e tra i vari alert vedo:
[1244949194] SERVICE ALERT: localhost;Disk Space;CRITICAL;HARD;1;DISK CRITICAL –
free space: / 0 MB (0% inode=100%):
"WTF!!!"
Premessa no.2: La macchina di monitoring non fa nulla, se non appunto, monitorare il cluster assegnatogli, e di recente gli abbiamo assegnato anche il compito di backuppare i tre mail server che abbiamo, tale backup però visto la mole di dati da registrare, lo facciamo via iscsi su uno storage e non sulla macchina stessa…la partizione di root quindi è di soli 46GB, ed è sempre vuota.
"Come cazzo è possibile che si è riempito??!!"
subito penso ai backup, ma no, non sono loro la causa, sono stati fatti correttamente sulla partizione apposita però effettivamente….
:~# df -h
Device Mount Availab. Used Used%
/dev/sda1 / 46GB 46GB 100%
(si non è una macchina col raid, ve l’ho detto che è vecchia)
mi lancio in un esplorazione selvaggia del disco, non avendo assolutamente una minima idea di cosa cercare, e quasi per caso nella home di root vedo un file strano:
:/root# ls -lh
….
-rwxr-xr-x 1 root root 46GB 2009-06-14 03:25 –exclude=fuffa.lock
O_o
ecco la causa, c’è un file di lock che è di soli 46GB nella home di root, in 1,5 secondi individuo il problema in un bug nello script dei backup che ho realizzato settimana scorsa, sembra che il parametro exclude passato al tar in realtà venga interpretato come il nome finale dell’archivio da realizzare, essendo lo script nel cron di root, e non essendo specificato nessun path, viene naturalmente creato nella home di root. Tenendo a mente che la domenica viene fatto un archivio di tutti i backup incrementali della settimana, per un totale di più di 100Gb di dati, realizzo subito che sicuramente ho qualche processo di tar incriccato qua e là, killo il killabile e sistemo il bug.
Liberato lo spazio riavvio nuovamente nagios ed ecco riprendersi, se non chè partono altri tipi di alert:
** PROBLEM alert 11 – [S4C] frodo/CHECK RELAYD is CRITICAL **
Il demone del bilanciatore su due macchine OpenBSD sembra non esistere, ma siccome queste due macchine da tempo inutilizzate, sono state seviziate più e più volte da un collega per test vari, non mi creo più di tanti problemi ed applico l’acknowledge sugli allarmi per fermare la tempesta degli sms.
Applicata la modifica inizio la mia bella attività di cazzeggio….
"Biiip…Biiiip"
"E che minchia succede adesso…"
** PROBLEM alert 12 – [S4C] frodo/CHECK RELAYD is CRITICAL **
"ma mi prendi per il culo, ti ho appena messo l’ack…"
controllo e l’ack effettivamente c’era, allora procedo a disabilitare il controllo del servizio, e già che ci sono dico anche a nagios di non stressarmi ogni 5 minuti con gli sms, cosi tanto per stare sicuri…
"Biiip…Biiiip"
** PROBLEM alert 13 – [S4C] frodo/CHECK RELAYD is CRITICAL **
"ma che $£%&*!!"
Ri-ricontrollo, e gli allarmi sono tutti disabilitati, ma gli sms continuano ad arrivare, è arrivato il momento di usare le maniere forti, mi connetto in ssh alla macchine e procedo con l’eliminare le macchine dalla configurazione.
Riavvio di nuovo nagios (sempre cercando di convincerlo che deve prima stoppare e poi avviare), controllo sulla web-interface e finalmente gli allarmi sono scomparsi, era ora, torno a creare il mio esercito su imperiaonline…
"Biiiip….Biiiip"
"E che rottura di £$%&@#§ stamattina…"
** PROBLEM alert 14 – [S4C] frodo/CHECK RELAYD is CRITICAL **
"Ok è ufficiale che stamani mi vuole prendere per il culo…"
ricontrollo la configurazione, gli host non esistono più, per sicurezza passo dal semplice commentarli al cancellarli definitivamente, do il restart di nagios e di nuovo non capisce che deve prima stoppare
:~# /etc/init.d/nagios2 restart
Restarting nagios2 monitoring daemon: Nagios2 already running!
Failed!.
spazientito do il reboot della macchina (ERRORE!!) sperando che sistemi un pò di cose, dopo 5 minuti (!!) finalmente mi sbatte fuori dal prompt ed attendo che il riavvio venga effettuato, dopo mezz’ora decido che il riavvio non è stato effettuato, e la macchina si è incriccata.
Mando la mail al centro di controllo chiedendo il riavvio fisico della macchina ed inizio a bestemmiare forte…
Dopo circa un ora mi chiama l’omino di fastweb e gli chiedo di attaccare un monitor:
LUI: Ciao senti sono davanti al rack ma non vedo nessuna macchina etichettata "morfeo3p"
IO: Come no, il rack è quello controlla bene, guarda anche i piccoli lcd sul fronte alcune macchine hanno il nome che scorre li.
LUI: Eccola l’ho trovata te la riavvio?
IO: NO!! prima please attacca un monitor ed una tastiera e dimmi cosa vedi
LUI: Ok dammi un minuto..(rumore di martellate varie)..ecco mi dice…Error code 9
"E che minchia significa??!!"
IO: E neint’altro?
LUI: Si spe…Failed file system check type (letto tipe non taip) ctrl-d ecc ecc…
"Olè la macchina è morta ma porca £$%%&"
IO: Ok spegnila e riaccendila per favore e dimmi cosa vedi a video
Click…bzzzzzz(ventole che si fermano)…stonk(O_o)….stump(??!!)…vrrrrrrr(ventole che ripartono)…..
LUI: …Failed file system check type (letto tipe non taip) ctrl-d ecc ecc…però sta volta con code 8, prima era 9
"E che cazzo cambia??!"
IO: Bene la macchina è andata, tienila cosi com’è domani mattina vengo li va…grazie
LUI: Va bene buon Week End
"Buon Week End…mi prende per il culo anche lui…."
In sostanza la macchina ha il file system sputtanato, si dovrà rifare sicuramente, spero di poter recuperare impostazioni e script vari.
Morale della favola: Di domenica, quando una macchina non ne vuole sapere di piegarsi al tuo potere, lasciala morire e non riavviarla assolutamente.
|
|













mhuhahahahahhaha sei troppo
mhuhahahahahhaha sei troppo forte ahahhahaha
almeno le mie sventure
almeno le mie sventure servono a qualcosa
mi spiace per te…
cmq
mi spiace per te…
cmq S-T-R-E-P-I-T-O-S-O
eheheh grazie
eheheh grazie
eheheh! divertente! se di
eheheh! divertente! se di domenica mi dovesse esplodere il computer vedrò di seguire il tuo consiglio!
quantomeno bckuppa tutto il
quantomeno bckuppa tutto il possibile prima di riavviare…sai non si sa mai
Ciao Ale, che bella domenica
Ciao Ale, che bella domenica che hai appena trascorso eh
Gente che se ne va a mare e gente che bestemmia contro una macchina
Alla fine l’hai riparata in loco?
Lo saprai stasera è già
Lo saprai stasera è già pronta la storiella con gli sviluppi