Scopri tutti gli articoli e le iniziative nelle varie sezioni del portale

Più consultati


Tags

OpenStack: l'open source abilitante al DevOps Enterprise

08/11/2016


La sfida è aperta

Dopo un ventennio passato a costruire Data Center sempre più prestazionali e sempre più “energivori”, le Enterprise IT e le TELCO affrontano oggi il challenge rappresentato dall’ottenimento di minori e migliori consumi, sia elettrici come di risorse implementate, provando ad ottimizzare il carico computazionale e cercando efficienza in modelli d’esercizio più elastici e moderni.

Il Cloud Infrastructure-as-a-service (IaaS), grazie alla sua filosofia votata alla virtualizzazione, è stato il primo passo verso data center più sostenibili, un passo oggi seguito da nuovi paradigmi ancora più efficaci.

Oggi non è solo l’infrastruttura ad esser oggetto di ottimizzazione, ma i servizi stessi in essa ospitati, nonché i paradigmi operativi che tutto ciò tengono assieme. Tra questi, il DevOps, è un modello che prevede un forte avvicinamento, per non dire commistione, tra i settori Develop e quello Operations: gli sviluppatori diventano, in parte, timonieri della barca sulla quale il proprio codice viene trasportato ed erogato, rompendo quella barriera sempre esistita tra i due settori, garantendo così una maggiore efficienza operativa, un’ottimizzazione del time to market, nonché un accorciamento delle tempistiche di troubleshooting.

Altro modello operativo certamente rivolto all’efficienza è quello dei  microservices, ovvero - usando una delle definizioni più conosciute di Martin Fowler - un “approccio allo sviluppo di una singola applicazione come insieme di piccoli servizi, ciascuno dei quali viene eseguito da un proprio processo e comunica con un meccanismo snello, spesso una HTTP API”.

OpenStack

Nel 2010 la NASA avvia, in collaborazione con Rackspace, un progetto denominato OpenStack, volto alla realizzazione di una soluzione non solo capace di offrire in chiave open source i benefici della virtualizzazione Cloud IaaS, ma anche capace di rendersi abilitante all’adozione di logiche d’esercizio a microservices e, in definitiva, del paradigma DevOps, con tutto quanto ne consegue.

Osservando da vicino OpenStack, queste sue capabilities saltano all’occhio: sebbene non esista alcun impedimento nell’implementare OpenStack come semplice virtualizzatore (al pari delle soluzione VMWare, Microsoft o di altri vendor) – perdendo, va da sé, i vantaggi di cui sopra – esso rende al meglio quando eroga le risorse infrastrutturali messegli a disposizione  sfruttando la segregazione offerta dai tenant e applicando le logiche headless e stateless per le virtual machine che rappresentano il workload.



tenant sono un concetto non nuovo ma certamente funzionale allo scopo: si tratta infatti di raggruppamenti logici ad alto isolamento che rappresentano, per le risorse virtualizzate, il loro proprio contesto d’esercizio. Virtual machine appartenenti a un dato tenant “vivono” in tale ambito senza la percezione del mondo operativo circostante. Questi host sono headless, ovvero vengono erogati senza fornire alcun tipo di accesso interattivo: tali risorse espongono solo degli endpoint prefissati presso i quali coloro che sviluppano potranno pubblicare i contenuti (binari, database, configurazioni ecc.), ma senza mai accedere alla macchina vera e propria. Non solo: le virtual machine saranno anche stateless, ovvero incapaci di conservare uno stato permanente di storage: tutti i contenuti saranno pubblicati su uno strato storage offerto e garantito come servizio all’interno dell’infrastruttura stessa, in modalità a oggetti piuttosto che a blocchi.

Una parola chiave: elasticità

Risorse così concepite abilitano l’introduzione di meccanismi automatici di auto-scaling orizzontale: partendo da un minimo set di risorse hardware virtualizzate, l’infrastruttura debitamente configurata sarà in grado di aggiungere, a fronte di un’accresciuta richiesta computazionale, nuove macchine a supporto dell’esigenza, così come di rimuoverle in presenza di uno scarico. Il tenant, in pratica un pool, rappresenta in questo senso l’ultimo grado di astrazione al quale chi vi si affaccia, lo sviluppatore, ha accesso: l’applicazione dello sviluppatore sarà garantita quale responsive sotto grandi , anche dinamici; non assorbirà più risorse del necessario, non necessiterà di grande manutenzione e sarà, almeno per quanto riguarda i server che la erogano, sicura.


OpenStack è oggi disponibile a partire dalla distribuzione open source,  nonché offerto da svariati player del calibro di HPE, RedHat ed altri con servizi professionali a supporto.

OpenStack presenta, ad ogni major release (ogni sei mesi circa) un marcato avanzamento sia in termini di perfezionamento dei servizi già esistenti, sia in termini di nuovi servizi disponibili: avviato nel 2010 con un set iniziale di soli due servizi (il modulo compute, Nova, e quello storage, Swift), oggi ne conta ben diciotto, tutti servizi che offrono ognuno componenti e funzionalità sempre più orientate all’efficienza che la sfida di questi anni ci impone, quotidianamente, di vincere.


Alessandro Di Cicco

Cloud Architect

IT Telecom