Container-as-a-Service

Tecnologie dei container

Lancio per lo sviluppo di software


I container rendono ancora più agili ed efficienti lo sviluppo e la predisposizione dei software nel cloud. «Container as a Service» – in breve Caas – permette alle aziende di accelerare la digitalizzazione.


Testo: Urs Binder, Immagini: Unsplash, 




Time-to-market, agilità, digitalizzazione: l’attività si sviluppa velocissimamente e prende spesso direzioni inaspettate. Occorre concepire e attuare nuovi modelli commerciali in tutta rapidità nonché gestire tempestivamente i picchi di lavoro. Ciò richiede un’organizzazione nel complesso agile, ma nello specifico anche un IT che reagisca immediatamente alle necessità dell’azienda. Non resta tempo per sviluppare i software in progetti della durata di mesi e installarli nell’infrastruttura IT produttiva dopo onerosi test.

Numerose aziende gestiscono il proprio software in un ambiente virtualizzato nel cloud. Le applicazioni Legacy beneficiano così della scalabilità dell’infrastruttura cloud. Le applicazioni cloud native basate sul web acquistano sempre più importanza sia per l’impiego interno, sia nella relazione con i clienti. Vengono sviluppate ex novo sin dal principio e possono quindi sfruttare tutti i vantaggi del cloud.


IaaS, PaaS, app Legacy e web

Tuttavia, non tutti i cloud sono uguali: i fornitori di Infrastructure as a Service (IaaS) mettono a disposizione servizi di infrastruttura quali potenza di calcolo, memoria e servizi di rete in un ambiente virtualizzato e scalabile. La responsabilità per tutto il resto, dall’installazione del sistema operativo al middleware, dalle banche dati alla gestione delle applicazioni, spetta al cliente IaaS che può però avvalersene anche sotto forma di Managed Services. IaaS è ottimale per la migrazione delle applicazioni Legacy nel cloud e offre un elevato livello di agilità e scalabilità nella predisposizione di prestazioni IT: in caso di accresciuto fabbisogno è dunque possibile aggiungere le risorse dinamicamente oppure ridurle se non sono più necessarie.

Per PaaS (Platform as a Service), invece, il fornitore mette a disposizione una piattaforma completa sulla quale è possibile sviluppare, testare e gestire le applicazioni nonché archiviare i dati. Gli utenti PaaS devono occuparsi solo di applicazioni e dati propri. Non vengono a contatto con l’infrastruttura alla base del servizio: l’ambiente PaaS fornisce in modo automatico e immediato le risorse necessarie. PaaS è particolarmente adatto per i software cloud native e copre l’intero ciclo di vita delle applicazioni secondo i principi DevOps e Continuous Integration. Con Cloud Foundry è disponibile per PaaS uno standard open source ampiamente accettato. L’offerta PaaS Application Cloud di Swisscom vanta, ad esempio, la certificazione Cloud Foundry.


I container rendono indipendenti

In riferimento allo sviluppo moderno delle applicazioni è venuta a galla una lacuna tra le infrastrutture IaaS e PaaS. Da un lato, per il modello IaaS, si auspicava una produttività più elevata degli sviluppatori e una migliore efficienza nella gestione. Dall’altro, per il modello PaaS, si evinceva la necessità di meno limitazioni e standardizzazioni.

Ecco che entra allora in gioco la tecnologia dei container che rappresenta un ulteriore passo verso la virtualizzazione. Le applicazioni vengono integrate con tutti gli accessori in pacchetti trasportabili e trasferite nel cloud. L’intera applicazione viene incapsulata in un cosiddetto «container» insieme a tutte le libraries necessarie, ad altre componenti e agli oggetti persistenti. Non sussistono più interdipendenze esterne, l’applicazione funziona autonomamente all’interno del container. Abolendo tali interdipendenze esterne, le applicazioni possono muoversi su vari sistemi, il che aumenta il grado di portabilità e la flessibilità dell’applicazione stessa.

Il software integrato dunque come pacchetto complessivo viene ora messo a disposizione senza installazione, a condizione che sulla piattaforma target esista un ambiente runtime per la rispettiva tecnologia dei container: tecnologie quali Docker, CoreOS rkt o LXC gestiscono il container e si occupano dell’isolamento tra i singoli container. Le soluzioni di orchestrazione consentono alle applicazioni – in particolare a quelle che, secondo un’architettura microservice, sono distribuite su più container comunicanti tra loro – di essere impacchettate, predisposte e gestite in modo automatizzato. Oltre a Kubernetes (Open Source), che si è imposto come standard industriale per l’orchestrazione, esistono anche altre soluzioni come, ad esempio, Pivotal Container Service o OpenShift. Molte piattaforme PaaS, tra cui Cloud Foundry, offrono nella dotazione standard il supporto per il container.

Nel container le applicazioni ottengono il risultato previsto dagli sviluppatori e non devono essere adeguate ulteriormente. Ciò riguarda sia le applicazioni dei sistemi Legacy, sia quelle cloud native che sono state sviluppate negli ambienti PaaS. I container sono pertanto interessanti soprattutto per i Software Vendor (ISV) che possono fornire ai propri clienti le applicazioni sviluppate come container, incluse tutte le interdipendenze e le richieste di persistenza.


Vantaggi per tutte le parti

La tecnologia dei container è vantaggiosa sia per gli sviluppatori di software, sia per le aziende che se ne avvalgono. Gli sviluppatori forniscono sotto forma di container nuovi software e update in maniera rapidissima. Ottengono un time-to-market migliore delle loro soluzioni e possono reagire velocemente alle esigenze della clientela. Risparmiano altresì sui costi, poiché la loro produttività aumenta. Inoltre, viene garantito che l’applicazione sia gestita così come previsto dal design, perché tutte le componenti necessarie sono contenute nel container. Anche la scalabilità e l’intercambiabilità dei container rappresentano un grande vantaggio.

Gli utenti non devono più effettuare alcuna installazione: il nuovo container si inserisce quasi da sé nell’ambiente. Le imprese risparmiano così tempo e denaro, aumentano l’efficienza aziendale e la produttività degli sviluppatori e accelerano la digitalizzazione.


Container Services di Swisscom


Swisscom offre ai clienti aziendali servizi di orchestrazione flessibili per le applicazioni containerizzate, proponendo una consulenza personale per la pianificazione e l’impiego efficiente di container.

Maggiori informazioni




Newsletter

Abbonarsi ora alla newsletter per essere aggiornati su tendenze, news del settore e indici.





Maggiori informazioni