Top Banner
Arquitectura y escalabilidad
42

Arquitectura y escalabilidad básica para entornos cloud

Jul 19, 2015

Download

Technology

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Arquitectura y escalabilidad básica para entornos cloud

Arquitectura y escalabilidad!

Page 2: Arquitectura y escalabilidad básica para entornos cloud

1! Conceptos básicos!

2! Arquitectura básica!

3! Arquitectura escalable!

4! Tolerancia a fallos!

Page 3: Arquitectura y escalabilidad básica para entornos cloud

5! Cache!

6! Sharding!

7! Arquitectura multi Datacenter!

8! Cloud Computing!

Page 4: Arquitectura y escalabilidad básica para entornos cloud

Todo puede fallar Y fallará cuando menos te lo esperes

“ 1! Conceptos básicos!

Page 5: Arquitectura y escalabilidad básica para entornos cloud

No existe la máquina infinita Trabajamos sobre recursos limitados

“ 1! Conceptos básicos!

Page 6: Arquitectura y escalabilidad básica para entornos cloud

Métricas, métricas, métricas Si no podemos medir, no podemos decidir

“ 1! Conceptos básicos!

Page 7: Arquitectura y escalabilidad básica para entornos cloud

•  Todo puede fallar

•  No existe la máquina infinita

•  Métricas, métricas, métricas

“ 1! Conceptos básicos!

Page 8: Arquitectura y escalabilidad básica para entornos cloud

2! Arquitectura básica!

All in one

WWW BD

1 Instancia micro 15,64$

Entornos  de  desarrollo  

Page 9: Arquitectura y escalabilidad básica para entornos cloud

2! Arquitectura básica!

Inicio del proyecto 10

peticiones

Gráfica de peticiones / Usuarios

Page 10: Arquitectura y escalabilidad básica para entornos cloud

2! Arquitectura básica!

All in one

WWW BD

1 Instancia micro 15,64$

Entorno  de  producción  |  Muy  pocas  pe4ciones,  trabajo  muy  escaso  

Page 11: Arquitectura y escalabilidad básica para entornos cloud

2! Arquitectura básica!

Inicio del proyecto 10

peticiones

Gráfica de peticiones / Usuarios

Page 12: Arquitectura y escalabilidad básica para entornos cloud

2! Arquitectura básica!

Webserver + db

WWW

1 Instancia small + 1 RDS small 104,58$

Entorno  de  producción  |  Pocas  pe4ciones,  separación  entre  la  bbdd  y  el  servidor  web  

Page 13: Arquitectura y escalabilidad básica para entornos cloud

2! Arquitectura básica!

Primer sistema en producción 65

peticiones

Gráfica de peticiones / Usuarios

Page 14: Arquitectura y escalabilidad básica para entornos cloud

2! Arquitectura básica!

Punta no prevista à Escalar verticalmente 120

peticiones

Gráfica de peticiones / Usuarios

Page 15: Arquitectura y escalabilidad básica para entornos cloud

2! Arquitectura básica!

Webserver + db + Potencia

WWW

1 Instancia medium + 1 RDS medium 207,06$

Entorno  de  producción  |  Aumento  de  pe4ciones,  separación  entre  la  bbdd  y  el  servidor  web.  Más  potencia  por  instancia  

Escalar verticalmente

Page 16: Arquitectura y escalabilidad básica para entornos cloud

2! Arquitectura básica!

Inicio del proyecto 130

peticiones

Gráfica de peticiones / Usuarios

Page 17: Arquitectura y escalabilidad básica para entornos cloud

2! Arquitectura básica!

Webserver + db + Potencia Máxima

WWW

1 Instancia cr1.8xlarge + 1 RDS db.cr1.8xlarge

10.329,46$

Entorno  de  producción  |  Aumento  de  pe4ciones,  separación  entre  la  bbdd  y  el  servidor  web.  Máxima  potencia  por  instancia  

Escalar verticalmente

Page 18: Arquitectura y escalabilidad básica para entornos cloud

2! Arquitectura básica!

Inicio del proyecto 180

peticiones

Gráfica de peticiones / Usuarios

Page 19: Arquitectura y escalabilidad básica para entornos cloud

3! Arquitectura escalable!

ELB + Webserver + db

WWW

2 Instancia medium + 1 RDS medium + ELB 320,26$

Entorno  de  producción  |  Aumento  de  pe4ciones,  separación  entre  la  bbdd  y  el  servidor  web.  Más  potencia  por  instancia  

Escalar Horizontalmente

WWW

Page 20: Arquitectura y escalabilidad básica para entornos cloud

3! Arquitectura escalable!

ELB + Webserver + db

WWW

8 Instancia medium + 1 RDS medium + ELB 885,33$

Entorno  de  producción  |  Aumento  de  pe4ciones,  separación  entre  la  bbdd  y  el  servidor  web.  Más  potencia  por  instancia  

Escalar Horizontalmente

WWW WWW WWW WWW WWW WWW WWW

Page 21: Arquitectura y escalabilidad básica para entornos cloud

Todo puede fallar Y fallará cuando menos te lo esperes

“ 4! Tolerancia a fallos!

Page 22: Arquitectura y escalabilidad básica para entornos cloud

4!

Webserver + db

WWW

1 Instancia medium + 1 RDS medium 207,06$

Entorno  de  producción  |  Aumento  de  pe4ciones,  separación  entre  la  bbdd  y  el  servidor  web.  Más  potencia  por  instancia  

Tolerancia a fallos

Tolerancia a fallos!

Page 23: Arquitectura y escalabilidad básica para entornos cloud

4!

Webserver + db

WWW

1 Instancia medium + 1 RDS medium 207,06$

Fallo  en  la  base  de  datos.  Sistema  fuera  de  servicio  

