Se stai utilizzando un sistema di virtualizzazione, è molto probabile che uno dei fattori che ti ha spinto all’acquisto sia stata l’alta affidabilità.
Si tratta di una caratteristica per cui anche in presenza di un guasto i sistemi continuano a funzionare.
Se utilizzi un (solo) server fisico per eseguire un’applicazione e il server si rompe… sei in braghe di tela.
Forse hai anche sperimentato sulla tua pelle il blocco di qualche servizio o applicativo di vitale importanza e finché i sistemi non ripartono sono dolori.
Se hai un server fisico che va in crash o si blocca in maniera pesante occorre predisporre un nuovo server, reinstallarlo, recuperare un backup, ripristinarlo e rimettere in pista il servizio di produzione.
Sicuramente ore di lavoro, tempo perso, utenti e clienti con il fiato sul collo, tensione e parecchi mal di pancia.
“Perché non virtualizzi” , ti avrà detto qualche bravo commerciale: “La virtualizzazione porta l’alta affidabilità…".
Non è così!
Non è sempre e automaticamente vero che virtualizzazione = alta affidabilità.
Non sto dicendo che la virtualizzazione sia una cosa negativa, anzi, ma c’è virtualizzazione e virtualizzazione.
Infatti nel 90% dei casi e forse anche più le applicazioni girano su sistemi virtuali che hanno dei single point of failure, ossia punti di vulnerabilità.
Normalmente infatti i sistemi virtuali sono costruiti secondo lo schema 3-2-1.
Spiego subito cos'è.
Semplificando diciamo che ci sono un certo numero di macchine virtuali che girano su 3 host che poggiano su 2 switch, a cui è agganciato 1 storage.
Questo schema di infrastruttura è chiarito dall’immagine qui sotto.
Quindi il 3-2-1 di prima vuol dire: 3 host – 2 switch – 1 storage.
Guardiamo nuovamente l’immagine di prima, ma questa volta ti faccio osservare un particolare.
Lo vedi anche tu che è una piramide rovesciata?
Può una piramide essere solida e stabile se sta a testa in giù?
Se sei stato in Egitto e hai visto le piramidi, sai che ovviamente una piramide non può stare a testa in giù.
Allora perché si vede spessissimo affidare gli applicativi e i dati a delle macchine virtuali che poggiano su un'architettura intrinsecamente insicura?
Attenzione: non sto dicendo che i SAN e le NAS non possono essere ridondati, anzi sicuramente ci sono SAN e NAS con doppio controller, doppi dischi e doppio alimentatore, ma lo storage è uno solo (single array si dice tecnicamente).
E questo rappresenta un single point of failure.
Se non sei convinto che uno storage generico non è un single point of failure, perché mai dovrebbero esistere storage come HP Lefthand o Dell Equallogic?
Costano di più solo perché sono belli e famosi?
No, è hardware costoso perché elimina i single point of failure.
In un “normale” progetto di virtualizzazione lo storage, a meno di non andar su soluzioni molto costose, costituisce generalmente un single point of failure, perché è UNO.
Se tu hai qualche dubbio su quello che sto dicendo ti chiedo di fare una semplice prova.
Vai nella stanza dove ci sono le macchine di produzione e i server virtualizzati.
Individua lo storage. Avrà sicuramente due cavi di alimentazione (perché ogni elemento è ridondato): staccali entrambi!
Se sta tutto in piedi allora in effetti hai un sistema senza single point of failure.
Sono contento per te, ma vorrei sapere
i costi di acquisto, manutenzione ed espansione (ne parleremo in un altro post).
Se invece hai single point of failure… staccando l’ossigeno (cioè la corrente) allo storage capisci subito cosa vuol dire per i tuoi sistemi e le applicazioni.
Lo vedi tu stesso: il rischio di non avere l’alta affidabilità è che un singolo punto può minare l’intera infrastruttura.
Se quindi vuoi un sistema virtualizzato in alta affidabilità devi anche avere uno storage in alta affidabilità (dual array, tecnicamente parlando).
E questo costa un sacco di soldi, normalmente.
In alternativa puoi scegliere Scale Computing.