Amazon EKS
Elastic Kubernetes Service
Kubernetes administrado: AWS opera el plano de control y tú despliegas con las herramientas estándar del ecosistema.
En palabras simples
Es alquilar la torre de control de un aeropuerto ya montada y certificada: tú sigues decidiendo qué aviones vuelan, pero nadie tiene que construir ni mantener la torre.
Cuándo aplicarlo
Cuando el equipo ya trabaja con Kubernetes, necesita su ecosistema de herramientas, o quiere que la misma configuración pueda ejecutarse fuera de AWS.
- ▸Ejecutar en AWS una aplicación que ya tiene sus manifiestos de Kubernetes
- ▸Estandarizar el despliegue entre nube pública y centro de datos propio
- ▸Aprovechar herramientas del ecosistema como Helm, Argo CD o los operadores
- ▸Correr cargas de aprendizaje automático que ya usan Kubeflow u operadores de GPU
Vocabulario mínimo
- Plano de control
- El cerebro de Kubernetes — API, planificador, base de datos etcd — que en EKS opera y actualiza AWS.
- Nodo
- La máquina donde corren los contenedores. Puede ser una instancia EC2 tuya o una tarea de Fargate.
- Pod
- La unidad mínima de ejecución de Kubernetes: uno o varios contenedores que comparten red y almacenamiento.
- Grupo de nodos administrado
- Un conjunto de instancias que EKS aprovisiona, actualiza y reemplaza por ti.
- IRSA
- El mecanismo que asocia un rol de IAM a una cuenta de servicio de Kubernetes, para dar permisos sin claves.
Costo y capa gratuita
- Cómo se cobra
- Una tarifa fija por hora y por clúster para el plano de control, más el costo de los nodos: instancias EC2 o tareas de Fargate.
- Capa gratuita
- No hay capa gratuita para el plano de control: el clúster cobra por hora desde que se crea, aunque no tenga ningún pod corriendo.
Cuidado con los créditos
- ⚠Dejar el clúster creado después de un taller: el plano de control cobra por hora aunque esté vacío.
- ⚠Un grupo de nodos con escalado automático mal acotado puede crecer mucho más de lo previsto.
- ⚠Cada balanceador que crea un recurso de tipo Service o Ingress se factura por separado.
Descripción
Kubernetes es el estándar de la industria para orquestar contenedores, y también es notoriamente laborioso de operar: el plano de control son varios componentes que hay que instalar, asegurar, respaldar y actualizar sin cortar el servicio. Amazon EKS se queda con esa parte.
Lo que queda del lado del usuario es Kubernetes puro: los mismos manifiestos, el mismo kubectl,
los mismos gráficos de Helm. Esa es su razón de ser frente a ECS — no es más fácil, es más portable
y trae detrás un ecosistema enorme de herramientas que no dependen de AWS.
Cómo funciona
- Creas el clúster: AWS levanta el plano de control replicado en varias zonas de disponibilidad.
- Añades capacidad con un grupo de nodos administrado de instancias EC2, o con Fargate si prefieres no ver máquinas.
- Te conectas con
kubectlusando tus credenciales de AWS, que EKS traduce a permisos de Kubernetes. - Aplicas tus manifiestos: despliegues, servicios, ingresos. Kubernetes coloca los pods en los nodos.
- Los complementos conectan el clúster con el resto de AWS: balanceadores, volúmenes EBS, roles de IAM.
Manos a la obra
- Crea un clúster pequeño con
eksctl, la herramienta que reduce el proceso a un solo comando. - Despliega una aplicación de ejemplo con un
Deploymentde dos réplicas y unService. - Borra un pod a mano y observa cómo Kubernetes recrea otro en segundos.
- Escala a cinco réplicas con
kubectl scaley mira dónde las coloca el planificador. - Borra el clúster completo al terminar. El plano de control cobra por hora aunque esté ocioso.
Ejemplo visual
Todo lo que aparece a la derecha del plano de control es infraestructura tuya, dentro de tu VPC y en tu factura. Lo que queda a la izquierda lo opera AWS.
Cuándo NO es la mejor opción
- Amazon ECS — si no necesitas Kubernetes, ECS resuelve lo mismo con mucha menos superficie que aprender y sin costo de plano de control.
- AWS App Runner — si la aplicación es un servicio web sencillo, un clúster completo es desproporcionado.
- AWS Lambda — si la carga es por eventos y esporádica, no hace falta ningún clúster esperando.
Se usa junto con
Aparece en certificaciones
- AWS Certified Solutions Architect – Associate
- AWS Certified DevOps Engineer – Professional
Para profundizar