AI generativa per Kubernetes

AI generativa per Kubernetes

La risoluzione dei problemi negli ambienti Kubernetes può essere un compito arduo. Abbiamo ad esempio parlato dei vantaggi e svantaggi di Kubernetes in una altro articolo QUI. Se solo potessimo avere un consulente di intelligenza artificiale “magico” che potesse raccogliere tutti i dati su ciò che accade nel sistema e dirci cosa c’è che non va e persino come risolverlo. Non sarebbe fantastico?

K8sGPT è un giovane progetto open source che usa l’intelligenza artificiale generativa per dare a tutti i “superpoteri” di Kubernetes. Ha da poco compiuto un anno e ora fa parte della Cloud Native Computing Foundation (CNCF).

Questo progetto open source va oltre l’hype della Gen AI e ci avvicina alla diagnosi e al triage dei problemi in parole povere? Thomas Schuetz è il core maintainer di K8sGPT. Thomas è anche Principal Cloud Architect presso Kapsch TrafficCom AG e insegna presso l’Austrian University of Applied Sciences, concentrandosi sulle tecnologie cloud-native.

La promessa dell’intelligenza artificiale generativa per Kubernetes
Le sfide che gli amministratori di Kubernetes devono affrontare sono molteplici e spesso ricorrenti. Semplici configurazioni errate come account di servizio mancanti o servizi senza endpoint potrebbero portare a distribuzioni non riuscite che possono essere l’incubo di DevOps e SRE (Site Reliability Engineering).

Tradizionalmente, gli SRE intraprendono una ricerca manuale attraverso log, eventi e file di configurazione, tentando di individuare la causa principale del problema. Tuttavia, questo processo può richiedere molto tempo ed essere soggetto a errori, spesso causando ritardi nella risoluzione e interruzioni operative. Questi sono stati i problemi che hanno portato Alex Jones a creare K8sGPT, in seguito affiancato da Thomas come secondo manutentore.

Come funziona K8sGPT – AI generativa per Kubernetes
K8sGPT funziona in modo molto simile a un SRE esperto, monitorando costantemente i cluster Kubernetes per anomalie e problemi. Analizza i dati rilevanti, identifica potenziali problemi e sfrutta motori AI esterni per fornire approfondimenti e raccomandazioni.

Il viaggio inizia con la raccolta dati, dove K8sGPT raccoglie selettivamente informazioni pertinenti dai cluster Kubernetes. Contrariamente a quanto si pensa, K8sGPT non inonda indiscriminatamente i provider di IA con dati cluster grezzi. Al contrario, adotta un approccio mirato, filtrando le informazioni estranee e rendendo anonimi i dati raccolti per preservare la privacy e la sicurezza.

Una volta raccolti i dati rilevanti, K8sGPT sfrutta algoritmi AI per analizzare e interpretare le informazioni, più o meno nello stesso modo in cui farebbe un SRE. Ad esempio, identificherebbe problemi come pod non in esecuzione e controllerà il flusso di eventi per potenziali cause come un set di repliche in cui manca un account di servizio. Con ciò in atto, un modello AI generativo può essere sollecitato a spiegare il problema.

A volte, queste intuizioni possono sorprendere persino gli SRE esperti, come gli stessi Alex e Thomas: “A un certo punto abbiamo scritto un analizzatore per alcune risorse e Alex lo ha eseguito e ha detto sì, questo non può essere corretto, ma alla fine era corretto”.


Portare il fornitore di intelligenza artificiale di generazione
K8sGPT si collega a una varietà di provider AI per la sua analisi. Attualmente K8s fornisce un’integrazione out of the box con OpenAI, Azure, Cohere, Amazon Bedrock, Amazon Sagemaker, Google Gemini e Vertex.

È importante sottolineare che K8sGPT rende anonime prima le informazioni come i nomi dei pod, prima di inviare il prompt. K8sGPT consente inoltre la connessione a modelli locali, il che si rivela molto utile per le organizzazioni che non possono inviare le proprie informazioni a provider esterni.

Il fulcro della funzionalità di K8sGPT risiede nella sua capacità di generare riassunti descrittivi dei problemi e soluzioni pragmatiche. Thomas sottolinea come l’attenzione del progetto si estenda oltre gli scenari di problemi rudimentali, evolvendosi per comprendere una vasta gamma di problemi, tra cui integrazioni esterne.

K8sGPT è nato come una CLI che veniva attivata per fornire queste diagnosi in modo una tantum. Quindi, il progetto si è evoluto in un assistente SRE automatizzato, aggiungendo un operatore Kubernetes che viene eseguito nel cluster, che cerca continuamente i problemi e li stampa in una risorsa.
La supervisione continua non solo evita all’amministratore di chiamare la CLI in caso di un problema, ma può rilevare in modo proattivo quando le cose iniziano a uscire dalla norma, prima che l’amministratore o l’utente finale noti il ​​problema.

Crescente entusiasmo e adozione
L’adozione del progetto K8sGPT sottolinea la sua crescente importanza nell’ecosistema Kubernetes. Thomas ha raccontato come una o due settimane dopo il suo lancio, il progetto aveva già circa 1.000 stelle sul repository GitHub e il primo fork del progetto è stato fatto il primo giorno dopo il rilascio. Ad oggi, il progetto ha già circa 5.000 stelle GitHub e oltre 500 fork.

Andando oltre la classifica a stelle, aziende come Kubermatic, SpectroCloud e Nethopper hanno accolto con entusiasmo le capacità di K8sGPT, integrandole nella loro infrastruttura per semplificare i processi di risoluzione dei problemi. Thomas invita altri adottanti a contattarli e condividere il loro caso d’uso, in modo che i responsabili del progetto possano orientare meglio il progetto in base all’utilizzo e supportarne la maturazione all’interno del CNCF.

Anche il team di manutenzione è cresciuto bene. Thomas ha detto che il progetto ora ha tra 30 e 40 collaboratori. Ha anche sottolineato che, a differenza di molti progetti popolari, non c’è nessuna azienda dietro questo progetto, e nessun business plan dietro.

K8sGPT si unisce al CNCF Sandbox
K8sGPT ha appena compiuto un anno, segnando un significativo percorso di innovazione e crescita. Il culmine di questo percorso è segnato dalla recente accettazione di K8sGPT nel sandbox CNCF. Questa pietra miliare non solo convalida la competenza tecnica del progetto, ma apre anche le porte a una maggiore collaborazione e adozione.

Thomas ha condiviso un’interessante roadmap per il progetto. L’attenzione principale è rivolta alle integrazioni nelle infrastrutture dei provider cloud come Amazon, Google e così via per trovare problemi più a livello di infrastruttura. Ha anche elencato la scansione di CRD e l’integrazione con strumenti aggiuntivi nel panorama dell’IA.

Mentre al momento si sta integrando con Slack per l’invio di notifiche downstream, Thomas ha menzionato la possibilità di valutare l’integrazione con altri target come MS Teams e Mattermost.

(fonte)

Innovaformazione, scuola informatica specialistica promuove la cultura DevOps e l’utilizzo di Kubernetes in maniera consapevole. Nell’offerta formativa rivolta alle aziende trovate i seguenti corsi:

Corso Microservices Docker e Kubernetes

Corso Kubernetes Fundamental

Corso GitLab

Tutti i Corsi Microservices

INFO: info@innovaformazione.net – tel. 3471012275 (Dario Carrassi)

Vuoi essere ricontattato? Lasciaci il tuo numero telefonico e la tua email, ti richiameremo nelle 24h:

    Ti potrebbe interessare

    Articoli correlati