Principali vantaggi derivati dall’utilizzo dei Container in informatica

Principali vantaggi derivati dall’utilizzo dei Container in informatica

Vantaggi nell’utilizzo dei Container

Al fine di garantire l’isolamento delle risorse tra il sistema host e i container in esecuzione su di esso, viene implementato un meccanismo del kernel noto come namespace, per fare in modo che ogni processo abbia una propria visione del sistema differente da quella degli altri processi. Le risorse sono quindi effettivamente condivise, ma ogni container vede solo le risorse di filesystem, memoria, processi e dispositivi, come se fossero interamente dedicate ad esso.

Principali vantaggi derivati dall'utilizzo dei Container in informatica

Un altro vantaggio è dato dalla possibilità di una migliore gestione delle risorse. Infatti, al fine di gestire l’accesso a tali risorse, i container utilizzano un altro modulo kernel noto come CGroups, che permette sia di limitare l’accesso a CPU, memoria e I/O per ciascun container, sia di fare in modo che essi possano accedervi con una maggiore priorità rispetto ad altri.

In seguito i container forniscono uno sviluppo semplificato, ovvero un container impacchetta l’applicazione in una singolo componente che può essere distribuita e configurato con una sola linea di comando e non bisognerà quindi preoccuparsi dell’eventuale configurazione dell’ambiente di esecuzione.

I container permettono inoltre una maggiore disponibilità, ovvero uno sviluppatore ha la possibilità di poter ospitare sul proprio computer uno svariato numero di container. Un container è infatti molto più leggero di una macchina virtuale, la quale quest’ultima può arrivare anche ad occupare diversi Gb. L’esecuzione contemporanea di più macchine virtuali è comunque possibile, ma andrebbe ad impattare pesantemente con le prestazioni del sistema. Cosa che invece non accade con i container, grazie alla loro dimensione ridotta.

I tempi di avvio dei container risultano essere più rapidi rispetto alle macchine virtuali. Infatti, dal momento che si sta virtualizzando solo il sistema operativo e non l’intera macchina, il container potrà essere avviato in un tempo che, come detto in precedenza, è molto più breve di quello necessario per avviare una virtual machine.

Infine, la portabilità e la consistenza nei container, possono essere probabilmente considerati come i vantaggi principali che questa tecnologia è in grado di offrire, grazie al suo formato che consente l’esecuzione applicativa su host differenti. Inoltre, grazie alla standardizzazione è poi facile spostare velocemente i carichi di lavoro lì dove sono eseguiti in maniera più rapida ed economica, evitando i problemi di compatibilità legati alle particolari caratteristiche delle singole piattaforme dei provider. Il vero punto di forza dei container sta proprio nella minor potenza di calcolo richiesta, nella leggerezza, nella portabilità, nell’isolamento e soprattutto nella capacità di fare a meno dell’hypervisor. Essendo poi basati su tecnologie open-source, questi rappresentano un’ottima soluzione alle richieste di maggiore agilità, risparmio e flessibilità nel contesto delle risorse informatiche che vengono utilizzate per il cloud pubblico,privato o ibrido. I container rappresentano quindi l’elemento perfetto per gestire le complessità, soprattutto perchè oltre a possedere una forte componente di automatizzazione dei suoi processi di creazione, avvio e gestione, consentono inoltre anche la riorganizzazione tramite crescenti livelli di astrazione. L’utilizzo di questa tecnologia permette poi di allontanarsi ancora di più dai vincoli hardware permettendo di avere un sistema che presenta una maggiore flessibilità, compattezza e funzionalità sia per le macchina host, sia per i fornitori di servizi e sia per gli utilizzatori finali del sistema stesso.

Precedente Che cos'è, a cosa serve e utilizzi del Container scheduler in informatica Successivo Tecnologie di gestione e amministrazione dei Container in informatica

Lascia un commento