Skill Kubernetes para OpenClaw
Gestionar clústeres, despliegues y servicios de Kubernetes.
Última actualización: 2026-03-05
Instalación Rápida
$ npx clawhub@latest install kubernetesFunciones Clave
Descripción General del Skill Kubernetes de OpenClaw
El skill Kubernetes conecta OpenClaw a tus clústeres Kubernetes a través de kubectl y un conjunto de utilidades de gestión de clústeres. Una vez instalado, tu agente de OpenClaw puede desplegar aplicaciones, solucionar fallos de pods, escalar cargas de trabajo, generar manifiestos y realizar auditorías de seguridad — todo mediante comandos en lenguaje natural.
Kubernetes es el estándar de la industria para la orquestación de contenedores, pero su superficie de comandos CLI es extensa. El skill Kubernetes de OpenClaw elimina la necesidad de memorizar cientos de subcomandos y opciones de kubectl. En lugar de cambiar de contexto entre ventanas de terminal y documentación, describes lo que necesitas y el agente se encarga del resto.
Flujo de trabajo típico:
- Pide a OpenClaw que verifique el estado de tu clúster de producción.
- El agente ejecuta
kubectl get nodes,kubectl top podsy scripts de verificación de estado internamente. - Los resultados se devuelven en un resumen legible con recomendaciones accionables — sin necesidad de cambiar de contexto.
Este skill es compatible con Kubernetes 1.31+, OpenShift 4.17+ y servicios gestionados como Amazon EKS, Azure AKS y Google GKE. Se combina naturalmente con el skill Docker Essentials para un flujo de trabajo completo de contenedores.
Requisitos Previos para el Skill Kubernetes
Antes de instalar el skill Kubernetes, asegúrate de tener:
- OpenClaw instalado y en ejecución (v1.0+)
- kubectl instalado (v1.20+) — guía de instalación
- Un archivo kubeconfig válido que apunte al menos a un clúster
- clawhub CLI instalado para la gestión de skills
Verifica tu configuración:
# Verificar la versión de OpenClaw openclaw --version # Verificar la versión de kubectl kubectl version --client # Verificar la conectividad con el clúster kubectl cluster-info # Listar los contextos disponibles kubectl config get-contexts
Si kubectl cluster-info devuelve un error, asegúrate de que tu kubeconfig esté configurado correctamente. Para clústeres gestionados, usa la CLI del proveedor para generar credenciales (ej., aws eks update-kubeconfig, az aks get-credentials o gcloud container clusters get-credentials).
Cómo Instalar el Skill Kubernetes
Instala el skill Kubernetes con un solo comando:
npx clawhub@latest install kubernetes
Para verificar la instalación:
clawhub list
Deberías ver kubernetes en la lista de skills instalados. El skill incluye scripts auxiliares para verificaciones de estado del clúster, auditorías de seguridad, mantenimiento de nodos y generación de manifiestos.
Configuración del Skill Kubernetes
El skill Kubernetes utiliza tu kubeconfig existente para la autenticación. No se necesitan claves API ni tokens adicionales — si kubectl funciona en tu máquina, el skill también funciona.
Configuración de Kubeconfig
El skill lee el kubeconfig predeterminado en ~/.kube/config. Para usar un archivo diferente o gestionar múltiples clústeres:
# Establecer una ruta de kubeconfig personalizada export KUBECONFIG=/path/to/your/kubeconfig # Combinar múltiples archivos kubeconfig export KUBECONFIG=~/.kube/config:~/.kube/staging-config # Cambiar entre contextos kubectl config use-context production-cluster
Alcance por Namespace
Por seguridad, recomendamos limitar el skill a namespaces específicos en lugar de otorgar acceso a todo el clúster:
# Establecer un namespace predeterminado para el contexto actual
kubectl config set-context --current --namespace=my-app
# Verificar el namespace activo
kubectl config view --minify --output 'jsonpath={..namespace}'
Importante: Nunca otorgues privilegios de cluster-admin al skill en producción. Usa roles RBAC limitados a los namespaces y recursos que realmente necesitas. Revisa la sección de Seguridad y Mejores Prácticas a continuación.
Ejemplos de Uso del Skill Kubernetes
1. Diagnosticar fallos de pods
Tú: "¿Por qué los pods en el namespace payments están fallando?"
El agente ejecuta kubectl get pods -n payments, identifica los pods en estado CrashLoopBackOff, recupera los registros con kubectl logs y verifica los eventos con kubectl describe pod. Devuelve un diagnóstico como "OOMKilled — el contenedor excedió su límite de memoria de 256Mi. Se recomienda aumentar a 512Mi."
2. Escalar un deployment
Tú: "Escala el deployment de la API a 5 réplicas en staging."
El agente ejecuta kubectl scale deployment api --replicas=5 -n staging, monitorea el despliegue con kubectl rollout status y confirma cuando las 5 réplicas están en ejecución y saludables.
3. Generar un manifiesto de producción
Tú: "Crea un manifiesto de deployment para una aplicación Node.js con 3 réplicas, límite de memoria de 256Mi, verificaciones de salud y un servicio ClusterIP."
El agente utiliza el generador de manifiestos incorporado para producir un archivo YAML completo con valores de seguridad predeterminados — usuario no root, sistema de archivos de solo lectura, límites de recursos, sondas de liveness y readiness, y una definición de Service correspondiente.
4. Ejecutar una auditoría de seguridad
Tú: "Audita el namespace default en busca de problemas de seguridad."
El agente ejecuta el script de auditoría de seguridad incluido, verificando contenedores ejecutándose como root, límites de recursos faltantes, bindings RBAC excesivamente permisivos y pods sin etiquetas de Pod Security Standards. Los resultados se devuelven como una lista priorizada de hallazgos con pasos de remediación.
5. Realizar una actualización progresiva
Tú: "Actualiza el deployment web a la imagen v2.3.1 y supervisa el despliegue."
El agente ejecuta kubectl set image deployment/web web=myregistry/web:v2.3.1, luego monitorea kubectl rollout status en tiempo real. Si el despliegue se detiene o los pods fallan las verificaciones de salud, te alerta y sugiere kubectl rollout undo para revertir.
Seguridad y Mejores Prácticas
Las operaciones de Kubernetes pueden afectar cargas de trabajo en producción. Sigue estas pautas para mantenerte seguro:
- Usa RBAC con privilegios mínimos. Crea ServiceAccounts dedicadas con solo los permisos necesarios. Evita
cluster-adminpara las operaciones diarias. La documentación de RBAC de Kubernetes cubre la creación de roles en detalle. - Limita por namespaces. Establece un namespace predeterminado en el contexto de tu kubeconfig para que el skill no pueda modificar accidentalmente recursos en otros namespaces.
- Revisa antes de aplicar. OpenClaw solicita confirmación antes de operaciones destructivas como eliminar pods, escalar a cero o drenar nodos. Siempre revisa los cambios propuestos.
- Usa el modo dry-run. Para la generación de manifiestos y operaciones de apply, el skill soporta
--dry-run=clientpara previsualizar los cambios sin afectar el clúster. - Rota las credenciales regularmente. Si usas tokens de service account, establece políticas de expiración. Para clústeres gestionados, confía en credenciales de corta duración del proveedor cloud.
- Habilita el registro de auditoría. Configura el registro de auditoría de Kubernetes para rastrear todas las llamadas a la API realizadas a través del skill. Revisa la Lista de verificación de seguridad para conocer las pautas generales de seguridad de OpenClaw.
Solución de Errores Comunes
"error: You must be logged in to the server (Unauthorized)"
Tus credenciales de kubeconfig han expirado o son inválidas.
# Para AWS EKS aws eks update-kubeconfig --name my-cluster --region us-east-1 # Para Azure AKS az aks get-credentials --resource-group myRG --name my-cluster # Para Google GKE gcloud container clusters get-credentials my-cluster --zone us-central1-a
"error: the server doesn't have a resource type 'deployments'"
El servidor API puede ser inaccesible, o tus permisos RBAC son insuficientes.
- Ejecuta
kubectl cluster-infopara verificar la conectividad. - Verifica que tu rol tenga permisos de
get,listywatchen el grupo APIapps/v1. - Solicita a tu administrador de clúster que revise tu RoleBinding.
"pod has unbound immediate PersistentVolumeClaims"
El pod requiere un PersistentVolume que no existe o aún no ha sido provisionado.
- Ejecuta
kubectl get pvc -n <namespace>para verificar el estado del claim. - Verifica que la StorageClass exista:
kubectl get storageclass. - Para proveedores cloud, asegúrate de que el driver CSI esté instalado y la cuota de almacenamiento no se haya excedido.
Preguntas Frecuentes
Sí, cuando se configura con el alcance RBAC adecuado. El skill sigue el modelo de confirmación de OpenClaw — las acciones destructivas como eliminación de pods, drenado de nodos y escalado a cero requieren tu aprobación explícita. Recomendamos comenzar con permisos de solo lectura y otorgar acceso de escritura solo a namespaces específicos según sea necesario. Revisa la [Lista de verificación de seguridad](/skills#safety) antes de conectar clústeres de producción.
El skill [Docker Essentials](/skills/docker-essentials) gestiona contenedores individuales en un solo host — construyendo imágenes, ejecutando contenedores y gestionando volúmenes. El skill Kubernetes opera a nivel de orquestación, gestionando pods, deployments, servicios e infraestructura de clúster a través de múltiples nodos. Para equipos que ejecutan aplicaciones contenedorizadas en producción, ambos skills se complementan: Docker para desarrollo local, Kubernetes para despliegue y escalado.
Sí. El skill utiliza los contextos de tu kubeconfig para cambiar entre clústeres. Si tienes contextos para un clúster EKS de staging, un clúster GKE de producción y una instancia local de minikube, puedes pedirle a OpenClaw que apunte a cualquiera de ellos por nombre. Ejecuta `kubectl config get-contexts` para ver tus clústeres disponibles y luego indica al agente qué contexto usar.
Skills Relacionados
Gestionar infraestructura AWS (EC2, S3, Lambda, etc.).
Automatización de despliegue multi-paso para servicios/apps.