kubectl-ai - Asistente de IA para Kubernetes
kubectl-ai es un asistente potenciado por IA para Kubernetes (de Google Cloud) que interpreta peticiones en lenguaje natural y las traduce a operaciones kubectl. Puede explicar qué está ejecutándose, generar manifests, diagnosticar pods fallidos, y encadenar investigaciones multi-paso — ejecutándose como un agente interactivo o un comando de una sola ejecución. Es agnóstico de modelo: Gemini, OpenAI, o un modelo local vía Ollama, lo cual importa cuando preferirías no enviar detalles del cluster a una API hospedada.
El agente puede ejecutar operaciones del cluster. Revisa qué propone antes de aprobar nada destructivo, y prefiere contextos read-only cuando exploras.
Instalación
Configuración de modelo
| Backend | Setup |
|---|
| Gemini | export GEMINI_API_KEY=... (por defecto) |
| OpenAI | export OPENAI_API_KEY=... y --llm-provider=openai |
| Ollama (local) | --llm-provider=ollama --model=llama3.1 |
| Azure OpenAI | provider + endpoint env vars |
| Grok / otros | banderas de provider soportadas |
# Completamente local — ningún dato del cluster sale de la máquina
kubectl-ai --llm-provider=ollama --model=gemma3:12b
Modos de uso
| Modo | Comando |
|---|
| Interactivo | kubectl-ai (sesión de chat) |
| Una ejecución | kubectl-ai "listar pods no en estado Running" |
| Entrada con pipe | cat error.log | kubectl-ai "qué está fallando aquí?" |
| Como plugin | kubectl ai "escalar el deployment de api a 5" |
Lo que maneja bien
| Tarea | Prompt de ejemplo |
|---|
| Inspección | ”¿cuáles pods reiniciaron en la última hora?” |
| Diagnóstico | ”¿por qué el deployment de checkout no está listo?” |
| Generación de manifest | ”crear un deployment para nginx con 3 replicas y un service” |
| Explicación | ”explicar qué hace este CRD” |
| Triage multi-paso | ”encontrar pods fallidos y mostrar sus logs recientes” |
| Math de recursos | ”¿cuáles namespaces usan más CPU requests?” |
Comandos de sesión interactiva
| Comando | Hace |
|---|
models | Listar modelos disponibles |
model <name> | Cambiar modelo mid-sesión |
clear | Resetear la conversación |
exit / quit | Salir de la sesión |
| Follow-ups | Preguntar en contexto: “ahora muéstrame sus logs” |
Controles de seguridad
| Control | Propósito |
|---|
| Prompts de confirmación | Aprobar comandos antes de ejecución |
--quiet | No interactivo (scripting; usar cuidadosamente) |
| Contexto de kubeconfig read-only | Guardrail más fuerte |
| Scoping de namespace | Limitar blast radius |
| Revisar YAML generado | Antes de kubectl apply |
La medida de seguridad más confiable no es una bandera — es apuntar la herramienta a un contexto cuyas credenciales no pueden mutar producción.
Integración MCP
kubectl-ai puede operar como un servidor MCP o cliente, exponiendo operaciones de Kubernetes como herramientas a otros clientes de IA (o consumiendo herramientas MCP externas durante una sesión).
| Modo | Flag |
|---|
| Servidor MCP | --mcp-server |
| Cliente MCP | configurar servidores MCP externos |
Workflow práctico
# Triagear un servicio fallido, modelo hospedado localmente
kubectl-ai --llm-provider=ollama --model=llama3.1
> ¿por qué los pods en el namespace de payments están crashlooping?
> muéstrame las últimas 50 líneas de log del peor ofensor
> qué cambiarías en los resource limits?
Trata la salida como una sugerencia conocedora, no una autoridad — verifica la salida de kubectl subyacente que cita.
kubectl-ai vs herramientas relacionadas
| Aspecto | kubectl-ai | k9s | kubectl + docs |
|---|
| Interfaz | Lenguaje natural | TUI | Comandos manuales |
| Ayuda de diagnóstico | Sí (razonamiento) | Inspección visual | Tu propio conocimiento |
| Opción de modelo local | Sí (Ollama) | N/A | N/A |
| Mejor para | Explicar/diagnosticar, drafting YAML | Navegación rápida de cluster | Control preciso |
Complementa k9s para navegación y kubectl para operaciones exactas.
Recursos