Architettura
Ogni tool legge lo stato del cluster, costruisce un prompt e lo invia a un endpoint OpenAI-compatible (/v1/chat/completions). Tra lab ed enterprise cambia solo dove gira quell’endpoint.
┌──────────────── Lab (Mac) ────────────────┐ │ │ kubectl ──┤ k8sgpt / holmes / kubectl-ai ──HTTP──▶ Ollama :11434 (host) │ │ ▲ │ ▼ │ host.docker.internal │ kind "ai-mon" ── Prometheus/Alertmanager │ │ └── k8sgpt-operator ───────────────┘ └───────────────────────────────────────────┘
┌──────────── Enterprise offline ───────────┐ │ registry.internal (immagini, chart, modelli OCI) │ │ │ ▼ │ ns ai-llm: Ollama o vLLM ◀── NetworkPolicy ── ns tool AI │ ▲ (k8sgpt, holmes) │ └─ Prometheus/Thanos, API server (RBAC read-only) └───────────────────────────────────────────┘Due famiglie di tool
Sezione intitolata “Due famiglie di tool”| Tipo | Tool | Come usa l’LLM | Modello minimo |
|---|---|---|---|
| Analyzer + explain | k8sgpt | l’analisi è deterministica, l’LLM spiega | 3B–7B |
| Agente | HolmesGPT, kubectl-ai, kagent | l’LLM sceglie i tool (kubectl, PromQL, log) e itera | 14B+ |
La conseguenza pratica: k8sgpt dà valore anche su CPU con modelli piccoli; gli agenti richiedono modelli capaci di tool calling e, in produzione, una GPU.
Cosa esce dal cluster
Sezione intitolata “Cosa esce dal cluster”Nulla. I prompt contengono nomi di risorse, eventi, righe di log e metriche: per questo l’LLM resta nel perimetro (Mac in lab, namespace dedicato in enterprise) e nessun tool usa provider cloud.