Jump to section

Cosa significa orchestrazione dei container?

Copia URL

Perché optare per la formazione Red Hat OpenShift? 

Sfrutta appieno il tuo potenziale con i percorsi che ti consentiranno di acquisire competenze nell'utilizzo di Red Hat OpenShift. La nostra formazione su Red Hat OpenShift® è esaustiva e pensata per persone di ogni livello di esperienza.

Definiamo orchestrazione dei container l'automazione dei processi di deployment, gestione, scalabilità e networking dei container. È una metodologia altamente funzionale per l'enterprise che deve distribuire e gestire centinaia o migliaia di host e container Linux®

L'orchestrazione dei container è applicabile a qualsiasi ambiente in cui si utilizzano i container, e risulta utile per la distribuzione della stessa applicazione su più ambienti, senza doverla riprogettare. Inserendo i microservizi nei container, è possibile gestire con semplicità i servizi, inclusi lo storage, le reti e la sicurezza

I container offrono alle applicazioni basate su microservizi un'unità di deployment dell'applicazione ideale e un ambiente di esecuzione autosufficiente. Oggi permettono di eseguire più parti di un'app in modo indipendente nei microservizi, sullo stesso hardware, con un controllo decisamente superiore sui singoli componenti e cicli di vita.

Scegliere l'orchestrazione per il ciclo di vita dei container aiuta inoltre i team DevOps a gestire più facilmente i flussi di integrazione e deployment continui (CI/CD). In combinazione con le interfacce di programmazione delle applicazioni (API) e i team DevOps, i microservizi containerizzati rappresentano la base delle applicazioni cloud native.

Attraverso l'automazione, l'orchestrazione dei container serve a semplificare la gestione di numerose attività, tra cui:

  • Provisioning e deployment
  • Configurazione e pianificazione 
  • Allocazione delle risorse
  • Disponibilità dei container 
  • Scalabilità o rimozione dei container in funzione del bilanciamento dei carichi di lavoro dell'infrastruttura
  • Bilanciamento del carico e routing del traffico 
  • Monitoraggio dell'integrità dei container
  • Configurazione delle applicazioni in base al container su cui verranno eseguite
  • Protezione costante delle interazioni tra container

Gli strumenti di orchestrazione dei container offrono un framework per la gestione dell'architettura dei microservizi e dei container su larga scala. Numerosi sono gli strumenti disponibili per la gestione del ciclo di vita dei container. Tra i più diffusi ricordiamo Kubernetes, Docker Swarm e Apache Mesos.

Kubernetes è uno strumento di orchestrazione dei container open source che fu inizialmente progettato e sviluppato dagli ingegneri di Google. Nel 2015 Google ha ceduto il controllo del progetto Kubernetes alla neonata Cloud Native Computing Foundation.

L'orchestrazione di Kubernetes consente di creare servizi applicativi che si estendono su più container, programmare tali container in un cluster e gestirne la scalabilità e l'integrità nel tempo.

Kubernetes consente di eliminare molti processi manuali necessari per il deployment e la scalabilità delle applicazioni containerizzate. Questa piattaforma semplifica e ottimizza la gestione dei cluster formati dai gruppi di host, che possono essere macchine virtuali o fisiche, che eseguono i container Linux. 

Più in generale, Kubernetes ti permette di implementare e di fare pieno affidamento su un'infrastruttura containerizzata negli ambienti di produzione.

Questi cluster possono gestire host su cloud pubblici, privati o ibridi. Ecco perché Kubernetes è la piattaforma ideale per l'hosting di applicazioni cloud native che richiedono scalabilità rapida.

Infine, semplifica il bilanciamento e la portabilità dei carichi di lavoro, perché permette di spostare le applicazioni tra diversi ambienti senza doverle riprogettare. 

