Chaos engineering, gestione dei fallimenti nel cloud computing -1

Come recentemente confermato da Microsoft, anche i sistemi di cloud computing sono soggetti a fallimento. Chaos Engineering è la tecnica per prevenirli

Chaos engineering, gestione dei fallimenti nel cloud computing

In un recente post pubblicato sul blog ufficiale di Microfost Azure, l’azienda di Redmond ha confermato una grande verità che secondo molti interessa il cloud computing così come ogni altro sistema informatico, ossia che un possibile fallimento è sempre in agguato.  Microsoft ha scelto di abbracciare questa verità piuttosto che combatterla, sfruttando il sistema di simulazione e automazione Chaos Engineering. Ma andiamo per gradi e vediamo da cosa scaturisce l’esigenza dell’azienda di Azure di trovare una soluzione al problema.

Azure rappresenta uno dei servizi di cloud computing tra i più perfomanti e sicuri. Azure Search è il servizio per il quale Microsoft ha deciso di adottare la strategia Chaos Engineering. Si tratta di uno strumento di ricerca in grado di garantire un’elevata pertinenza per soddisfare l’utente più esigente e orientato al mobile. Il sistema consente inoltre di aggiungere in modo semplice funzionalità di ricerca avanzate ed efficaci ad un sito Web o ad un’applicazione. Lo sviluppo del suo motore è in corso da ben 16 anni (è utilizzato anche in Bing). Grazie alla sua flessibilità è possibile perfezionare in modo semplice e rapido i risultati della ricerca e creare modelli di classificazione avanzati ed efficienti per associare i risultati della ricerca agli obiettivi aziendali. Un sistema così strutturato e performante nel campo del cloud computing nasconde però delle pecche.

La stessa Microsoft non nasconde la necessità di preventivare un possibile fallimento del sistema almeno a livello teorico. è necessario quindi prendere delle precauzioni.

I sistemi per prevenire il fallimento nel cloud computing

I sistemi distribuiti sono ecosistemi complessi. Ogni componente è soggetto a fallimento e, inoltre, le sue interazioni con altri componenti influenza tutte le parti del sistema. Non è sostenibile riverificare le diverse risposte del sistema ogni qualvolta viene effettuata una modifica. Quindi come si può affrontare il problema?

A venire in soccorso alle aziende ci sono le soluzioni di Chaos Engineering. Si tratta di sistemi che automatizzano le simulazioni di fallimenti informatici aiutando a correggerli e prevenirli. Ma scopriamoli nel dettaglio.

Chaos Engineering: sistemi per prevenire i fallimenti nel cloud

Come confermato sul bog ufficiale, anche Azure Search utilizza il Chaos Engineering. Si tratta della pratica di creare infrastrutture deputate all’inserimento in maniera automatica di difetti all’interno del sistema in maniera controllata.

Uno dei player attivi sulla creazione di questi sistemi è Netfix con il suo Chaos mMonkey. Si tratta di un servizio ideale per testare, in un ambiente di prova, una minaccia potenzialmente distruttiva. L’ambiente creato da Netfix contempla un servizio di ricerca in continua evoluzione e che effettua chiamate al sistema su base regolare per verificarne la piena e costante operatività. Il servizio di Chaos Engineering agisce a intervalli. Nel momento in cui non è in funzione il sistema dovrebbe operare senza intoppi. Qualsiasi errore generato in questa fase dovrebbe essere considerato un falso positivo o falso allarme. Tutti questi ipotetici bug possono essere corretti prima di andare in produzione con un notevole vantaggio competitivo.

Nella prossima parte dell’articolo scendere nel dettaglio per scoprire come funziona esattamente questo sistema di simulazione. Continuate a seguirci!

Facci sapere cosa ne pensi!

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *