Panoramica
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.
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.
Risorse da Red Hat
Kubernetes cluster
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.
Kubernetes API e Kubernetes operator
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.
Perché scegliere le soluzioni Red Hat per gestire Kubernetes?
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.
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.