lunedì, marzo 29, 2010

GDocBackup 0.4.13.87 released

Added support for pdf export and other minor fixes/enhancements.

http://gs.fhtino.it/gdocbackup

giovedì, marzo 18, 2010

C'è sempre da imparare dagli altri, soprattutto se questi raccontano

Il 24 febbraio scorso è "caduto" GAE - Google App Engine. Per chi non lo conoscesse (chi?) è la piattaforma per lo sviluppo di applicazioni di Cloud Compunting di Google. Da non confondere con Google Apps, che è sempre Cloud, è sempre di Google ma è un più un servizio che una piattaforma di sviluppo. Detto in 2 parole: in Google App Engine scrivi applicazioni web in Java o Phyton. In Google Apps usi versioni parzialmente custom di GMail, Calendar, ecc.
Dicevo... il 24 febbrario Google App Engine è "morto": non funzionava più niente. Dopo un paio di ore di completo blackout sono ripartite le applicazioni, prima in read-only, poi in modo normale. Il disservizio è stato molto grave, ha praticamente coinvolto tutte le applicazioni e ha scatenato molte reazioni negative fra gli utenti visto che GAE è un servizio a pagamento (...ovviamente c'è anche una versione gratuita... a differenza di qualcun'altro...). 
Un po' di giorni dopo il fattaccio Google ha pubbicato un'analisi "post-mortem". Il post è molto dettagliato ed è possibile capire molte cose su come vengono gestiti ed erogati i servizi in Google. Ma l'aspetto che mi ha colpito di più è la trasparenza: non so quante aziende di fronte ad un problema serio sui propri servizi avrebbero fatto la stessa cosa. Un "mea culpa" pubblico e dettagliato. Certo, ci sono ragioni di politica commerciale, ma è la prima volta che vedo una cosa del genere.
Il post di Google è anche un'occasione per imparare qualcosa sulle problematiche dell'erogazione dei servizi da applicare poi anche in realtà più piccole.
  • power failure: la causa è stato un problema dell'alimentazione dell'energia elettrica. Ci facciamo tanti problemi con SAN, RAID e Cluster e poi ci dimentichiamo dei gruppi di continuità.
  • procedure per i casi di disastro: Google le aveva ma il team non aveva familiarità con esse. Noi facciamo delle simulazioni, proviamo ad applicarle?
  • le procedure non erano aggiornate. E le nostre?
  • le procedure non coprivano un caso così grave nell'alimentazione elettrica. Le nostre coprono tutti i casi?
  • mantenere le procedure aggiornate, soprattutto se il sistema cambia. Aggiorniamo le procedure?
  • definire delle politiche di gestione dei casi di emergenza. Fatto?
Ma la domanda principe è: noi abbiamo le procedure di emergenza oppure facciamo finta che certi disastri non succedano mai?

Memento:
  • l'energia elettrica si può interrompere
  • l'energia elettrica può avere sbalzi
  • i dischi si rompono
  • gli alimentari si rompono
  • i controller RAID si rompono
  • gli switch, i router e i firewall si rompono o si bloccano
  • i nastri (del backup) non sono più leggibili
  • il RAID o la SAN è configurato bene? Sì? Allora togli un disco a caldo su un server di produzione se hai il coraggio!
[UPDATE]
Nell'ottica dell'importanza della continuità del servizio  :)