I componenti principali di Kubernetes:

  • Cluster: un piano di controllo e uno o più sistemi di elaborazione, o nodi.
  • Piano di controllo: l'insieme di processi che controllano i nodi di Kubernetes. È il punto di origine di tutte le attività assegnate.
  • Kubelet: questo servizio eseguito sui nodi legge i manifesti del container e garantisce l'avvio e l'esecuzione dei container definiti.
  • Pod: un gruppo di uno o più container distribuiti su un singolo nodo. Tutti i container presenti in un pod condividono indirizzo IP, IPC, nome host e altre risorse.

Quando si utilizza uno strumento di orchestrazione dei container come Kubernetes, la configurazione di un'applicazione viene descritta tramite un file YAML o JSON. Questo file indica allo strumento di gestione della configurazione dove trovare le immagini del container, come definire una rete e dove archiviare i registri.

Durante il deployment di un nuovo container, lo strumento di gestione dei container programma automaticamente il deployment in un cluster e individua l'host corretto tenendo conto di ogni requisito o limite indicato. Lo strumento di orchestrazione gestisce quindi il ciclo di vita del container in base alle specifiche determinate nel file Compose.

I modelli Kubernetes possono essere utilizzati per gestire la configurazione, il ciclo di vita e la scalabilità delle applicazioni e dei servizi containerizzati. Sono modelli ripetibili  necessari agli sviluppatori Kubernetes per creare sistemi completi. 

L'orchestrazione dei container può essere adottata in qualsiasi ambiente in cui vengono eseguiti i container, inclusi i server on premise e gli ambienti di cloud pubblico o privato.

Le applicazioni di produzione si espandono su più container, che devono essere distribuiti su più server host. È qui che entra in gioco Red Hat®.

Red Hat OpenShift® ​​​​​è Kubernetes di livello enterprise, ma offre molti altri vantaggi. OpenShift include tutti i componenti aggiuntivi che rendono Kubernetes dinamico e utilizzabile dalle aziende, tra cui: registro, reti, telemetria, sicurezza, automazione e servizi.

E grazie a strumenti come Red Hat Service Interconnect, router e gateway offrono una comunicazione affidabile tra servizi su più cloud, dispositivi all'edge, versioni base di Kubernetes e OpenShift.

Red Hat permette agli sviluppatori di creare nuove app containerizzate, ospitarle e distribuirle nel cloud con i livelli di alta disponibilità, scalabilità, controllo e orchestrazione necessari per trasformare le idee migliori in nuove opportunità di business, in modo semplice e rapido.

Prova, acquista e gestisci software certificato in cloud pubblici, cloud privati e datacenter aziendali. Con Red Hat Marketplace si può. Offre una soluzione semplice per accedere al software che utilizzi già, creare un ambiente unificato basato su Kubernetes e distribuirlo ovunque.

Con Red Hat Marketplace puoi dedicare più tempo allo sviluppo di soluzioni innovative, senza preoccuparti di monitorare licenze, diritti e scadenze.

Keep reading

ARTICOLO

Container e VM

I container Linux e le macchine virtuali (VM) sono entrambi pacchetti di ambienti di elaborazione che combinano vari componenti IT e li isolano dal resto del sistema.

ARTICOLO

Cos'è l'orchestrazione dei container?

Definiamo orchestrazione dei container l'automazione dei processi di deployment, gestione, scalabilità e networking dei container.

ARTICOLO

Cos'è un container Linux?

Un container Linux è un insieme di processi, isolati dal resto del sistema, che esegue un'immagine distinta contenente tutti i file necessari per supportare tali processi.

Scopri di più sui container

Prodotti

Una piattaforma applicativa aziendale che offre servizi verificati per consentire la distribuzione delle app sulle infrastrutture preferite.

Risorse

Checklist

10 considerazioni sui deployment Kubernetes

Checklist

Sei considerazioni per scegliere la piattaforma Kubernetes giusta

Serie Open Answers: Cos'è Red Hat OpenShift?

Formazione

Corso di formazione gratuito

Running Containers with Red Hat Technical Overview

Corso di formazione gratuito

Containers, Kubernetes and Red Hat OpenShift Technical Overview

Corso di formazione gratuito

Developing Cloud-Native Applications with Microservices Architectures