Con l'adozione diffusa dei container da parte delle organizzazioni, il software di gestione incentrato sui container Kubernetes è diventato lo standard per eccellenza per il deployment e il funzionamento delle applicazioni containerizzate. Kubernetes, parte integrante del crescente ecosistema di Google Cloud, è stato sviluppato inizialmente da Google e rilasciato come progetto open source nel 2014. Kubernetes sfrutta i 15 anni di esperienza di Google nell'esecuzione dei carichi di lavoro containerizzati e i preziosi contributi della community open source. Ispirato dal sistema interno di gestione dei cluster di Google, Borg, Kubernetes semplifica tutte le attività associate al deployment e alla gestione delle applicazioni. Consentendo l'orchestrazione automatizzata dei container, Kubernetes aumenta l'affidabilità e riduce l'impegno di tempo e le risorse necessari per eseguire le operazioni quotidiane.
Kubernetes (talvolta abbreviato in K8s, con l'8 che indica il numero di lettere tra la "K" e la "s") è un sistema open source per eseguire il deployment, scalare e gestire applicazioni containerizzate ovunque.
Kubernetes automatizza le attività operative di gestione dei container e include comandi integrati per il deployment delle applicazioni, l'implementazione di modifiche alle applicazioni, lo scale up e lo scale down delle applicazioni per adattarle a esigenze in continuo cambiamento, il monitoraggio delle applicazioni e altro ancora, rendendo più facile la gestione delle applicazioni.
Kubernetes aiuta a semplificare la gestione man mano che le applicazioni vengono scalate su più container e server. Esegue l'orchestrazione dei deployment con un'API open source, raggruppando i container in pod per la scalabilità in base alla domanda e alla disponibilità delle risorse. Kubernetes automatizza inoltre la Service Discovery, il bilanciamento del carico e l'allocazione delle risorse, e monitora lo stato per consentire l'auto-riparazione tramite il riavvio o la replica dei container.
Per gli sviluppatori aziendali, ecco una spiegazione dettagliata di come funziona Kubernetes:
Operazioni automatizzate
Kubernetes dispone di comandi incorporati per gestire molte delle attività "pesanti" associate alla gestione delle applicazioni, consentendo di automatizzare le operazioni quotidiane. Puoi assicurarti che le applicazioni funzionino sempre secondo le aspettative.
Astrazione dell'infrastruttura
Una volta installato, Kubernetes gestisce il calcolo, il networking e l'archiviazione per conto dei tuoi carichi di lavoro. In questo modo gli sviluppatori possono concentrarsi sulle applicazioni senza preoccuparsi dell'ambiente sottostante.
Monitoraggio dell'integrità dei servizi
Kubernetes esegue continuamente controlli di integrità dei servizi, riavviando i container con errori o bloccati e rendendo i servizi disponibili agli utenti solo dopo aver verificato che funzionino correttamente.
Utilizzo ottimizzato delle risorse
Kubernetes ottimizza l'utilizzo delle risorse pacchettizzando in modo efficiente i container sui nodi in base ai loro requisiti. Questo, a sua volta, aiuta a ridurre lo spreco di risorse e a diminuire i costi dell'infrastruttura.
Gestione semplificata delle applicazioni
Semplifica la gestione delle applicazioni con Kubernetes. Kubernetes offre un approccio uniforme al deployment, all'aggiornamento e alla gestione di applicazioni di diversa complessità.
Portabilità migliorata
Kubernetes è una piattaforma open source che viene eseguita in modo coerente in ambienti diversi, dai data center on-premise ai cloud pubblici, offrendo alle aziende flessibilità e portabilità.
Anche se spesso vengono interpretati erroneamente come due alternative tra cui dover scegliere, Kubernetes e Docker sono tecnologie diverse, ma complementari, per l'esecuzione di applicazioni containerizzate.
Docker consente di inserire quanto necessario per l'esecuzione dell'applicazione in un "contenitore" che può essere archiviato e aperto quando e dove necessario. Dopo aver iniziato a inserire le applicazioni nel contenitore, occorre trovare un modo per gestirle: è qui che entra in gioco Kubernetes.
Kubernetes è una parola greca che in italiano significa "capitano". Così come il capitano ha la responsabilità di assicurare la sicurezza della nave durante gli spostamenti in mare, Kubernetes ha la responsabilità di garantire il trasporto e la consegna in totale sicurezza dei contenitori nei "luoghi" in cui possono essere utilizzati.
Kubernetes viene utilizzato per creare applicazioni di cui puoi eseguire facilmente il deployment e la gestione, ovunque ti trovi. Quando disponibile come servizio gestito, Kubernetes offre una gamma di soluzioni per soddisfare le tue esigenze. Ecco alcuni casi d'uso comuni.
Kubernetes aiuta a creare app cloud-native basate su microservizi. Supporta anche la containerizzazione delle app esistenti, diventando così la base per la modernizzazione delle applicazioni e permettendoti di sviluppare le app più rapidamente.
Kubernetes è creato per essere utilizzato ovunque, permettendoti di eseguire le tue applicazioni nei deployment sul sito e in quelli su cloud pubblico, nonché in quelli ibridi intermedi. In questo modo puoi eseguire le tue applicazioni dove necessario.
Kubernetes può regolare automaticamente le dimensioni di un cluster necessario per eseguire un servizio, consentendoti di fare automaticamente lo scale up e lo scale down delle applicazioni, in base alla domanda, ed eseguirle in modo efficiente.
Esplora queste domande frequenti su Kubernetes
Un cluster Kubernetes è costituito da nodi (macchine virtuali o fisiche) che eseguono applicazioni containerizzate orchestrate da Kubernetes.
Un pod Kubernetes, la più piccola unità di cui è possibile eseguire il deployment, ospita uno o più container, che rappresentano una singola istanza del processo in esecuzione.
Un deployment Kubernetes garantisce lo stato desiderato dell'applicazione gestendo le repliche e gli aggiornamenti senza interruzioni.
Un servizio Kubernetes è un oggetto Kubernetes che fornisce un indirizzo IP stabile e un nome DNS per l'applicazione, consentendo ad altre applicazioni di accedervi.
Puoi scalare la tua applicazione aggiornando il numero di repliche nella configurazione del deployment. Kubernetes creerà o rimuoverà automaticamente i pod in modo che corrispondano alla scala desiderata.
Inizia a creare su Google Cloud con 300 $ di crediti gratuiti e oltre 20 prodotti Always Free.