Tolerancia a fallos

Tolerancia a fallos!

Page 24: Arquitectura y escalabilidad básica para entornos cloud

4! Tolerancia a fallos!

Webserver + db

WWW

1 Instancia medium + 1 RDS medium Multi-AZ 294,10$

Entorno  de  base  de  datos  Master-­‐Slave,  delante  de  un  fallo  del  master  las  pe4ciones  pasan  al  master  y  este  promociona  a  nuevo  master.  

Tolerancia a fallos

Page 25: Arquitectura y escalabilidad básica para entornos cloud

4! Tolerancia a fallos!

ELB + Webserver + db

WWW

2 Instancia medium + 1 RDS medium + ELB 383,67$

Sistema  tolerante  a  fallos  con  2  instancias  /  frontales  y  una  base  de  datos  Master  Slave.  

Tolerancia a fallos

WWW

Page 26: Arquitectura y escalabilidad básica para entornos cloud

No existe la máquina infinita Trabajamos sobre recursos limitados

“ 5! Cache!

Page 27: Arquitectura y escalabilidad básica para entornos cloud

5!

BBDD 1.8K IOPS

Gráfica de capacidad IOPS / IOPS

Cache!

Page 28: Arquitectura y escalabilidad básica para entornos cloud

CACHE, CACHE, CACHE “ 5! Cache!

Page 29: Arquitectura y escalabilidad básica para entornos cloud

5!

BBDD 1.8K IOPS

Gráfica de capacidad IOPS / IOPS

Cache!

Page 30: Arquitectura y escalabilidad básica para entornos cloud

5!

ELB + Webserver + cache + db

WWW

2 Instancia medium + 1 RDS medium MultiAZ + cache medium + ELB

499,13$

Sistema  tolerante  a  fallos  con  2  instancias  /  frontales,  caché  y  una  base  de  datos  Master  Slave.  

Tolerancia a fallos

WWW

Cache!

Page 31: Arquitectura y escalabilidad básica para entornos cloud

5!

BBDD + Caché 550

IOPS

Gráfica de capacidad IOPS / IOPS

Cache!

Page 32: Arquitectura y escalabilidad básica para entornos cloud

5!

WWW

2 Instancia medium + 1 RDS medium MultiAZ + cache medium + ELB + CloudFront

599,13$

Sistema  tolerante  a  fallos  con  2  instancias  /  frontales,  caché  y  una  base  de  datos  Master  Slave.  

Tolerancia a fallos

WWW

Cache!

CDN

Page 33: Arquitectura y escalabilidad básica para entornos cloud

Sharding Divide y vencerás!

“ 6! Sharding!

Page 34: Arquitectura y escalabilidad básica para entornos cloud

6!

ELB + Webserver + cache + sharding db

WWW

8 Instancia medium + 2 RDS MultiAZ medium 2000 IOPS 500GB/RDS + Medium Cache + ELB

2615,66$

Sistema  tolerante  a  fallos  con  2  instancias  /  frontales,  caché  y  una  base  de  datos  Master  Slave.  

Tolerancia a fallos

WWW

Pares   Impares  

WWW WWW WWW WWW WWW WWW

Sharding!

Page 35: Arquitectura y escalabilidad básica para entornos cloud

Todo puede fallar Y fallará cuando menos te lo esperes

“ 7! Arquitectura multi Datacenter!

Page 36: Arquitectura y escalabilidad básica para entornos cloud

7!ELB + Webserver + cache + db

WWW

2 Instancia medium + 1 RDS medium + cache medium + ELB

499,13$

Sistema  tolerante  a  fallos  con  2  instancias  /  frontales,  caché  y  una  base  de  datos  Master  Slave.  

Tolerancia a fallos

WWW

Availability Zone 1

Arquitectura multi Datacenter!

Page 37: Arquitectura y escalabilidad básica para entornos cloud

7!

WWW

4 Instancia medium + 2 RDS medium MultiAZ + cache medium + ELB

998,26$

Sistema  tolerante  a  fallos  con  2  instancias  /  frontales,  caché  y  una  base  de  datos  Master  Slave.  

Tolerancia a fallos multi-Datacenter

WWW

Availability Zone 1

WWW WWW

Availability Zone 2

Arquitectura multi Datacenter!

Page 38: Arquitectura y escalabilidad básica para entornos cloud

Si no puedes escalar no vayas al cloud El cloud es caro si tu demanda no es variable

“ 8! Cloud Computing!

Page 39: Arquitectura y escalabilidad básica para entornos cloud

8!

ELB + Webserver + cache + db

WWW

2 Instancia medium + 1 RDS medium MultiAZ + cache medium + ELB

499,13$

Sistema  tolerante  a  fallos  con  2  instancias  /  frontales,  caché  y  una  base  de  datos  Master  Slave.  

AutoScalling

WWW Auto scaling

Group

Cloud Computing!

Page 40: Arquitectura y escalabilidad básica para entornos cloud

8!

ELB + Webserver + cache + db

WWW

4 Instancia medium + 1 RDS medium MultiAZ + cache medium + ELB

694,13$

Sistema  tolerante  a  fallos  con  2  instancias  /  frontales,  caché  y  una  base  de  datos  Master  Slave.  

AutoScalling

WWW Auto scaling Group WWW WWW

Cloud Computing!

Page 41: Arquitectura y escalabilidad básica para entornos cloud

8!

Ahorro del 62,07%

Gráfica de capacidad IOPS / IOPS

Cloud Computing!

Page 42: Arquitectura y escalabilidad básica para entornos cloud

[email protected]!@becloudin!

932 200 093!

C/ Almogàvers 165 (08018 – Barcelona)!

http://incub.io!

Xavier Ruiz!IT Project Manager!

Gracias !por asistir!