EKS con eksctl: laboratorio con costos y retirada claros
Amazon EKS ofrece un plano de control Kubernetes administrado. eksctl ayuda a crear y gestionar componentes, pero sus comandos pueden aprovisionar VPC, nodos y otros recursos facturables. No lo presentes como una extensión gratuita automática de EC2 Free Tier.
Utiliza una cuenta de laboratorio autorizada y consulta precios, versión soportada y políticas de la organización antes de empezar.
Comprueba identidad y herramientas
Instala AWS CLI, kubectl y eksctl desde fuentes oficiales y con versiones compatibles. Verifica la identidad activa:
aws sts get-caller-identity
aws --version
eksctl version
kubectl version --client
No continúes si la cuenta o región no son las esperadas. Utiliza credenciales temporales y permisos ajustados a los recursos que crearás.
Diseña un clúster pequeño y explícito
Prepara un archivo de configuración eksctl con nombre, región, versión soportada y capacidad elegida. Comprueba si utilizarás una VPC existente o una nueva.
Un punto de partida para cluster-laboratorio.yaml es:
apiVersion: eksctl.io/v1alpha5
kind: ClusterConfig
metadata:
name: practica-eks
region: us-east-1
vpc:
nat:
gateway: Disable
clusterEndpoints:
publicAccess: true
privateAccess: true
publicAccessCIDRs:
- 203.0.113.10/32
managedNodeGroups:
- name: practica
instanceType: t3.medium
desiredCapacity: 1
minSize: 1
maxSize: 2
volumeSize: 20
privateNetworking: false
Reemplaza el CIDR de documentación por tu origen autorizado y revisa región y capacidad. El ejemplo usa nodos en red pública y desactiva NAT; no representa una arquitectura privada de producción. Al no fijar metadata.version, debes comprobar qué versión seleccionará eksctl y declarar una compatible si necesitas reproducibilidad.
No copies un número de nodos o tipo de instancia suponiendo cobertura gratuita. Revisa costos de control, cómputo, discos, red y servicios complementarios.
eksctl create cluster -f cluster-laboratorio.yaml
El archivo debe existir y estar revisado; el comando no describe por sí solo el diseño. Conserva ese archivo como parte de la documentación del laboratorio.
Comprueba acceso y nodos
kubectl config current-context
kubectl get nodes -o wide
kubectl get pods -A
Identifica el contexto antes de modificar recursos. Un clúster creado no garantiza que los nodos estén preparados o que los complementos y permisos sean correctos.
Despliega primero una aplicación pequeña y compruébala mediante port-forward. Crear un Service LoadBalancer puede añadir infraestructura y costos; hazlo solo cuando sea parte de la práctica.
IAM y permisos de aplicaciones
La identidad administrativa del clúster y los permisos AWS de una aplicación son controles diferentes. Utiliza los mecanismos compatibles para asignar acceso mínimo y no copies claves permanentes dentro de los pods.
Instalar un controlador, como el de balanceadores, requiere sus dependencias, permisos y configuración. Una mención en el tutorial no equivale a tenerlo instalado y operativo.
Registros y diagnóstico
Si un nodo no está listo, revisa eventos, grupos y conectividad. Si una aplicación no obtiene recursos, comprueba cuotas, permisos y complementos.
Evita conceder acceso administrativo a todo para resolver un único error. Identifica la acción y recurso que faltan.
Retira en orden
Antes de borrar el clúster, identifica servicios que crearon balanceadores y almacenamiento que deba conservarse. Retira recursos con su procedimiento adecuado y guarda datos necesarios.
eksctl delete cluster -f cluster-laboratorio.yaml
Lee el resultado y revisa recursos restantes: volúmenes, snapshots, direcciones y componentes externos pueden requerir atención. La facturación y sus notificaciones pueden tener retraso.
Preguntas frecuentes
¿EKS incluye gratis todos los nodos y discos?
No. Revisa la estructura de precios y condiciones de cada recurso. El control administrado no elimina costos de infraestructura.
¿Borrar un deployment elimina el clúster?
No. Son niveles diferentes. La capacidad, red y servicios relacionados pueden seguir existiendo.
¿Debo hacer público el endpoint administrativo?
Depende del diseño de acceso. Revisa opciones, restricciones y conectividad de administradores y nodos antes de decidir.
En pocas palabras
EKS administra el plano de control, pero el clúster y sus recursos tienen costos y requisitos propios. Eliminar una aplicación no elimina necesariamente nodos, balanceadores o almacenamiento.
Conclusión
Define presupuesto y hora de retirada antes de crear el clúster. Al cerrar, verifica el inventario de AWS y conserva solo los datos y recursos que hayas decidido mantener.
Para continuar, revisa Instalar Kubernetes en Ubuntu desde cero: guía completa y Docker: qué es y cómo usarlo para ejecutar contenedores.
