Accedi / Registrati Account
Jump to section

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.

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. 

Gli strumenti di cui hai bisogno per Kubernetes

Red Hat OpenShift product logo

Una piattaforma container per l'ambiente enterprise basata su Kubernetes, che offre operazioni automatizzate nell'intero stack per gestire deployment di cloud ibridi.

Un servizio di gestione API ospitato e gestito, fornito come componente aggiuntivo per Red Hat OpenShift Dedicated.

Scopri gli altri vantaggi di Kubernetes