Giornata passata a Roma per installare una altro cluster-ha con Manuel.
Anche questa volta il cliente ha voluto una RH7.3 … credo che non smetterò mai di stupirmi delle rischieste dei clienti, ma visto che sono loro che pagano cerco di non impuntarmi.
Lavoro piuttosto semplice: configurazione storage, installazione di due macchine, upgrade di tutti i pacchetti, installazione di mysql4, heartbeat, varie amenità e, infine, il pezzo forte. Non è la prima volta che vogliono PHP ultima release (stavolta la 4.3.4) con una certo numero di funzioni non standard quali ming swf e pdflib. Quindi, compilazione a manina, che è sempre uno sbattimento perchè devi avere installate tutte le librerie necessarie.
Visto che era la replica di un cluster che avevo realizzato qualche tempo fa’ la cosa si è rivelata più veloce del previsto: alle 15 avevamo finito ma il volo di ritorno lo avevamo fissato alle 20. Pomeriggio passato all’areoporto di Roma mangiando, chiacchierando e sbirciando nella rete wi-fi di megabeam.
Tag Archives: work
Performance Tuning
Con veleno che gestisce tutto il carico da solo oggi ho passato molto del mio tempo a cercare di ottimizzare il tuning del S.O.
Googolando sono saltate fuori molte pagine interessanti.
Alcune note: C10K problem
altre assolutamente nuove: Benchmarking BSD and Linux
Fatti, inoltre, alcuni test sulla cache: è basata su due macchine con apache2 (luisito e nacka) messe in loadbalancing da una macchina con lvs (spillo).
Molto utile la possibilità di apache2 di fare da proxy mantenedo l’header “Host” http: in questo modo non è necessario replicare la configurazione dei virtualhost sul proxy/cache.
Ancora in gara cmq anche squid, come sostituto di apache2, configurato come reverse proxy. Farò un po’ di test per decidere quale delle due soluzioni è la più adatta. Al momento sono orientato per apache2 perché è più versatile e permette ad esempio di installare moduli quali usertrack che potrebbero rivelarsi utili per fare delle statistiche un po’ più precise (con analog contiamo, ad esempio, come un unico utente un singolo IP… questa stima era accettabile pre-Fastweb che maschera migliaia di utenti con un unico IP!).
Altri paper interessanti su mod_perl: http://develooper.com/modperl/
Sminchio sul sitone
Qualche *pirla* nel fare una modifica al template che genera le cornici di tutte le pagine del sito non si è accorto che ha cancellato 1 carattere.
Nel mucchio dei tanti caratteri insignificanti e superflui che publichiamo è andato a beccare proprio uno dei più importanti, il primo, alterando così un tag e mandando a put**ne una espressione regolare :-)
Ipotizzo che nella fretta di uscire da VI abbia digitato “x” invece di “:x”.
Lo sminchio è stato online per un paio d’ore. Mi è toccato chiamare il Jamo per ricostruire il “giro del fumo” per la generazione della home-page… vantaggi e svantaggi della conoscenza distribuita di AAS :-)
DNS fase 2
Il NIC ha finalmente accettato la configurazione del server… è bastato che quelli di telecom fornissero i dati corretti :-)
Ora mi hanno passato un altro ticket, un altro ufficio, per organizzare la delega della risoluzione inversa degli ip che abbiamo assegnati.
Al telefono con un tecnico mi sono permesso di chiedere se/come era possibile avere l’assegnazione di un pool di IPv6. La risposta è stata molto esauriente: “Cos’è IPv6?”
Burp.
DNS: Inizia la saga
Ovviamente la migrazione del DNS di inter.it non poteva andare liscia al primo colpo… speriamo solo di non entrare in un’altra saga senza fine in cui il cattivone (telecom) non ne vuole sapere di morire!
DNS check fallito.
Prima di attivare la migrazione il NIC fa’ un controllo sulla corretta configurazione della zona. E’ fallito.
Mi è venuto il dubbio e ho controllato a modino… tutto ok per me. Ho anche disturbato Md che mi ha confermato che la zona è ok.
E’ probabile che quelli di telecom abbiano inserito dei dati inconsistenti nell'”application form”… vabbe’ aspettiamo…
… chissà perché ma me lo sentivo che le cose sarebbero andate per le lunghe :-/
Debian su ZIO
Ieri.
Giornata passata all’IDC di rozzano con il Corra per risistemare il vecchio Zio (xseries 7100 4cpu 2Gb ram). Il tutto reso possibile dall’aver girato tutto il traffico su Veleno.
Fase 1: Installare il controller RAID
Visto che finalmente abbiamo potuto piallare tutto abbiamo colto l’occasione per installare il controller raid che era ancora nella sua ormai impolverata scatola.
Operazione non semplicissima. Il problema era recuperare il cavo scsi che va’ dai dischi al controller on-board, staccarlo ed attaccarlo al nuovo controller. Per riuscire a farlo bisogna smontare quasi tutta la macchina :-)
Fase 2: Installare Debian su ZIO
Installare debian è per me ormai routine… gli unici problemi sono venuti dal controller raid appena installato (IBM ServeRaid). Il fatto è che il kernel bf2.4 di woody non ha il supporto per il controller e quindi non si vedono i dischi. BTW ero incappato nello stesso problema con Veleno ma non ricordavo come ne ero uscito :-) La soluzione è stata più semplice del previsto, è bastato utilizzare il kernel vanilla (2.2.x) e rimpiazzarlo poi con un kernel compilato a manina. Ovviamente c’è qualche piccolo inconveniente tipo dover aggingere a mano il “journal” ai fs per montarli in ext3.
Fase 3: Adesivo “Powered by Linux”
Questa fase non era prevista ma visto che mi trovavo in borsa un bell’adesivetto col pinguino non ho resistito ad “appiccicarlo” sul rack!
Avrei preferito mettere l’adesivo debian ma visto che è in nero su sfondo trasparente sulle macchine tutte nere non si sarebbe visto :-/
Dimenticavo: pausa pranzo al “fallin’down” a base di filetto all’aceto balsamico e montefalco caprai 2000. Ha “offerto” il corra.
Domain Name Server
Finalmente mi sono deciso e ho mandato la richiesta a telecom per avere la delega del dominio inter.it. In questo modo la gestione del DNS sarà molto più agevole senza dover passare da mamma telecom.
Ovviamente il daemon è bind9 installato in chroot sul fw. Lo stesso demone che faceva da resolver/cache per la rete interna ora risolve anche la zona inter.it.
La configurazione è abbastanza classica e utilizza le view per separare l'”esterno” dall'”interno”.
Non mi è ancora totalmente chiaro su come telecom mi delegherà la risoluzione inversa degli ip che ci sono assegnati (ci sono almeno un paio di escamotage per delegare solo una porzione di una classe, una /28 nel nostro caso). A dire il vero dubito fortemente di riuscire ad ottenere la delega :-/
TODO: trovare il modo di separare i log delle due view: può esere utile per loggare solo le query che arrivano dall’esterno.
Veleno Tuning
Giornata passata ad ottimizzare le prestazioni di veleno.
Ho installato LRRD server su balilla e metterò il client su tutte le macchine in modo da avere sempre la situazione sotto controllo in maniera un po’ dettagliata. Visto che lrrd è in SID ho dovuto installarlo dal tar.gz installando un po’ di dipendenze a mano.
Uno dei problemi è legato al keepalive di apache. Lo avevo disabilitato per consentire un maggior numero di ip diversi contemporanei senza bloccare le risorse. Il prblema è che mi rimangono moltissime (decine di migliaia!) connessioni aperte in TIME_WAIT il che porta ad un consumo inutile di socket e memoria. Per il momento ho riattivato il keepalive portando il timeout ad un valore molto basso: 5 sec.
Re: MAGAGNE
A poche ore dalla partenza per Sharm sono ancora qui a lavorare; pergiunta di sabato!
In effetti ci sono stati un po’ di dettagli da sistemare e ovviamente sono tutti e sempre urgenti :-)
Corra: ora dovrebbe funzionare tutto. Risolto anche l’annotazione delle foto con un colpo di apt-get (mancava “gs”!)
Ora spero proprio di riuscire a riposarmi un poco prima di uscire (alle 4.15 am brrr)
WWW su VELENO
Oggi (ops ieri, il 21) grande migrazione.
Visto che il comportamento di ZIO (su cui girava tutto il www di inter.it) era ormai diventato imprevedibile abbiamo spostato tutto su VELENO.
La migrazione è stata tutt’altro che banale anche perchè su zio c’è installata una vecchia RH7.x mentre su veleno una debian woody… in effetti io e il corra ci siamo stupiti che alla fine tutto funzionasse :-)
Be’, insomma, quasi tutto… ci sono ancora un po’ di magagne, ma il grosso va’!
Una cosa tra tutte, su cui ho picchiato la testa per 20 minuti buoni: su veleno non funzionavano gli script a cron. Per farla breve, la versione di “run-parts” su debian (a differenza di quella di RH) ignora i file che contengono caratteri “strani” quali ad esempio il “.” . Ovviamente i nostri script erano tutti *.pl, *.sh, etc. In questi casi molto utile run-parts –test !
Anche se ho finito poco fa di controllare alcuni dettagli sono contento di aver fatto questa sgobbata: era un lavoro che dovevamo fare da tempo. Indipendentemente dai problemi che ha manifestato zio, si voleva piallarlo per installare anche lì debian. Ora vado in ferie più tranquillo.
BTW, ci dobbiamo trovare a malpensa alle 5.00 am di domenica… br….