Arquitecturas resilientes en Amazon EKS - Alejandra Bricio
32 views
22 slides
Apr 02, 2025
Slide 1 of 22
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
About This Presentation
KCD Guadalajara 2025 - Sponsor Session
Size: 3.25 MB
Language: es
Added: Apr 02, 2025
Slides: 22 pages
Slide Content
Patrones y estrategias de
alta disponibilidad
Arquitecturas resilientes en
Amazon EKS:
Patrones y estrategias de alta disponibilidad
Alejandra Bricio
ella/she/her
Site Reliability Engineer
PayPal
Alejandra Bricio
??????
??????????????????
¿Qué hace que un sistema sea resiliente?
⚙
Funcionan de
manera consistente
??????
Satisfacen la
demanda
??????
Se adaptan a los
cambios
??????
Detectando fallos
??????
Escalan según la
demanda
??????
Subsanando
automáticamente
Aplicaciones ??????
Control Plane ⚙
Data Plane ??????
Amazon EKS
Cliente
AWS
Gestionado por
✔ Alta disponibilidad: si falla una
zona, la aplicación seguirá disponible
en las otras zonas.
Aplicaciones Resilientes
Distribución de pods entre nodos ??????
❌ Mala Distribución: Pods
Concentrados
✅ Buena Distribución: Pods
Distribuidos
⚠ Punto único de fallo: si falla la
zona us-west-2a, la aplicación estará
completamente inaccesible.
Opciones de distribución de pods entre nodos ??????
PodAntiAffinity TopologySpreadConstraints
Aplicaciones Resilientes
Health Checks ??????
Aplicaciones Resilientes
Health Checks ??????
Aplicaciones Resilientes
Health Checks ??????
?????? Startup Probe: Usar para aplicaciones que tardan en iniciar, evitando que
fallen las otras pruebas
?????? Liveness Probe: Verificar funcionalidad interna clave, no dependencias
externas
⚠ Evitar: Pruebas de Liveness que dependan de recursos externos
(bases de datos, APIs, etc.)
☑ Readiness Probe: Verificar si el pod puede procesar solicitudes,
incluyendo conexiones a servicios externos
Aplicaciones Resilientes
Estrategias de Despliegue: Rolling Update ??????
●Es la estrategia por defecto en
Kubernetes
●Ofrece actualización gradual sin
tiempo de inactividad
●Se controla mediante parámetros
maxSurge y maxUnavailable
Aplicaciones Resilientes
Estrategias de Despliegue: Canary deployment??????
https://aws.amazon.com/blogs/containers/create-a-pipeline-with-canary-deployments-for-amazon-eks-with-aws-app-mesh/
●Exposición gradual a un pequeño
porcentaje de usuarios
●Detección temprana de problemas
●Impacto mínimo en caso de fallos
●Ideal para aplicaciones críticas con
alto tráfico
Aplicaciones Resilientes
Comparando: Estrategias de Despliegue ??????
Estrategia
Tiempo de
Inactividad
Uso de
Recursos
Rollback Complejidad
Rolling Update No Normal Gradual Baja
Canary No Incrementado Inmediato Alta
?????? La estrategia más adecuada depende de la criticidad de tu
aplicación, recursos disponibles y tolerancia al riesgo.
Aplicaciones Resilientes
Mejores Prácticas: Estrategias de Despliegue ??????
1. Siempre disponer de un mecanismo de reversión
2. Monitorización intensiva durante y después del despliegue
3. Utilizar los probes correctamente
4. Automatizar el proceso tanto como sea posible
"Todo falla, todo el tiempo"
Werner Vogels
Más allá de la resiliencia:
Antifragilidad ??????
"La antifragilidad está más allá de la resiliencia
o la robustez. Lo resiliente resiste los golpes y
permanece igual; lo antifrágil mejora."
-Nassim Nicholas Taleb
Antifragilidad
Resilencia vs Antifragilidad
"Algunas cosas se benefician del estrés,
prosperan y crecen cuando se exponen a
la volatilidad..."
-Nassim Nicholas Taleb
Patrones y estrategias de
alta disponibilidad
“Arquitecturas resilientes
anti frágiles”