Entrada

Despliega Agentes de IA en Kubernetes en 3 Min con Kagent.

Despliega Agentes de IA en Kubernetes en 3 Min con Kagent.

Backstory

Ser testigo del avance acelerado de la IA en la ingeniería de software (y en nuestras vidas) puede ser abrumador. Personalmente, como DevOps Engineer (o SRE, o Platform Engineer, o SysAdmin con baterías xD), empecé a preguntarme:

¿Por dónde debería comenzar con todo esto de la IA?

  • ¿Debería abandonar mis pods, controllers, Helm charts y CRDs y empezar a tomar cursos de AutoGen, LangGraph o CrewAI? (puede ser, pero mas adelante).
  • ¿Por qué no reutilizar lo que ya sé de Kubernetes para usar IA?
  • ¿Por qué no existe algo que me permita tratar a los agentes de IA como un recurso más en mis clusters de EKS, AKS y GKE?

En ese punto, los dioses de la infraestructura cloud-native respondieron: Kagent !!!

¿Qué es Kagent?

Kagent Big Picture

Formalmente hablando, es “An open-source framework for DevOps and platform engineers to run AI agents in Kubernetes.” Pero dejemos las formalidades fuera de este post. Básicamente, es un proyecto que te permite tratar agentes de IA, LLMs y MCP servers como objetos de API “normales” en tu cluster de Kubernetes. ¿Cómo lo hace? Así es (adivinaste), usando el Operator Pattern de Kubernetes (CRDs + Custom Controller). Una vez que instalas Kagent en tu cluster, tendrás disponibles los siguientes objetos:

Kagent CRDs

Vamos, díganme, ¿qué tan genial es poder ejecutar kubectl get agents?, y mejor aún, definir un Agente de IA con sus prompts y definiciones de tools de forma declarativa, lo que también significa que puedes agregar fácilmente tus agentes de IA, LLMs y MCP servers a tu flujo de GitOps:

kubectl get agents

Kagent Helm Agent Manifest

Kagent Helm Agent Tools

Pre-built Agent Tools: Listas para Usar

Kagent proporciona más de 100 Agent Tools listas para usar, para ayudar a cualquier DevOps/SRE con sus tareas del día a día. Algunas de estas herramientas incluyen capacidades para trabajar con algunos de los productos más utilizados del ecosistema K8s. Estoy bastante seguro de que les va a encantar esta sección de “Tools Library”:

Kagent UI: Tools Library

Vamos a la terminal: Instalación de Kagent

3 Simples Pasos:

1. Instalar los CRDs de Kagent: Necesitamos decirle a nuestro cluster de K8s qué nuevos objetos Kagent va a intentar crear, y proporcionarle la definición completa y estructura de specs de estos objetos, ya que nuestro cluster aún no los reconoce.

1
2
3
4
# Instalar los CRDs de Kagent
helm install kagent-crds oci://ghcr.io/kagent-dev/kagent/helm/kagent-crds \
    --namespace kagent \
    --create-namespace

2. Configurar tu API Key: Necesitas indicarle a la configuración de Kagent qué proveedor de LLM estás usando. Yo voy a usar modelos de Anthropic, pero puedes revisar los otros proveedores soportados aquí. También puedes usarlo con LLMs locales (compatible con Ollama).

1
2
# Configurar tu API Key
export ANTHROPIC_API_KEY="pon-tu-api-key-aqui"

3. Instalar Kagent: usando el Helm chart oficial

1
2
3
4
5
# Instalar Kagent usando el Helm Chart oficial
helm install kagent oci://ghcr.io/kagent-dev/kagent/helm/kagent \
    --namespace kagent \
    --set providers.default=anthropic \
    --set providers.anthropic.apiKey=$ANTHROPIC_API_KEY

Nota: Si ya estás usando ArgoCD, recomiendo instalar Kagent a través del objeto de ArgoCD correspondiente (App o AppSet, dependiendo de cómo esté configurado tu servidor de ArgoCD) para incluir Kagent en tu flujo de GitOps y trackear mejor tus cambios de configuración mientras ejecutas tus pruebas.

Ahora, Pon el Cronómetro en 3 min… ¡Ya!

Tenemos que estar a la altura del título de este post, así que aquí va una instalación rápida de Kagent contra el reloj:

Prerrequisito: Un cluster de Kubernetes funcional

Algunas Interacciones con los Agentes de Kagent

Interacción con el k8s-agent de Kagent:

Interacción con el Helm-agent de Kagent:

Conclusiones

Como se pueden imaginar, Kagent ofrece una amplia gama de posibilidades. Vamos, es genial, apenas lo instalamos y ya es completamente funcional para tareas útiles como ayudar a debuggear problemas con pods o instalar paquetes en nuestro cluster de Kubernetes. Por supuesto, idealmente, no deberían usarlo con la configuración por defecto en infraestructura real, y definitivamente no en producción con valores por defecto, por favor:

No Default Conf Values in Prod Envs

Entonces, ¿qué deberías hacer después de jugar un rato con Kagent? Aquí van algunas ideas:

  • Revisar a fondo https://kagent.dev/docs/kagent.
  • Deshabilitar “write operations” de los default Agents, no queremos cambios en el cluster que no estén trackeados en nuestros repos.
  • Integrar Kagent con tu stack de observabilidad.
  • Integrar Kagent con ArgoCD/FluxCD (el enfoque GitOps siempre manda).
  • Crear tus propios “Kagent agents” con prompts adaptados a tu infraestructura y caso de uso de negocio.
  • Refinar las herramientas a las que un agente tiene acceso; no necesitas darle al agente acceso a absolutamente todas las herramientas disponibles en un servidor MCP por ejemplo, y gracias a Kagent, puedes personalizar esto fácilmente.
  • Muchas más cosas buenas (stay tuned!!).

Por último pero no menos importante, es clave destacar que Kagent no es una herramienta aislada; es parte de un ecosistema que busca cubrir no solo la orquestación de agentes de IA, servidores MCP y LLMs, sino también abordar temas como observabilidad y seguridad al mundo de los agentes. Porque al final del día, un agente de IA es simplemente otro workload en tu cluster, así que ¿por qué debería estar exento de las mejores prácticas de seguridad, least privilege principle y una buena configuración en materia de observabilidad?

¡Happy Kagent Testing!

Esta entrada está licenciada bajo CC BY 4.0 por el autor.