Non esiste un percorso ideale per l'implementazione di OpenStack nella tua azienda, ma ci sono principi generali che possono guidarti verso un'implementazione di successo.
Uno dei vantaggi del software open source, come OpenStack, è la possibilità di scaricarlo, provarlo in azione e ottenere un'idea pratica di esso senza dover interagire a lungo con i fornitori o senza necessità di complessi accordi interni su un progetto pilota tra la tua azienda e il fornitore.
Ma cosa succede quando arriva il momento di fare qualcosa di più che semplicemente provare il progetto? Come preparerai un sistema distribuito dal codice sorgente all'ambiente produttivo? Come puoi superare gli ostacoli organizzativi nell'implementazione di nuove e trasformative tecnologie? Da dove iniziare? Cosa farai dopo?
C'è molto da apprendere dall'esperienza di chi ha già distribuito OpenStack. Per comprendere meglio le dinamiche dell'adozione di OpenStack, ho parlato con diverse squadre che lo hanno presentato con successo alle loro aziende.
MercadoLibre: il dettame della necessità e la corsa più veloce di un cervo.
Se la necessità è abbastanza forte, allora implementare un'infrastruttura cloud flessibile può essere quasi semplice come "costruirla e loro verranno". In molti modi, questa è l'esperienza che hanno vissuto Alejandro Comisario, Maximiliano Venesio e Leandro Reox nella loro azienda MercadoLibre, la più grande azienda di commercio elettronico in America Latina e l'ottava al mondo.
Nel 2011, quando il dipartimento di sviluppo dell'azienda iniziò il percorso di decomposizione del suo allora sistema monolitico in una piattaforma di servizi debolmente accoppiati, connessi tramite API, il team infrastruttura si trovò di fronte a un aumento brusco delle richieste alla loro piccola squadra, che dovevano gestire.
"Il cambiamento è avvenuto molto rapidamente", dice Alejandro Comisario, CTO dei servizi cloud di MercadoLibre. "Ci siamo resi conto, da un momento all'altro, che non potevamo continuare a lavorare a quel ritmo senza l'aiuto di un qualche sistema."
Alejandro Comisario, Maximiliano Venesio e Leandro Reox - l'intero team di MercadoLibre all'epoca - iniziarono a cercare tecnologie che potessero aiutarli ad eliminare i passaggi manuali necessari per fornire infrastruttura ai loro sviluppatori.
Il team si è posto obiettivi più complessi, formulando scopi non solo per compiti immediati, ma anche per gli obiettivi dell'intera azienda: ridurre il tempo di consegna delle macchine virtuali pronte per un ambiente produttivo agli utenti da 2 ore a 10 secondi ed escludere da questo processo l'intervento umano.
Quando hanno trovato OpenStack, è diventato chiaro che era esattamente ciò che stavano cercando. La cultura in rapida evoluzione di MercadoLibre ha permesso al team di muoversi rapidamente nella creazione di un ambiente OpenStack, nonostante la relativa immaturità del progetto all'epoca.
— È risultato evidente che l'approccio di OpenStack — ricerca, immersione nel codice e testing delle funzionalità e della scalabilità — corrispondeva all'approccio di MercadoLibre, — afferma Leandro Reox. — Siamo stati in grado di immergerci subito nel progetto, definire un insieme di test per la nostra installazione di OpenStack e iniziare i test.
I loro test iniziali sul secondo rilascio di OpenStack hanno rivelato alcuni problemi che impedivano loro di andare in produzione, ma il passaggio dal rilascio di Bexar a quello di Cactus è avvenuto proprio al momento giusto. Ulteriori test sul rilascio di Cactus hanno confermato che il cloud era pronto per l'uso commerciale.
Il lancio in produzione e la comprensione da parte degli sviluppatori della possibilità di ottenere infrastrutture così rapidamente come gli sviluppatori erano in grado di consumarle ha determinato il successo dell'implementazione.
— Tutta l'azienda desiderava un sistema simile e le funzionalità che offre, — osserva Maximiliano Venesio, ingegnere senior per l'infrastruttura in MercadoLibre.
Tuttavia, il team è stato cauto nella gestione delle aspettative degli sviluppatori. Dovevano assicurarsi che gli sviluppatori comprendessero che le applicazioni esistenti non sarebbero potute funzionare sul nuovo cloud privato senza modifiche.
— Dovevamo assicurarci che i nostri sviluppatori fossero pronti a scrivere applicazioni stateless per il cloud, — ha dichiarato Alejandro Comisario. — Questo è stato un enorme cambiamento culturale per loro. In alcuni casi abbiamo dovuto insegnare agli sviluppatori che conservare i loro dati nell'istanza non era sufficiente. Gli sviluppatori dovevano riadattare il loro modo di pensare.
Il team ha prestato attenzione alla formazione degli sviluppatori, raccomandando le migliori pratiche per creare applicazioni pronte per il cloud. Inviavano e-mail, organizzavano pranzi con formazione informale e corsi di formazione formali, oltre a garantire una documentazione adeguata per l'ambiente cloud. Il risultato dei loro sforzi è questo: gli sviluppatori di MercadoLibre ora sviluppano applicazioni per il cloud con la stessa facilità con cui sviluppavano applicazioni tradizionali per ambienti virtualizzati.
L'automazione che sono riusciti a raggiungere con il cloud privato si è ripagata, consentendo a MercadoLibre di espandere rapidamente le proprie infrastrutture. Ciò che era iniziato come un team di infrastruttura di tre persone a supporto di 250 sviluppatori, 100 server e 1000 macchine virtuali, è cresciuto in un team di 10 persone a supporto di oltre 500 sviluppatori, 2000 server e 12.000 VM.
Workday: Creazione di un business case per OpenStack
Per il team di Workday, che opera nel settore SaaS, la decisione di adottare OpenStack è stata più strategica che operativa.
Il percorso di Workday verso l'implementazione del cloud privato è iniziato nel 2013, quando la direzione aziendale ha accettato di investire in un'ampia iniziativa di data center definito dal software (SDDC). La speranza di questa iniziativa era di ottenere una maggiore automazione, favorire l'innovazione e migliorare l'efficienza dei data center.
Workday ha creato la propria visione del cloud privato tra i gruppi di infrastruttura, ingegneria e operazioni dell'azienda, raggiungendo un accordo per avviare un'iniziativa di ricerca. Workday ha assunto Carmine Remi come direttore delle soluzioni cloud con l'obiettivo di guidare il cambiamento.
Il primo compito di Rimi in Workday è stato espandere il business case iniziale a gran parte dell'azienda.
Il fulcro del business case era l'aumento della flessibilità nell'utilizzo dello SDDC. Questa maggiore flessibilità avrebbe aiutato l'azienda a realizzare le proprie aspirazioni di distribuzione continua del software con zero tempi di inattività. L'API per lo SDDC doveva consentire ai gruppi di sviluppo di applicazioni e piattaforme di Workday di innovare in modi precedentemente non disponibili.
L'efficacia delle attrezzature è stata presa in considerazione anche nel business case. Workday si pone obiettivi ambiziosi per aumentare il livello di utilizzo delle attrezzature esistenti e delle risorse del centro dati.
— Abbiamo scoperto che abbiamo già una tecnologia di middleware in grado di sfruttare i vantaggi del cloud privato. Questo software middleware è già stato utilizzato per il deployment di ambienti dev/test nei cloud pubblici. Con il cloud privato, potremmo estendere questo software per creare una soluzione di cloud ibrido. Utilizzando una strategia di cloud ibrido, Workday può migrare carichi di lavoro tra cloud pubblici e privati, massimizzando l'utilizzo delle attrezzature e garantendo risparmi per l'azienda.
Infine, nella strategia cloud di Rimi è stato notato che i carichi di lavoro stateless semplici e il loro scaling orizzontale consentiranno a Workday di iniziare a utilizzare il proprio cloud privato con un rischio minore e di raggiungere la maturità delle operazioni cloud in modo naturale.
— Possiamo dare il via al piano previsto e imparare a gestire il nuovo cloud con un carico di lavoro ridotto, simile ai tradizionali R&D che consentono di sperimentare in condizioni sicure, — ha suggerito Rimi.
Con un solido business case, Rimi ha valutato diverse piattaforme cloud private conosciute, tra cui OpenStack, secondo un ampio insieme di criteri di valutazione che includevano l'apertura di ciascuna piattaforma, la facilità d'uso, la flessibilità, l'affidabilità, la resilienza, la disponibilità di supporto e comunità, e il potenziale. Sulla base dei risultati della sua valutazione, Rimi e il suo team hanno scelto OpenStack e hanno iniziato a creare un cloud privato pronto per l'uso commerciale.
Dopo aver implementato con successo il suo primo cloud OpenStack funzionante, Workday continua a puntare a un'adozione più ampia del nuovo ambiente SDDC. Per raggiungere questo obiettivo, Rimi adotta un approccio multifacettato incentrato su:
- concentrazione sui carichi di lavoro cloud-ready, in particolare sulle applicazioni stateless nel portfolio
- definizione dei criteri e del processo di migrazione
- fissazione degli obiettivi per lo sviluppo per la migrazione di queste applicazioni
- comunicazione e formazione di gruppi di utenti interessati a Workday utilizzando riunioni, dimostrazioni, video e corsi di OpenStack
— La nostra nuvola supporta carichi di lavoro diversi, alcuni in produzione, altri in preparazione per l'uso commerciale. Alla fine, vogliamo migrare tutti i carichi di lavoro e mi aspetto che raggiungiamo un punto di svolta in cui vedremo un'improvvisa ondata di attività. Stiamo preparando il sistema a pezzi ogni giorno per essere in grado di gestire questo livello di attività quando verrà il momento.
BestBuy: infrangendo le regole
La catena di vendita al dettaglio di elettronica BestBuy ha un fatturato annuale di 43 miliardi di dollari e 140.000 dipendenti, risultando così la più grande tra le aziende elencate nell'articolo. E quindi, mentre i processi utilizzati dal team infrastrutturale di bestbuy.com per preparare un cloud privato basato su OpenStack non sono unici, la flessibilità con cui hanno applicato questi processi è impressionante.
Per implementare il suo primo cloud OpenStack in BestBuy, il direttore delle soluzioni web Steve Eastham e l'architetto capo Joel Crabb hanno dovuto fare affidamento su un approccio creativo per superare molte barriere che si sono presentate.
L'iniziativa BestBuy OpenStack è nata all'inizio del 2011 da sforzi per comprendere i vari processi aziendali legati al rilascio del sito di e-commerce bestbuy.com. Questi sforzi hanno rivelato una significativa inefficienza nei processi di assicurazione della qualità. Il processo di controllo qualità comportava costi significativi per ogni grande rilascio del sito, che avveniva da due a quattro volte all'anno. Una parte considerevole di questi costi era legata alla configurazione manuale dell'ambiente, alla risoluzione delle discrepanze e alla gestione delle problematiche legate alla disponibilità delle risorse.
Per affrontare queste problematiche, è stata proposta un'iniziativa di "controllo qualità on demand" per bestbuy.com, sotto la direzione di Steve Eastham e Joel Crabb, mirante a identificare e risolvere i colli di bottiglia nel processo di controllo qualità di bestbuy.com. Tra le principali raccomandazioni di questo progetto vi erano l'automazione dei processi di controllo qualità e la fornitura di strumenti di self-service ai gruppi di utenti.
E sebbene Steve Eastham e Joel Crabb siano riusciti a utilizzare la prospettiva di costi molto significativi per il controllo della qualità per giustificare gli investimenti in un cloud privato, si sono rapidamente trovati di fronte a un problema: sebbene l'approvazione per il progetto fosse stata ottenuta, non c'erano fondi per il progetto. Non c'era budget per l'acquisto di attrezzature per il progetto.
La necessità è la madre dell'invenzione, e il team ha adottato un nuovo approccio al finanziamento del cloud: hanno trasferito il budget per due sviluppatori da un'altra squadra che aveva un budget per l'attrezzatura.
Con il budget ottenuto intendevano acquistare l'attrezzatura necessaria per il progetto. Contattando la HP, il loro fornitore di attrezzature dell'epoca, si sono messi a ottimizzare l'offerta. Grazie a trattative accurate e a una riduzione ragionevole delle esigenze di attrezzatura, sono riusciti a dimezzare i costi per l'attrezzatura.
Nella stessa ottica, Steve Eastham e Joel Crabb hanno concluso un accordo con il team di rete dell'azienda, sfruttando la capacità esistente del nucleo attuale e risparmiando sui costi tipici associati all'acquisto di nuove attrezzature di rete.
— Eravamo su un terreno piuttosto scivoloso, — ha detto Steve Eastham. — Non era una pratica comune in BestBuy né allora né ora. Agivamo sotto il livello dei radar. Avremmo potuto ricevere un richiamo, ma siamo riusciti ad evitarlo.
Superare le difficoltà finanziarie era solo il primo di molti ostacoli. In quel momento, le possibilità di trovare esperti di OpenStack per il progetto erano praticamente nulle. Pertanto, hanno dovuto costruire un team da zero combinando sviluppatori Java tradizionali e amministratori di sistema.
— Li abbiamo semplicemente messi in una stanza e detto: «Scoprite come lavorare con questo sistema», — racconta Joel Crabb. — Uno degli sviluppatori Java ci diceva: «È una follia, non potete farlo. Non so di cosa stiate parlando.»
Dobbiamo combinare diversi stili di due tipi di team per raggiungere il risultato desiderato: un processo di sviluppo gestito tramite software, testabile e in fasi.
La motivazione del team nelle prime fasi del progetto ha permesso di ottenere risultati impressionanti. Sono riusciti a sostituire rapidamente l'ambiente di sviluppo obsoleto, ridurre il numero di ambienti di controllo qualità (QA) e, nel processo di trasformazione, hanno trovato nuovi modi di lavorare e velocità nella consegna delle applicazioni.
Il loro successo ha offerto buone opportunità per chiedere risorse aggiuntive per la loro iniziativa di cloud privato. E questa volta hanno avuto il supporto a livello di alta direzione dell'azienda.
Steve Eastham e Joel Crabb hanno ricevuto il finanziamento necessario per assumere personale aggiuntivo e cinque nuove unità di equipaggiamento. Il primo progetto cloud in questo gruppo è stato l'ambiente OpenStack, che avvia i cluster Hadoop per l'analisi. Ed è già in uso commerciale.
Conclusione
Nei racconti di MercadoLibre, Workday e Best Buy ci sono una serie di principi che possono guidarvi verso un'implementazione di successo di OpenStack: essere aperti alle esigenze di sviluppatori, business e altri potenziali utenti; lavorare all'interno dei processi stabiliti dalla vostra azienda; collaborare con altre organizzazioni; ed essere disposti a operare al di fuori delle regole quando necessario. Tutto ciò rappresenta abilità trasversali preziose da avere insieme al cloud OpenStack.
Non esiste un percorso ideale per implementare OpenStack nella vostra azienda: il percorso di implementazione dipende da molti fattori legati sia a voi che alla vostra azienda e alla situazione in cui vi trovate.
E anche se questo fatto può confondere i sostenitori di OpenStack, che si chiedono come implementare il loro primo progetto, resta comunque una prospettiva positiva. Significa che non ci sono limiti a quanto lontano potete arrivare con OpenStack. Ciò che potete raggiungere è limitato solo dalla vostra creatività e ingegnosità.
Fonte: habr.com
