Accedi / Registrati Account

Cloud computing

Cosa significa CaaS?

Jump to section

CaaS, acronimo di Containers-as-a-Service, è un modello di servizio cloud che consente agli utenti di distribuire e gestire le applicazioni tramite tecniche di astrazione basate su container, utilizzando i datacenter on premise o il cloud.

Il provider offre il framework, o la piattaforma di orchestrazione, sulla quale i container vengono distribuiti e gestiti; l'orchestrazione consente anche l'automazione delle principali funzioni IT.

Il modello CaaS si rivela utile soprattutto per gli sviluppatori, ai quali consente di realizzare app containerizzate più sicure e scalabili. Gli utenti possono acquistare solo le risorse davvero necessarie, come capacità di scheduling, bilanciamento del carico, ecc., con un netto risparmio di denaro e maggiore efficienza.

Grazie ai container è possibile creare ambienti omogenei dove sviluppare e distribuire applicazioni cloud native eseguibili su qualsiasi sistema. 

 

I vantaggi dei container

Nella gamma dei servizi cloud, CaaS è considerato una sorta di sottoinsieme del servizio IaaS (Infrastructure-as-a-Service) e si colloca tra IaaS e PaaS (Platform-as-a service).

I container rappresentano la principale risorsa di CaaS e sono un metodo di deployment diffuso per app cloud native e microservizi. CaaS aumenta anche la portabilità tra ambienti, che siano ibridi o multicloud.

L'impiego dei container offre numerosi vantaggi.

  • Portabilità: le app sviluppate nei container contengono tutto ciò che occorre per la loro esecuzione e possono essere distribuite in diversi ambienti, inclusi i cloud pubblici e privati. Portabilità è sinonimo di flessibilità: significa infatti poter spostare facilmente i carichi di lavoro tra ambienti e provider. 
  • Scalabilità: poiché possono essere scalati in orizzontale, un utente può moltiplicare container identici nello stesso cluster, per adeguarsi alle nuove esigenze. Utilizzando ed eseguendo solo il necessario, quando necessario, i costi si riducono drasticamente. 
  • Efficienza: i container consumano risorse inferiori rispetto alle macchine virtuali (VM), perché non richiedono un sistema operativo distinto. In un singolo server è possibile eseguire più container, che richiedono meno hardware bare metal, con una conseguente riduzione dei costi.
  • Maggiore sicurezza: essendo isolati gli uni dagli altri, se un container viene compromesso, gli altri non subiscono danni. 
  • Velocità: essendo indipendente dal sistema operativo, l'avvio e l'arresto di un container è una questione di secondi. Ciò consente anche una velocità più elevata in termini operativi e di sviluppo, e un'esperienza utente più rapida e lineare.

 

Aspetti da considerare nella scelta di un provider di servizi CaaS

Un'enterprise che punta al deployment di una soluzione per container può scegliere se acquistare una piattaforma e gestire i container in autonomia, o se adottare una soluzione per container gestita da un provider (ad esempio Google, Amazon o Microsoft Azure). Qualunque sia la scelta, la natura flessibile dei container evita il vendor lock-in. 

Ecco alcune domande da porsi se si sta valutando l'adozione di un servizio CaaS:

  • I container sono una novità o un metodo acquisito da tempo in azienda? Una piattaforma per container gestita è la scelta più adatta a chi si affaccia al mondo dei container, perché consente di sperimentare e capire se l'opzione adottata è quella più adatta. 
  • È meglio scegliere un cloud pubblico o un deployment locale?
  • Il reparto IT ha la formazione e le attrezzature idonee alla gestione di una piattaforma per container?
  • Qual è il budget disponibile e che tipo di crescita si prevede per l'azienda?

 

Orchestrazione dei container con Kubernetes

Kubernetes è una piattaforma open source per l'orchestrazione dei container Linux, sviluppata in origine dagli ingegneri di Google, che consente di automatizzare lo sviluppo, la gestione e la scalabilità delle app, raggruppando in cluster i container in esecuzione su host Linux e automatizzandone la gestione. La maggior parte dei processi manuali coinvolti nel deployment e nella scalabilità delle app containerizzate viene gestita per conto dell'utente, dietro le quinte.

Kubernetes offre le funzionalità di orchestrazione e gestione necessarie per distribuire i container su larga scala, su più host server con numerosi livelli di sicurezza, gestendo l'integrità di tali container nel tempo.  

 

Red Hat OpenShift Container Platform

Red Hat® OpenShift® è una piattaforma enterprise open source per operare con i container su larga scala senza compromessi in termini di uptime delle applicazioni. Facilita l'orchestrazione dei container grazie al bilanciamento del carico delle applicazioni protette da un router, utilizza le metriche relative al traffico per la scalabilità verticale e orizzontale automatica delle app e mette a disposizione le risorse per creare le immagini dei container. 

Red Hat OpenShift permette agli sviluppatori di creare nuove app containerizzate, ospitarle e distribuirle nel cloud con i livelli di scalabilità, controllo e orchestrazione necessari. Indipendente dal cloud e supportata da tutti i principali provider cloud, consente la migrazione dei carichi di lavoro tra cloud privati, pubblici e datacenter.

Per semplificare l'acquisto e la gestione di software enterprise, Red Hat Marketplace offre il deployment automatizzato del software certificato, su qualsiasi cluster Red Hat OpenShift.

È importante ricordare che OpenShift è supportata e sviluppata dal leader dell'open source, Red Hat.

Gli strumenti essenziali per l'orchestrazione dei container

Red Hat Openshift

Sviluppa, distribuisci e gestisci i tuoi container in modo scalabile e in qualsiasi ambiente

Esegui i tuoi container Linux grazie a un sistema operativo ottimizzato e leggero.

Inizia subito con Red Hat OpenShift