API Kubernetes: cos'è e come funziona

Copia URL

L'API Kubernetes costituisce il front end del piano di controllo di Kubernetes e rappresenta la modalità di interazione degli utenti con i cluster Kubernetes. Il server API (interfaccia di programmazione delle applicazioni) stabilisce se una richiesta è valida e quindi procede alla sua elaborazione.

In sostanza, l'API è l'interfaccia utilizzata per gestire, creare e configurare i cluster Kubernetes, ovvero il modo con cui utenti, componenti esterni e parti del cluster comunicano tra loro.

Al centro del piano di controllo di Kubernetes si trovano il server API e l'API HTTP, che consentono di eseguire le query e di manipolare lo stato degli oggetti Kubernetes. 

Per comprendere appieno il contesto in cui si colloca l'API Kubernetes, occorre prima avere chiaro cos'è Kubernetes e a cosa serve. 

Kubernetes è una piattaforma open source per l'orchestrazione dei container. I container sono una tecnologia che consente di raggruppare e isolare le applicazioni nel loro ambiente di runtime in modo che sia facile spostare l'applicazione containerizzata tra fasi (sviluppo, produzione e così via) e ambienti (on premise, cloud pubblico, cloud privato, cloud ibrido o multicloud), preservandone tutte le funzionalità. 

In quanto piattaforma di orchestrazione dei container, Kubernetes ti consente di automatizzare molti dei processi manuali previsti dalla gestione, dal deployment e dalla scalabilità delle applicazioni containerizzate.

Raggruppando i sistemi (server fisici o virtuali noti come "nodi") che eseguono le app containerizzate, crei il cluster che potrai gestire e orchestrare con Kubernetes.

Un gruppo di container eseguito su un unico sistema o nodo e che condivide le risorse viene chiamato "pod". Il pod può anche contenere un solo container e in questo caso non si parla di "pod" ma appunto di "container"; il concetto è comunque equivalente.

Checklist: Sei considerazioni per scegliere la piattaforma Kubernetes giusta

Risorse da Red Hat

Un cluster Kubernetes è composto di due parti: il piano di controllo e il piano dell'applicazione. Nel primo troviamo l'API, ovvero il modo in cui interagiscono utente e cluster; l'utente invia le istruzioni usando kubectl, lo strumento di configurazione della riga di comando. Gli utenti finali, il cluster e i componenti esterni possono comunicare tra loro tramite l'API. 

Ogni cluster ha uno stato desiderato, ovvero uno stato che definisce le app o i carichi di lavoro che dovrebbero essere in esecuzione e altri elementi della configurazione, ad esempio le immagini utilizzate e le risorse necessarie. Lo stato desiderato di un cluster viene impostato dalla riga di comando dello strumento kubectl o usando l'API per interagire con il cluster e definire o modificare le impostazioni.

Kubernetes gestisce il cluster automaticamente, in modo da ottenere lo stato desiderato. In questo senso, Kubernetes è dichiarativo, in quanto dotato di funzioni di gestione e riparazione automatiche che si attivano per corrispondere ai parametri dei carichi di lavoro.

Un operatore Kubernetes è un metodo per la creazione di pacchetti, il deployment e la gestione di un'applicazione Kubernetes usando lo strumento kubectl. 

Un operatore Kubernetes è un controller specifico dell'applicazione, che estende le funzionalità dell'API Kubernetes consentendo di creare, configurare e gestire le istanze di applicazioni complesse per conto di un utente. Integrando informazioni specifiche sull'applicazione o sul dominio, un operatore consente a Kubernetes di automatizzare l'intero ciclo di vita del software che gestisce.

Leader nella fornitura di soluzioni per container open source e nella realizzazione di numerosi strumenti e prodotti di gestione per l'infrastruttura containerizzata, Red Hat porta Kubernetes e i container nelle aziende.

Red Hat® OpenShift® è una piattaforma open source per container di livello enterprise che rende disponibile tutto il necessario per gestire i deployment di cloud ibrido e multicloud. Supportiamo la transizione della tua azienda al cloud, ottimizzando le potenzialità dell'infrastruttura esistente. 

Grazie a una singola piattaforma integrata, gli sviluppatori possono scegliere il linguaggio, il middleware, i framework e i database che preferiscono, ottenendo più efficienza e produttività grazie all'automazione. 

Prova Red Hat OpenShift
Hub

Il blog ufficiale di Red Hat

Leggi gli articoli del blog di Red Hat per scoprire novità e consigli utili sulle nostre tecnologie, e avere aggiornamenti sul nostro ecosistema di clienti, partner e community.

Tutte le versioni di prova dei prodotti Red Hat

Grazie alle versioni di prova gratuite dei prodotti Red Hat potrai acquisire esperienza pratica, prepararti per le certificazioni o capire se il prodotto che hai scelto è giusto per le esigenze della tua organizzazione.

Continua a leggere

Microservices: i vantaggi di Red Hat OpenShift Serverless

Red Hat OpenShift Serverless estende Kubernetes per l'implementazione e la gestione di carichi di lavoro per il serverless computing.

Virtualizzazione: Container Linux e VM

Container e macchine virtuali consentono di isolare alcuni componenti IT per facilitarne l'utilizzo e la gestione. Scopri le differenze tra container e vm.

Cos'è il Kubernetes Java Client?

Il Kubernetes Java Client è una libreria client che permette di utilizzare il linguaggio di programmazione Java per interfacciarsi con Kubernetes.

Container: risorse consigliate

Articoli correlati