3min read

Perché amiamo Kubernetes

Kubernetes è una piattaforma di orchestrazione di container, estensibile e open source che consente agli utenti di automatizzare la distribuzione, il ridimensionamento e la gestione delle applicazioni containerizzate. In altre parole, è uno strumento che aiuta gli sviluppatori e gli amministratori di sistema a gestire e distribuire facilmente le applicazioni in un ambiente distribuito. La piattaforma vanta di un grande ecosistema in rapida crescita. Il nome Kubernetes deriva dal greco che significa timoniere o pilota. Reso open source da Google nel 2014.

By Isidoro Allegretti

Marketing and sales

2 February 2023

Un po’ di storia

Deployment tradizionale: all’inizio, tutte le organizzazioni eseguivano le applicazioni su server fisici, ciò ha causato numerosi problemi per quanto riguarda l’allocazione delle risorse, in quanto non vi era modo di definire quante risorse allocare per singole applicazioni sul server fisico. Infatti, se più applicazioni venivano eseguite sullo stesso server fisico, potevano verificarsi casi in cui un’applicazione consumava la maggior parte delle risorse costringendo le altre a non avere le prestazioni attese. Una soluzione poteva essere quella di eseguire ogni applicazione su un server fisico diverso, tuttavia, non è la scelta ideale in quanto per le organizzazioni era una pratica molto costosa dovendo mantenere numerosi server fisici.

Deployment virtualizzato: come soluzione venne introdotta la virtualizzazione. consentiva di eseguire più macchine virtuali su una singola CPU fisica, questo permetteva di isolare le applicazioni in più macchine virtuali fornendo un livello di sicurezza maggiore, dal momento che le informazioni di un’applicazione non erano accessibili da un’altra applicazione. La macchina virtuale esegue tutti i componenti, compreso il sistema operativo, sull’hardware virtualizzato

Deployment in container: I container sono simili alle macchine virtuali  ma hanno un modello d'isolamento più leggero e, condividendo il sistema operativo, sono più leggeri, portabili e facili da gestire.

Perché lo amiamo

Una delle caratteristiche principali di Kubernetes è la sua capacità di ridimensionare le applicazioni orizzontalmente, il che significa che il numero di container che eseguono un'applicazione può essere aumentato o diminuito in base al carico di lavoro corrente. Ciò consente alle applicazioni di gestire senza problemi improvvisi picchi di traffico, garantendo che rimangano sempre altamente disponibili e reattivi.

Un'altra caratteristica importante di Kubernetes è il supporto per gli aggiornamenti in sequenza, che consente agli utenti d'implementare gradualmente nuove versioni di un'applicazione senza tempi d'inattività. Ciò garantisce che le applicazioni possano essere aggiornate e mantenute con minime interruzioni per gli utenti.

Strumenti e servizi di Kubernetes

Oltre a queste funzionalità principali, Kubernetes fornisce anche una gamma di altri strumenti e servizi che possono aiutare gli utenti a gestire le loro applicazioni, come ad esempio:

  • Rilevamento dei servizi: Kubernetes fornisce supporto integrato per il rilevamento dei servizi, che consente ai container di rilevare e comunicare automaticamente tra loro. Ciò semplifica il processo di creazione e distribuzione di applicazioni distribuite, in quanto elimina la necessità di configurare manualmente gli indirizzi e le porte di rete.

  • Bilanciamento del carico: Kubernetes include un bilanciatore del carico integrato che distribuisce automaticamente il traffico in entrata su più container. Ciò garantisce che le applicazioni possano gestire un numero elevato di richieste simultanee senza essere sovraccaricate.

  • Gestione dello storage: Kubernetes consente agli utenti di collegare e gestire facilmente sistemi di storage esterni, come NAS (Network Attached Storage) o SAN (Storage Area Network), semplificando l'archiviazione e il recupero dei dati dai container.

Kubernetes è la scelta giusta?

Quando usare Kubernetes:

  • Se si è a conoscenza di come realizzare applicazioni con il giusto approccio, infatti è in grado di accelerare il lavoro.

  • Come parte di un pacchetto di servizi di un fornitore di cloud pubblico.

  • Se si cerca di spostarsi tra i providers.

Quando non usare Kubernetes:

  • Non conviene usarlo se si vuole usare come soluzione in locale nel data center.

  • Se l'applicazione non supporta l'architettura basata su microservizi.

  • Se il team non è pronto e/o non ha la competenze necesserie.

Nel complesso, Kubernetes è un potente strumento per la gestione e la distribuzione di applicazioni in un ambiente distribuito. Il suo supporto per il ridimensionamento orizzontale, gli aggiornamenti in sequenza e altre funzionalità chiave lo rendono una parte essenziale di qualsiasi moderno toolkit DevOps.

Share

About Author

Isidoro Allegretti

Marketing and sales

Appassionato di tecnologia e laureato di recente, si è unito con entusiasmo al dipartimento di marketing di Extendi. Oltre alla sua passione per la tecnologia, è un amante della natura e dell’arte.

Extendi logo

Enabling Digital Innovation

Prodotti

Language

Italiano

|

English

Copyright © 2024 · Privacy policy · Preferenze cookie

P.iva 06304560482